Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
ó
ʍEYc@sGddlZddlZddlmZddlZddlZddlZddlZddlZddl	Z	ddl
mZddl
mZddl
Z
ddlmZddlmZddlmZdefd	„ƒYZd
efd„ƒYZe
jejƒdefd
„ƒYƒZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZ defd„ƒYZ!de!fd„ƒYZ"d e!fd!„ƒYZ#d"e!fd#„ƒYZ$d$efd%„ƒYZ%d&efd'„ƒYZ&d(efd)„ƒYZ'd*efd+„ƒYZ(d,efd-„ƒYZ)d.e)fd/„ƒYZ*d0efd1„ƒYZ+d2e!fd3„ƒYZ,d4e,fd5„ƒYZ-d6e,fd7„ƒYZ.d8e,fd9„ƒYZ/d:e,fd;„ƒYZ0d<e0fd=„ƒYZ1d>e0fd?„ƒYZ2d@efdA„ƒYZ3dBe3fdC„ƒYZ4dDe3fdE„ƒYZ5dFefdG„ƒYZ6dHe3fdI„ƒYZ7dJefdK„ƒYZ8dLefdM„ƒYZ9dNe9fdO„ƒYZ:dPe9fdQ„ƒYZ;dRe9fdS„ƒYZ<dTe9fdU„ƒYZ=dVe=fdW„ƒYZ>dXe>fdY„ƒYZ?dZe9fd[„ƒYZ@d\e9fd]„ƒYZAd^e9fd_„ƒYZBd`e9fda„ƒYZCdbe9fdc„ƒYZDdde9fde„ƒYZEdfe9fdg„ƒYZFdhe9fdi„ƒYZGdje9fdk„ƒYZHdle9fdm„ƒYZIdne9fdo„ƒYZJdpe9fdq„ƒYZKdre9fds„ƒYZLdte9fdu„ƒYZMdve9fdw„ƒYZNdxe9fdy„ƒYZOdze9fd{„ƒYZPd|e9fd}„ƒYZQd~e9fd„ƒYZRd€e9fd„ƒYZSd‚e9fdƒ„ƒYZTd„e9fd…„ƒYZUd†e9fd‡„ƒYZVdˆe9fd‰„ƒYZWdŠe9fd‹„ƒYZXdŒe9fd„ƒYZYdŽe9fd„ƒYZZde9fd‘„ƒYZ[d’e9fd“„ƒYZ\d”efd•„ƒYZ]d–e]e^fd—„ƒYZ_d˜e]e`fd™„ƒYZadše]ebfd›„ƒYZcdS(œiÿÿÿÿN(tversionpredicate(tstrutils(t	timeutils(t_(t_utils(t	exceptiontKeyTypeErrorcBseZd„ZRS(cCsHtt|ƒjtdƒit|ƒd6|jd6|jjd6ƒdS(Ns7Key %(key)s must be of type %(expected)s not %(actual)stkeytexpectedtactual(tsuperRt__init__Rtreprt__name__t	__class__(tselfRtvalue((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR#s
	
(R
t
__module__R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR"stElementTypeErrorcBseZd„ZRS(cCsLtt|ƒjtdƒi|d6t|ƒd6|d6|jjd6ƒdS(NsCElement %(key)s:%(val)s must be of type %(expected)s not %(actual)sRtvalRR	(R
RRRRRR
(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR-s	

(R
RR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR,stAbstractFieldTypecBsbeZejd„ƒZejd„ƒZejd„ƒZejd„ƒZejd„ƒZRS(cCsdS(s£This is called to coerce (if possible) a value on assignment.

        This method should convert the value given into the designated type,
        or throw an exception if this is not possible.

        :param:obj: The VersionedObject on which an attribute is being set
        :param:attr: The name of the attribute being set
        :param:value: The value being set
        :returns: A properly-typed value
        N((RtobjtattrR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pytcoerce:scCsdS(sžThis is called to deserialize a value.

        This method should deserialize a value from the form given by
        to_primitive() to the designated type.

        :param:obj: The VersionedObject on which the value is to be set
        :param:attr: The name of the attribute which will hold the value
        :param:value: The serialized form of the value
        :returns: The natural form of the value
        N((RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pytfrom_primitiveHscCsdS(sxThis is called to serialize a value.

        This method should serialize a value to the form expected by
        from_primitive().

        :param:obj: The VersionedObject on which the value is set
        :param:attr: The name of the attribute holding the value
        :param:value: The natural form of the value
        :returns: The serialized form of the value
        N((RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pytto_primitiveVscCsdS(s2Returns a string describing the type of the field.N((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pytdescribedscCsdS(s/Returns a short stringified version of a value.N((RR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt	stringifyis(	R
RtabctabstractmethodRRRRR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR8s
t	FieldTypecBsPeZed„ƒZed„ƒZed„ƒZd„Zd„Zd„ZRS(cCs|S(N((RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRpscCs|S(N((RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRtscCs|S(N((RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRxscCs
|jjS(N(RR
(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR|scCs
t|ƒS(N(tstr(RR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRscCs
tƒ‚dS(N(tNotImplementedError(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt
get_schema‚s(	R
RtstaticmethodRRRRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRos		tUnspecifiedDefaultcBseZRS((R
R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR#†stFieldcBseZeeed„Zd„Zed„ƒZed„ƒZed„ƒZ	d„Z
d„Zd„Zd„Z
d	„Zd
„Zd„ZRS(cCs(||_||_||_||_dS(N(t_typet	_nullablet_defaultt
_read_only(Rt
field_typetnullabletdefaultt	read_only((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR‹s			cCs d|jjj|j|jfS(Ns%s(default=%s,nullable=%s)(R%RR
R'R&(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt__repr__’scCs|jS(N(R&(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR*–scCs|jS(N(R'(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR+šscCs|jS(N(R((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR,žscCsX|jr
dS|jtkr>|jj||tj|jƒƒStt	dƒ|ƒ‚dS(NsField `%s' cannot be None(
R*tNoneR'R#R%Rtcopytdeepcopyt
ValueErrorR(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_null¢s
	"cCs6|dkr|j||ƒS|jj|||ƒSdS(s~Coerce a value to a suitable type.

        This is called any time you set a value on an object, like:

          foo.myint = 1

        and is responsible for making sure that the value (1 here) is of
        the proper type, or can be sanely converted.

        This also handles the potentially nullable or defaultable
        nature of the field and calls the coerce() method on a
        FieldType to actually do the coercion.

        :param:obj: The object being acted upon
        :param:attr: The name of the attribute/field being set
        :param:value: The value being set
        :returns: The properly-typed value
        N(R.R2R%R(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR­scCs*|dkrdS|jj|||ƒSdS(sÅDeserialize a value from primitive form.

        This is responsible for deserializing a value from primitive
        into regular form. It calls the from_primitive() method on a
        FieldType to do the actual deserialization.

        :param:obj: The object being acted upon
        :param:attr: The name of the attribute/field being deserialized
        :param:value: The value to be deserialized
        :returns: The deserialized value
        N(R.R%R(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÅscCs*|dkrdS|jj|||ƒSdS(s›Serialize a value to primitive form.

        This is responsible for serializing a value to primitive
        form. It calls to_primitive() on a FieldType to do the actual
        serialization.

        :param:obj: The object being acted upon
        :param:attr: The name of the attribute/field being serialized
        :param:value: The value to be serialized
        :returns: The serialized value
        N(R.R%R(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÖscCs,|jjƒ}|jrdp!d}||S(s8Return a short string describing the type of this field.tNullablet(R%RR*(Rtnametprefix((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRçscCs$|dkrdS|jj|ƒSdS(NR.(R.R%R(RR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRíscCss|jjƒ}|ji|jd6ƒ|jrC|djdƒn|j}|tkro|ji|d6ƒn|S(NtreadonlyttypetnullR+(R%R!tupdateR,R*tappendR+R#(RtschemaR+((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!ós		(R
RtFalseR#RR-tpropertyR*R+R,R2RRRRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR$Šs							tStringcBs/eZed„ƒZed„ƒZd„ZRS(cCsitjttjtjf}t||ƒr8tj|ƒSttdƒi|d6t	|ƒj
d6ƒ‚dS(Ns6A string is required in field %(attr)s, not a %(type)sRR8(tsixt
integer_typestfloattstring_typestdatetimet
isinstancet	text_typeR1RR8R
(RRRtaccepted_types((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÿs

cCsd|S(Ns'%s'((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRscCsidgd6S(NtstringR8((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!s(R
RR"RRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR?þstSensitiveStringcBseZdZd„ZRS(s‹A string field type that may contain sensitive (password) information.

    Passwords in the string value are masked when stringified.
    cCstt|ƒjtj|ƒƒS(N(R
RIRRt
mask_password(RR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRs(R
Rt__doc__R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRIstVersionPredicatecBseZed„ƒZRS(cCsQytjd|ƒWn5tk
rLttdƒi|d6|d6ƒ‚nX|S(Ns
check (%s)s:Version %(val)s is not a valid predicate in field %(attr)sRR(RRLR1R(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRs
(R
RR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRLstEnumcBs;eZd„Zed„ƒZd„Zd„Zd„ZRS(cKs|stjƒ‚ny1x*|D]"}tt|ƒjdd|ƒqWWn#ttfk
rktjƒ‚nX||_	tt|ƒj
|dS(Ntinit(RtEnumRequiresValidValuesErrorR
RMRR.t	TypeErrorR1tEnumValidValuesInvalidErrort
_valid_valuesR(Rtvalid_valuestkwargsR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR*s
$	cCstj|jƒS(N(R/RR(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRS6scCsJ||jkr.tdƒ|}t|ƒ‚ntt|ƒj|||ƒS(NsField value %s is invalid(RRRR1R
RMR(RRRRtmsg((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR:scCsD||jkr.tdƒ|}t|ƒ‚ntt|ƒj|ƒS(NsField value %s is invalid(RRRR1R
RMR(RRRU((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR@scCs&tt|ƒjƒ}|j|d<|S(Ntenum(R
RMR!RR(RR<((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!Fs
(R
RRR>RSRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRM)s
			t
StringPatterncBseZd„ZRS(cCsMt|dƒr'idgd6|jd6Stdƒ|jj}t|ƒ‚dS(NtPATTERNRHR8tpatterns%s has no pattern(thasattrRXRRR
tAttributeError(RRU((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!Ms(R
RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRWLstUUIDcBseZdZed„ƒZRS(sQ^[a-fA-F0-9]{8}-?[a-fA-F0-9]{4}-?[a-fA-F0-9]{4}-?[a-fA-F0-9]{4}-?[a-fA-F0-9]{12}$c	Csmtjƒ[tjdƒytjt|ƒƒWn%tk
rXtjd|tƒnXt|ƒSWdQXdS(NtoncesZ%s is an invalid UUID. Using UUIDFields with invalid UUIDs is no longer supported, and will be removed in a future release. Please update your code to input valid UUIDs or accept ValueErrors for invalid UUIDs. See http://docs.openstack.org/developer/oslo.versionedobjects/api/fields.html#oslo_versionedobjects.fields.UUIDField for further details(	twarningstcatch_warningstsimplefiltertuuidR\Rt	Exceptiontwarnt
FutureWarning(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRZs


	(R
RRXR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR\Ust
MACAddresscBs,eZdZejeƒZed„ƒZRS(s^[0-9a-f]{2}(:[0-9a-f]{2}){5}$cCs`t|tjƒrC|jƒjddƒ}tjj|ƒrC|Sntt	dƒ|fƒ‚dS(Nt-t:sMalformed MAC %s(
RER@RCtlowertreplaceRet_REGEXtmatchR1R(RRRtlowered((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRus
(R
RRXtretcompileRjR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRepst
PCIAddresscBs,eZdZejeƒZed„ƒZRS(s-^[0-9a-f]{4}:[0-9a-f]{2}:[0-1][0-9a-f].[0-7]$cCsTt|tjƒr7|jƒ}tjj|ƒr7|Snttdƒ|fƒ‚dS(NsMalformed PCI address %s(	RER@RCRhRoRjRkR1R(RRRtnewvalue((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRƒs
(R
RRXRmRnRjR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRo~stIntegercBs eZed„ƒZd„ZRS(cCs
t|ƒS(N(tint(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRscCsidgd6S(NtintegerR8((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!‘s(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRqŒstNonNegativeIntegercBs eZed„ƒZd„ZRS(cCs5t|ƒ}|dkr1ttdƒ|ƒ‚n|S(NisValue must be >= 0 for field %s(RrR1R(RRRtv((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR–scCsidgd6dd6S(NRsR8itminimum((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!s(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRt•stFloatcBseZd„Zd„ZRS(cCs
t|ƒS(N(RB(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR¢scCsidgd6S(NtnumberR8((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!¥s(R
RRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRw¡s	tNonNegativeFloatcBs eZed„ƒZd„ZRS(cCs5t|ƒ}|dkr1ttdƒ|ƒ‚n|S(NisValue must be >= 0 for field %s(RBR1R(RRRRu((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRªscCsidgd6dd6S(NRxR8iRv((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!±s(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRy©stBooleancBs eZed„ƒZd„ZRS(cCs
t|ƒS(N(tbool(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR¶scCsidgd6S(NtbooleanR8((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!ºs(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRzµstFlexibleBooleancBseZed„ƒZRS(cCs
tj|ƒS(N(Rtbool_from_string(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR¿s(R
RR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR}¾stDateTimecBsMeZed„Zd„Zd„Zd„Zed„ƒZed„ƒZ	RS(cOs&||_tt|ƒj||ŽdS(N(ttzinfo_awareR
RR(RR€targsRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÅs	cCsÁt|tjƒr$tj|ƒ}nBt|tjƒsfttdƒi|d6t|ƒj	d6ƒ‚n|j
ƒdkrŸ|jrŸ|j
dtjjƒƒ}n|js½|j
ddƒ}n|S(NsAA datetime.datetime is required in field %(attr)s, not a %(type)sRR8ttzinfo(RER@RCRt
parse_isotimeRDR1RR8R
t	utcoffsetR.R€Ritiso8601tUtc(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÉs$	cCs|j||tj|ƒƒS(N(RRRƒ(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÜscCsidgd6dd6S(NRHR8s	date-timetformat((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!ßscCs
tj|ƒS(N(Rtisotime(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRâscCs
tj|ƒS(N(RRˆ(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRæs(
R
RtTrueRRRR!R"RR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÄs			t	IPAddresscBs/eZed„ƒZd„Zed„ƒZRS(cCsCytj|ƒSWn+tjk
r>}ttj|ƒƒ‚nXdS(N(tnetaddrRŠtAddrFormatErrorR1R@RF(RRRte((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRìscCs|j|||ƒS(N(R(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRóscCs
t|ƒS(N(R(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRös(R
RR"RRR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRŠës	tIPV4AddresscBs eZed„ƒZd„ZRS(cCsOtj|||ƒ}|jdkrKttdƒi|d6|d6ƒ‚n|S(Nis0Network "%(val)s" is not valid in field %(attr)sRR(RŠRtversionR1R(RRRtresult((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRüs
cCsidgd6dd6S(NRHR8tipv4R‡((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!s(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRŽûs	tIPV6AddresscBs eZed„ƒZd„ZRS(cCsOtj|||ƒ}|jdkrKttdƒi|d6|d6ƒ‚n|S(Nis0Network "%(val)s" is not valid in field %(attr)sRR(RŠRRR1R(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR
s
cCsidgd6dd6S(NRHR8tipv6R‡((R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!s(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR’	s	tIPV4AndV6AddresscBs eZed„ƒZd„ZRS(cCs^tj|||ƒ}|jdkrZ|jdkrZttdƒi|d6|d6ƒ‚n|S(Niis0Network "%(val)s" is not valid in field %(attr)sRR(RŠRRR1R(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRs
cCs#itƒjƒtƒjƒgd6S(NtoneOf(RŽR!R’(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!!s(R
RR"RR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR”s	t	IPNetworkcBseZed„ƒZRS(cCsCytj|ƒSWn+tjk
r>}ttj|ƒƒ‚nXdS(N(R‹R–RŒR1R@RF(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR's(R
RR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR–&stIPV4NetworkcBseZdZed„ƒZRS(s†^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))$cCsIytj|ddƒSWn+tjk
rD}ttj|ƒƒ‚nXdS(NRi(R‹R–RŒR1R@RF(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR5s(R
RRXR"R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR—/stIPV6NetworkcBs)eZd„Zed„ƒZd„ZRS(cOs,tt|ƒj||Ž|jƒ|_dS(N(R
R˜Rt_create_patternRX(RRRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR?scCsIytj|ddƒSWn+tjk
rD}ttj|ƒƒ‚nXdS(NRi(R‹R–RŒR1R@RF(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRCscCs¸d}d}d|d|d|d|d|d|d|d	|d
|d|d|d
|d|d|d|d|d|d|d|d|d|dS(Ns[0-9a-fA-F]{1,4}s((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])s^(s:){7,7}s|(s
:){1,7}:|(s:){1,6}:s	:){1,5}(:s){1,2}|(s	:){1,4}(:s){1,3}|(s	:){1,3}(:s){1,4}|(s	:){1,2}(:s){1,5}|s:((:s){1,6})|:((:sU){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}(s\.){3,3}s	:){1,4}:(s(\/(d|dd|1[0-1]d|12[0-8]))$((Rtipv6segtipv4seg((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR™Js!§(R
RRR"RR™(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR˜=s	tCompoundFieldTypecBseZd„ZRS(cKst|||_dS(N(R$t
_element_type(Rtelement_typet
field_args((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRts(R
RR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRœsstListcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCsot|tƒs?ttdƒi|d6t|ƒjd6ƒ‚ntƒ}|j|j||ƒ|j	|ƒ|S(Ns4A list is required in field %(attr)s, not a %(type)sRR8(
REtlistR1RR8R
tCoercedListtenable_coercingRtextend(RRRRtcoerced_list((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRys$	
cCs)g|D]}|jj|||ƒ^qS(N(RR(RRRRtx((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRƒscCs)g|D]}|jj|||ƒ^qS(N(RR(RRRRR¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR†scCs0ddjg|D]}|jj|ƒ^qƒS(Ns[%s]t,(tjoinRR(RRR¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR‰scCsidgd6|jjƒd6S(NtarrayR8titems(RR!(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!s(R
RRRRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR xs
	
			tDictcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCsot|tƒs?ttdƒi|d6t|ƒjd6ƒ‚ntƒ}|j|j||ƒ|j	|ƒ|S(Ns4A dict is required in field %(attr)s, not a %(type)sRR8(
REtdictR1RR8R
tCoercedDictR£RR:(RRRRtcoerced_dict((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR’s$	
cCsMi}x@|jƒD]2\}}|jj|d||f|ƒ||<qW|S(Ns%s["%s"](RªRR(RRRRt	primitiveRtelement((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRœs
	!cCsMi}x@|jƒD]2\}}|jj|d||f|ƒ||<qW|S(Ns%s["%s"](RªRR(RRRRtconcreteRR°((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR£s
	!cCsLddjgt|jƒƒD](\}}d||jj|ƒf^qƒS(Ns{%s}R§s%s=%s(R¨tsortedRªRR(RRRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRªs	cCsidgd6|jjƒd6S(NtobjectR8tadditionalProperties(RR!(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!¯s
(R
RRRRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR«‘s
	
			tDictProxyFieldcBs,eZdZed„Zd„Zd„ZRS(sîDescriptor allowing us to assign pinning data as a dict of key_types

    This allows us to have an object field that will be a dict of key_type
    keys, allowing that will convert back to string-keyed dict.

    This will take care of the conversion while the dict field will make sure
    that we store the raw json-serializable data on the object.

    key_type should return a type that unambiguously responds to six.text_type
    so that calling key_type on it yields the same thing.
    cCs||_||_dS(N(t	_fld_namet	_key_type(Rtdict_field_nametkey_type((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÀs	csR|dkrˆSt|ˆjƒdkr,dS‡fd†t|ˆjƒjƒDƒS(Ncs(i|]\}}|ˆj|ƒ“qS((R·(t.0tkRu(R(sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pys
<dictcomp>És	(R.tgetattrR¶Rª(RRtobj_type((RsQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt__get__ÄscCsI|dkr"t||j|ƒn#t||jd„|jƒDƒƒdS(NcSs(i|]\}}|tj|ƒ“qS((R@RF(RºR»Ru((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pys
<dictcomp>Ñs	(R.tsetattrR¶Rª(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt__set__Ìs(R
RRKRrRR¾RÀ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRµ´s	tSetcBs5eZd„Zd„Zd„Zd„Zd„ZRS(cCsot|tƒs?ttdƒi|d6t|ƒjd6ƒ‚ntƒ}|j|j||ƒ|j	|ƒ|S(Ns3A set is required in field %(attr)s, not a %(type)sRR8(
REtsetR1RR8R
t
CoercedSetR£RR:(RRRRtcoerced_set((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÕs$	
cs t‡‡‡fd†|DƒƒS(Nc3s'|]}ˆjjˆˆ|ƒVqdS(N(RR(RºR¦(RRR(sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pys	<genexpr>ás(ttuple(RRRR((RRRsQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRßscCs/tg|D]}|jj|||ƒ^q
ƒS(N(RÂRR(RRRRR¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRãscCs0ddjg|D]}|jj|ƒ^qƒS(Ns	set([%s])R§(R¨RR(RRR¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRçscCs%idgd6td6|jjƒd6S(NR©R8tuniqueItemsRª(R‰RR!(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!ës(R
RRRRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÁÔs
	
			tObjectcBseeZed„Zed„ƒZd„Zed„ƒZed„ƒZd„Z	d„Z
d„ZRS(cKs,||_||_tt|ƒj|dS(N(t	_obj_namet_subclassesR
RÇR(Rtobj_namet
subclassesRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRñs		cCsLg}x?|jjƒD].}t|dƒs1qn|j|jƒƒqW|S(NRÊ(RtmroRZR;RÊ(Rt	obj_namestparent((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_get_all_obj_namesöscCs(y|jƒ}Wntk
r)d}nX|jrE|j|ƒ}n	|g}|j|kr$|sut|ƒj}nd}t|dƒr¥dj|j	dgƒ}nd}t|dƒrÕdj|j	dgƒ}nt
tdƒidj||jgƒd6|d6dj||gƒd6ƒ‚n|S(NR4Rt.sKAn object of type %(type)s is required in field %(attr)s, not a %(valtype)sR8Rtvaltype(RÊR[RÉRÏRÈR8R
RZR¨RR1R(RRRRRÊRÍtobj_modtval_mod((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRs*

		cCs
|jƒS(N(tobj_to_primitive(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRscCs9ddlm}t||jƒr&|S|j||jƒS(Niÿÿÿÿ(tbase(toslo_versionedobjectsRÕREtVersionedObjecttobj_from_primitivet_context(RRRtobj_base((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!scCsd|jS(Ns
Object<%s>(RÈ(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR+scCs‚d|jkr4d|jdƒr*|jp-d}n:d|jkrhd|jdƒr^|jpad}nd}d|jƒ|fS(NRas(%s)tUNKNOWNtidR4s%s%s(tfieldstobj_attr_is_setRaRÜRÊ(RRtident((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR.s

cCs¥ddlm}|jjƒ}|j|krŒ||jd}|jdƒ}|jdƒ}|jdƒ}|jdƒ}|jdƒ}d	„|jjƒDƒ}	gt|jjƒƒD]\}
}|j	s¹|
^q¹}id
gd6iidd6|6idd6|6idd6|6id
d6idd6d6|6id
d6d|jd6|	d6|6d6||||gd6}
|rˆ||
d|d<n|
St
jd|jƒ‚dS(Niÿÿÿÿ(RÕit	namespaceR5RtdatatchangescSs%i|]\}}|jƒ|“qS((R!(RºRtfield((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pys
<dictcomp>Ds	R³R8RHR©Rªsfields of %stdescriptiont
propertiestrequiredtobjtype(RÖRÕtVersionedObjectRegistrytobj_classesRÈt_obj_primitive_keyRÝRªR²R*RtUnsupportedObjectError(RRÚRétclst
namespace_keytname_keytversion_keytdata_keytchanges_keyt
field_schemasRRãtrequired_fieldsR<((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!:sF"
(R
RR=RR"RÏRRRRRR!(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÇðs
	
		tAutoTypedFieldcBseZdZd„ZRS(cKs tt|ƒj|j|dS(N(R
RôRt	AUTO_TYPE(RRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRnsN(R
RR.RõR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRôkstStringFieldcBseZeƒZRS((R
RR?Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRörstSensitiveStringFieldcBseZdZeƒZRS(s>Field type that masks passwords when the field is stringified.(R
RRKRIRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR÷vstVersionPredicateFieldcBseZeƒZRS((R
RRLRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRø{st
BaseEnumFieldcBs/eZdZd„Zd„Zed„ƒZRS(sÄBase class for all enum field types

    This class should not be directly instantiated. Instead
    subclass it and set AUTO_TYPE to be a SomeEnum()
    where SomeEnum is a subclass of Enum.
    cKs€|jdkr*tjd|jjƒ‚nt|jtƒsftjd|jjjd|jjƒ‚nt	t
|ƒj|dS(Nt	fieldnamettypename(RõR.RtEnumFieldUnsetRR
RERMtEnumFieldInvalidR
RùR(RRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR‡s		cCs‰|jj}i|jd6|jd6}|ji|d6ƒd|jjjdjgt|j	ƒƒD]\}}d||f^qbƒfS(NR*R+RSs%s(%s)R§s%s=%s(
R%RSR&R'R:RR
R¨R²Rª(RRSRR»Ru((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR-“s

	cCs
|jjS(s.Return the list of valid values for the field.(R%RS(R((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRSžs(R
RRKRR-R>RS(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRùs		t	EnumFieldcBseZdZd„ZRS(s(Anonymous enum field type

    This class allows for anonymous enum types to be
    declared, simply by passing in a list of valid values
    to its constructor. It is generally preferable though,
    to create an explicit named enum type by sub-classing
    the BaseEnumField type directly.
    cKs,td|ƒ|_tt|ƒj|dS(NRS(RMRõR
RþR(RRSRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR®s(R
RRKR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRþ¤stStateMachinecBs&eZdZiZd„Zd„ZRS(spA mixin that can be applied to an EnumField to enforce a state machine

    e.g: Setting the code below on a field will ensure an object cannot
    transition from ERROR to ACTIVE

    :example:
        .. code-block:: python

            class FakeStateMachineField(fields.EnumField, fields.StateMachine):

                ACTIVE = 'ACTIVE'
                PENDING = 'PENDING'
                ERROR = 'ERROR'
                DELETED = 'DELETED'

                ALLOWED_TRANSITIONS = {
                    ACTIVE: {
                        PENDING,
                        ERROR,
                        DELETED,
                    },
                    PENDING: {
                        ACTIVE,
                        ERROR
                    },
                    ERROR: {
                        PENDING,
                    },
                    DELETED: {}  # This is a terminal state
                }

                _TYPES = (ACTIVE, PENDING, ERROR, DELETED)

                def __init__(self, **kwargs):
                    super(FakeStateMachineField, self).__init__(
                    self._TYPES, **kwargs)

    cCs4x-|jjƒD]\}}||kr|SqWdS(Ntunknown(RÝRª(RRR5Rã((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_my_nameßscCsëtt|ƒj|||ƒ|j|ƒ}tdƒ}||krUt||ƒ}n|S||jkrŽ||j|kr|Stdƒ}n|i|jƒd6|d6|d6|d6g|j|D]}|^qÄd6}t|ƒ‚dS(NsG%(object)s.%(name)s is not allowed to transition out of %(value)s states%(object)s.%(name)s is not allowed to transition out of '%(current_value)s' state to '%(value)s' state, choose from %(options)rR³R5t
current_valueRtoptions(	R
RÿRRRR¼tALLOWED_TRANSITIONSRÊR1(RRRRtmy_nameRURR¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRås$
%(R
RRKRRR(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÿ³s&	t	UUIDFieldcBseZdZeƒZRS(sUUID Field Type

    .. warning::

        This class does not actually validate UUIDs. This will happen in a
        future major version of oslo.versionedobjects

    To validate that you have valid UUIDs you need to do the following in
    your own objects/fields.py

    :Example:
         .. code-block:: python

            import oslo_versionedobjects.fields as ovo_fields

            class UUID(ovo_fields.UUID):
                 def coerce(self, obj, attr, value):
                    uuid.UUID(value)
                    return str(value)


            class UUIDField(ovo_fields.AutoTypedField):
                AUTO_TYPE = UUID()

        and then in your objects use
        ``<your_projects>.object.fields.UUIDField``.

    This will become default behaviour in the future.
    (R
RRKR\Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRstMACAddressFieldcBseZeƒZRS((R
RReRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR$stPCIAddressFieldcBseZeƒZRS((R
RRoRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR(stIntegerFieldcBseZeƒZRS((R
RRqRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR	,stNonNegativeIntegerFieldcBseZeƒZRS((R
RRtRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR
0st
FloatFieldcBseZeƒZRS((R
RRwRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR4stNonNegativeFloatFieldcBseZeƒZRS((R
RRyRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR8stBooleanFieldcBseZeƒZRS((R
RRzRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR
>stFlexibleBooleanFieldcBseZeƒZRS((R
RR}Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRGst
DateTimeFieldcBseZed„ZRS(cKs,td|ƒ|_tt|ƒj|dS(NR€(RRõR
RR(RR€RT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRLs(R
RR‰R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRKstDictOfStringsFieldcBseZeeƒƒZRS((R
RR«R?Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRQstDictOfNullableStringsFieldcBseZeeƒdeƒZRS(R*(R
RR«R?R‰Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRUstDictOfIntegersFieldcBseZeeƒƒZRS((R
RR«RqRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRYstListOfStringsFieldcBseZeeƒƒZRS((R
RR R?Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR]stDictOfListOfStringsFieldcBseZeeeƒƒƒZRS((R
RR«R R?Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRastListOfEnumFieldcBseZd„Zd„ZRS(cKs/tt|ƒƒ|_tt|ƒj|dS(N(R RMRõR
RR(RRSRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRfscCs|jjjj}i|jd6|jd6}|ji|d6ƒd|jjjdjgt	|j
ƒƒD]\}}d||f^qhƒfS(NR*R+RSs%s(%s)R§s%s=%s(R%RRSR&R'R:RR
R¨R²Rª(RRSRR»Ru((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR-js

	(R
RRR-(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRes	tSetOfIntegersFieldcBseZeeƒƒZRS((R
RRÁRqRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRvstListOfSetsOfIntegersFieldcBseZeeeƒƒƒZRS((R
RR RÁRqRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRzstListOfIntegersFieldcBseZeeƒƒZRS((R
RR RqRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR~st ListOfDictOfNullableStringsFieldcBs#eZeeeƒdeƒƒZRS(R*(R
RR R«R?R‰Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR‚stObjectFieldcBseZed„ZRS(cKs5t||ƒ|_||_tt|ƒj|dS(N(RÇRõtobjnameR
RR(RRçRËRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR‡s	(R
RR=R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR†stListOfObjectsFieldcBseZed„ZRS(cKs;tt||ƒƒ|_||_tt|ƒj|dS(N(R RÇRõRR
RR(RRçRËRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRŽs	(R
RR=R(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRstIPAddressFieldcBseZeƒZRS((R
RRŠRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR”stIPV4AddressFieldcBseZeƒZRS((R
RRŽRõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR˜stIPV6AddressFieldcBseZeƒZRS((R
RR’Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRœstIPV4AndV6AddressFieldcBseZeƒZRS((R
RR”Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR  stIPNetworkFieldcBseZeƒZRS((R
RR–Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR!¤stIPV4NetworkFieldcBseZeƒZRS((R
RR—Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR"¨stIPV6NetworkFieldcBseZeƒZRS((R
RR˜Rõ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR#¬stCoercedCollectionMixincBseZd„Zd„ZRS(cOs8d|_d|_d|_tt|ƒj||ŽdS(N(R.Rt_objt_fieldR
R$R(RRRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR±s			cCs||_||_||_dS(N(RR%R&(RRžRRã((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR£·s		(R
RRR£(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR$°s	R¢cBsMeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z	RS(s±List which coerces its elements

    List implementation which overrides all element-adding methods and
    coercing the element(s) being added to the required element type
    cCsRt|dƒrJ|jdk	rJd|j|f}|jj|j||ƒS|SdS(NRs%s[%i](RZRR.R&RR%(Rtindextitemtatt_name((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_coerce_itemÃscCs®t|ƒtkr…|jpd}|jp-d}gt|ƒD]&\}}|j||||ƒ^q=}tt|ƒj||ƒn%tt|ƒj||j||ƒƒdS(Nii(	R8tslicetstarttstept	enumerateR*R
R¢t__setitem__(RtityR,R-R'R(t
coerced_items((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR/Ês6cCs0tt|ƒj|jt|ƒd|ƒƒdS(Ni(R
R¢R;R*tlen(RR¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR;ÔscCs[t|ƒ}gt|ƒD]"\}}|j|||ƒ^q}tt|ƒj|ƒdS(N(R3R.R*R
R¢R¤(RtttlR'R(R2((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR¤×s2cCs)tt|ƒj||j||ƒƒdS(N(R
R¢tinsertR*(RR0R¦((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR6ÝscCsWt|ƒ}gt|ƒD]"\}}|j|||ƒ^q}tt|ƒj|ƒS(N(R3R.R*R
R¢t__iadd__(RR1R5R'R(R2((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR7às2cCsQgt|ƒD]"\}}|j|||ƒ^q
}tt|ƒj|||ƒS(N(R.R*R
R¢t__setslice__(RR0tjR1R'R(R2((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR8æs2(
R
RRKR*R/R;R¤R6R7R8(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR¢½s		
				R­cBsAeZdZd„Zd„Zd„Zdd„Zdd„ZRS(s¯Dict which coerces its values

    Dict implementation which overrides all element-adding methods and
    coercing the element(s) being added to the required element type
    cCs=i}x0|jƒD]"\}}|j||ƒ||<qW|S(N(RªR*(RtdtresRR°((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_coerce_dictóscCs}t|tjƒs+ttjd|ƒ‚nt|dƒru|jdk	rud|j|f}|jj|j	||ƒS|SdS(NiRs%s[%s](
RER@RCRRZRR.R&RR%(RRR(R)((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR*ùscCs)tt|ƒj||j||ƒƒdS(N(R
R­R/R*(RRR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR/scKs]|dk	r:tt|ƒj|j|ƒ|j|ƒntt|ƒj|j|ƒdS(N(R.R
R­R:R<(RtotherRT((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR:
scCs%tt|ƒj||j||ƒƒS(N(R
R­t
setdefaultR*(RRR+((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR>s	N(	R
RRKR<R*R/R.R:R>(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR­ìs		
	RÃcBsMeZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z	RS(s®Set which coerces its values

    Dict implementation which overrides all element-adding methods and
    coercing the element(s) being added to the required element type
    cCsLt|dƒrD|jdk	rD|jj|jd|j|f|ƒS|SdS(NRs%s[%s](RZRR.RR%R&(RR°((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_coerce_elements
cCs4tƒ}x$|D]}|j|j|ƒƒqW|S(N(RÂtaddR?(RtvaluestcoercedR°((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt_coerce_iterable%s	
cCstt|ƒj|j|ƒƒS(N(R
RÃR@R?(RR((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR@+scCstt|ƒj|j|ƒƒS(N(R
RÃR:RC(RRA((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyR:.scCstt|ƒj|j|ƒƒS(N(R
RÃtsymmetric_difference_updateRC(RRA((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRD1scCstt|ƒj|j|ƒƒS(N(R
RÃt__ior__RC(RR1((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRE5scCstt|ƒj|j|ƒƒS(N(R
RÃt__ixor__RC(RR1((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRF8s(
R
RRKR?RCR@R:RDRERF(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyRÃs						(dRRDt	distutilsRRmRaR^R/R…R‹t
oslo_utilsRRR@toslo_versionedobjects._i18nRRÖRRRPRRt
add_metaclasstABCMetaR³RRR#R$R?RIRLRMRWR\ReRoRqRtRwRyRzR}RRŠRŽR’R”R–R—R˜RœR R«RµRÁRÇRôRöR÷RøRùRþRÿRRRR	R
RRR
RRRRRRRRRRRRRRRRRR R!R"R#R$R¡R¢R¬R­RÂRÃ(((sQ/home/tvault/.virtenv/lib/python2.7/site-packages/oslo_versionedobjects/fields.pyt<module>s²
6t
#			'	6# {%P!	
/+