Ñò
ýÉªWc           @   sœ   d  d k  l Z d  d k Z d  d k Z d  d k l Z d d d „  ƒ  YZ d e f d „  ƒ  YZ d e f d	 „  ƒ  YZ d
 „  Z e	 d j o e ƒ  n d S(   iÿÿÿÿ(   t   DecimalN(   t   CMSVersionDeploymentPolicyt   MeFieldDefinitionc           B   sk   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 d	 „  Z d
 „  Z RS(   c         C   s+   t  i ƒ  i ƒ  |  _ |  i i ƒ  |  _ d  S(   N(   R   t   getPrepackDepolymentPolicyt   getDatabaseConnectiont
   connectiont   cursor(   t   self(    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   __init__
   s    c         C   s   d  S(   N(    (   R   t   data(    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   getId   s    c         C   s1   d } |  i  i | ƒ |  i  i ƒ  } | d d S(   Ns4   select WFS.ME_FIELD_DEFINITION_SEQ.nextval from duali    (   R   t   executet   fetchall(   R   t	   statementt   rows(    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt	   getNextId   s    c         C   s1   d } |  i  i | ƒ |  i  i ƒ  } | d d S(   Ns'   SELECT MAX(ID) FROM ME_FIELD_DEFINITIONi    (   R   R   R   (   R   R   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   getNextIdViaMaxValue   s    c         C   sL  | d } | d } | d } | d } | d } |  i  ƒ  } |  i | ƒ } | t j p | d j o t SyB d |  i | | | | | | g ƒ }	 |	 GH|  i i |	 ƒ | SWn— t j
 o‹ }
 |  i i ƒ  d GH|  i	 ƒ  d } yB d |  i | | | | | | g ƒ }	 |	 GH|  i i |	 ƒ | SWqHt j
 o }
 |
 GHt SXn Xd S(	   s3   
		data[0]: fieldName
		data[1]: ME profile Name
		i    i   i   i   i   sX   INSERT INTO ME_FIELD_DEFINITION (ID,PROFILE_ID, NAME, MAPPING, DATATYPE, PATH) VALUES %ss   Insert failed, retry...N(
   R   t   getMeProfileIdt   Falset
   tupleToStrR   R   t	   ExceptionR   t   rollbackR   (   R   R	   t	   fieldNamet   meProfileNamet   mappingt   datatypet   patht   idt   meProfileIdR   t   e(    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   insert    s4    




%%c   
      C   s£   | d } | d } | d } | d } | d } |  i  | ƒ } | t j o t Sy/ d | | | | f } | GH|  i i | ƒ Wn t j
 o }	 |	 GHn Xd S(   s3   
		data[0]: fieldName
		data[1]: ME profile Name
		i    i   i   i   i   sT   UPDATE ME_FIELD_DEFINITION SET MAPPING='%s', DATATYPE='%s', PATH='%s' WHERE ID = %d N(   R
   R   R   R   R   (
   R   R	   R   R   R   R   R   t   fieldIdR   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   updateB   s    




c         C   s5   | t  j o d  Sd | } | GH|  i i | ƒ d  S(   Ns-   DELETE FROM ME_FIELD_DEFINITION WHERE ID = %d(   R   R   R   (   R   R   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   deleteY   s
    
c         C   s#   d | } | GH|  i  i | ƒ d  S(   Ns5   DELETE FROM ME_FIELD_DEFINITION WHERE PROFILE_ID = %d(   R   R   (   R   t	   profileIdR   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   deleteByProfileb   s    
c         G   s   t  i  ƒ  i | ƒ S(   N(   t   MeSubsProfilet   checkExistence(   R   R	   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR   g   s    c         C   sG   d | } |  i  i | ƒ |  i  i ƒ  } t | ƒ o	 | d Sd Sd  S(   NsK   SELECT NAME, MAPPING, DATATYPE, PATH FROM ME_FIELD_DEFINITION WHERE ID = %di    (    (   R   R   R   t   len(   R   R   R   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt	   getFieldsj   s    
	c         C   sÍ   g  } xœ | D]” } t  | t ƒ o | i t | ƒ ƒ q t | ƒ t t ƒ  ƒ j o | i t | ƒ ƒ q t  | t ƒ o | i t | ƒ ƒ q | i | ƒ q Wt t | ƒ ƒ i	 d d ƒ i	 d d ƒ S(   Nt   Nonet   NULLs   \\s   \(
   t
   isinstancet
   basestringt   appendt   strt   typet   longt   intR    t   tuplet   replace(   R   t   valuest   arrt   v(    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR   s   s     (   t   __name__t
   __module__R   R
   R   R   R   R    R!   R#   R   R'   R   (    (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR      s   						"							t   MeCriteriaFieldDefinitionc           B   s   e  Z d  „  Z d „  Z RS(   c         C   s   t  i |  ƒ d  S(   N(   R   R   (   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR   ƒ   s    c         C   s†   | d } | d } |  i  | ƒ } | t j o t Sd | | f } |  i i | ƒ |  i i ƒ  } t | ƒ o | d d St Sd S(   s3   
		data[0]: fieldName
		data[1]: ME profile Name
		i    i   s   select FD.ID from ME_IDENTIFIER_CRITERIA CR join ME_FIELD_DEFINITION FD on (FD.ID = CR.KEY_FIELD_ID)where FD.NAME = '%s' and CR.PROFILE_ID = %dN(   R   R   R   R   R   R&   (   R   R	   R   R   R   R   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR
   †   s    

(   R6   R7   R   R
   (    (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR8      s   	t   MeEnhanceFieldDefinitionc           B   s   e  Z d  „  Z d „  Z RS(   c         C   s   t  i |  ƒ d  S(   N(   R   R   (   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR   Ÿ   s    c         C   s†   | d } | d } |  i  | ƒ } | t j o t Sd | | f } |  i i | ƒ |  i i ƒ  } t | ƒ o | d d St Sd S(   s3   
		data[0]: fieldName
		data[1]: ME profile Name
		i    i   s†   select FD.ID from ME_ENHANCED_FIELD EF join ME_FIELD_DEFINITION FD on (FD.ID = EF.FIELD_ID)where FD.NAME = '%s' and EF.PROFILE_ID = %dN(   R   R   R   R   R   R&   (   R   R	   R   R   R   R   R   (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR
   ¢   s    

(   R6   R7   R   R
   (    (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyR9      s   	c          C   s   t  ƒ  }  d  S(   N(   R8   (   t   fieldDefinition(    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   main¸   s    t   __main__(    (
   t   decimalR    t	   BaseClassR$   R   R   R8   R9   R;   R6   (    (    (    sk   /home/jenkins/workspace/prepack-aio-release-4.2/prepack-aio/src/main/resources/scripts/MeFieldDefinition.pyt   <module>   s   y	