Repository URL to install this package:
| 
      
        
        
        Version: 
        
         
          
          3.4.52  ▾
        
         | 
ó
±EYc           @   s   d  d l  m Z d  d l m Z d  d l m Z d  d l m Z d  d l m Z d  d l m	 Z	 e j
 j d e j e j
 f d     Y Z d	 S(
   iÿÿÿÿ(   t	   jsonutils(   t   versionutils(   t   db(   t	   exception(   t   base(   t   fieldst   MigrationContextc           B   sè   e  Z d  Z d Z i e j   d 6e j   d 6e j d d e d 6e j d d e d 6e j d d e d	 6e j d d e d
 6e j d d e d 6e j d d e d
 6Z e	 d    Z
 e	 d    Z e j
 d    Z RS(   sà  Data representing additional resources related to a migration.
    Some resources cannot be calculated from knowing the flavor alone for the
    purpose of resources tracking, but need to be persisted at the time the
    claim was made, for subsequent resource tracking runs to be consistent.
    MigrationContext objects are created when the claim is done and are there
    to facilitate resource tracking and final provisioning of the instance on
    the destination host.
    s   1.1t
   instance_uuidt   migration_idt   InstanceNUMATopologyt   nullablet   new_numa_topologyt   old_numa_topologyt
   PciDeviceListt   new_pci_devicest   old_pci_devicest   InstancePCIRequestst   new_pci_requestst   old_pci_requestsc         C   sb   t  j |  } | d k  r^ | j d d   | j d d   | j d d   | j d d   n  d  S(   Ni   R   R   R   R   (   i   i   (   R   t   convert_version_to_tuplet   popt   None(   t   clst	   primitivet   target_version(    (    sS   /home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/migration_context.pyt   obj_make_compatible9   s    c         C   s   t  j |  } |  j |  S(   N(   R    t   loadst   obj_from_primitive(   R   t   db_objR   (    (    sS   /home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/migration_context.pyt   obj_from_db_objB   s    c         C   s[   t  j | | d d g } | s6 t j d |   n  | d d  k rJ d  S|  j | d  S(   Nt   columnst   migration_contextR   (   R   t#   instance_extra_get_by_instance_uuidR   t   MigrationContextNotFoundR   R   (   R   t   contextR   t   db_extra(    (    sS   /home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/migration_context.pyt   get_by_instance_uuidG   s    	(   t   __name__t
   __module__t   __doc__t   VERSIONR   t	   UUIDFieldt   IntegerFieldt   ObjectFieldt   Truet   classmethodR   R   R   t   remotable_classmethodR$   (    (    (    sS   /home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/migration_context.pyR      s(   
	N(   t   oslo_serializationR    t
   oslo_utilsR   t   novaR   R   t   nova.objectsR   R   t   NovaObjectRegistryt   registert   NovaPersistentObjectt
   NovaObjectR   (    (    (    sS   /home/tvault/.virtenv/lib/python2.7/site-packages/nova/objects/migration_context.pyt   <module>   s