
                  	           d Z ddlZddlZddlmZmZmZ ddlmZ ddl	m
Z  ej                  d      Zdeej                  ddf   dej                  d	eeeef   ddf   fd
Zdeded	efdZy)z:Hooks for conversion workspaces declerative yaml commands.    N)AnyDict	Generator)encoding)datamigration_v1_messagesz3(?P<fileNo>\d+)-(?P<ruleOrder>\d+)-(?P<ruleName>.*)response_returnc              #      K   | D ]c  }t        j                  |      }t        |d   d      |d<   |d   }t        j                  t
        |      }|r|j                  d      |d<   | e yw)zModifies the mapping rule response to by more user friendly.

  Args:
    response: The mapping rule response to modify.
    _: argparse.Namespace, unused.

  Yields:
    The modified mapping rule response.
  	ruleScopeDATABASE_ENTITY_TYPE_valueprefixdisplayNameruleNameN)r   MessageToDict_RemovePrefixrematch_DISPLAY_NAME_PATTERNgroup)r   r	   ruledisplay_namedisplay_name_matchess        Plib/googlecloudsdk/command_lib/database_migration/conversion_workspaces/hooks.pyModifyMappingRuleResponser      sw      d!!$'D%;&D
 &L88$9<H066zBd=
J s   A*A,r   r   c                 D    | j                  |      r| t        |      d S | S )z/Removes the prefix from the value if it exists.N)
startswithlenr   s     r   r   r   :   s&    
fV	,    )__doc__argparser   typingr   r   r   apitools.base.pyr   6googlecloudsdk.generated_clients.apis.datamigration.v1r   messagescompiler   MappingRule	Namespacestrr   r    r!   r   <module>r-      s    A  	 ' ' % h"

: 
,,dD89 tCH~tT)*: c c r!   