Äcdocutils.nodes document q)Åq}q(U nametypesq}q(X���mutability of metadataqNX���systemmetadata mutabilityqNX���rest apiqNX%���interactions affecting systemmetadataq NuUsubstitution_defsq }qUparse_messagesq]q Ucurrent_sourceqNU decorationqNUautofootnote_startqKUnameidsq}q(hUmutability-of-metadataqhUsystemmetadata-mutabilityqhUrest-apiqh U%interactions-affecting-systemmetadataquUchildrenq]qcdocutils.nodes section q)Åq}q(U rawsourceqU�UparentqhUsourceqXt���/var/lib/jenkins/jobs/API_Documentation_trunk/workspace/api-documentation/source/notes/sysmeta_mutation_20110831.txtqUtagnameq Usectionq!U attributesq"}q#(Udupnamesq$]Uclassesq%]Ubackrefsq&]Uidsq']q(haUnamesq)]q*hauUlineq+KUdocumentq,hh]q-(cdocutils.nodes title q.)Åq/}q0(hX���Mutability of Metadataq1hhhhh Utitleq2h"}q3(h$]h%]h&]h']h)]uh+Kh,hh]q4cdocutils.nodes Text q5X���Mutability of Metadataq6ÖÅq7}q8(hh1hh/ubaubcdocutils.nodes paragraph q9)Åq:}q;(hXV���These notes were initiated by DV with responses by RW and MJ around 17 December, 2010.q<hhhhh U paragraphq=h"}q>(h$]h%]h&]h']h)]uh+Kh,hh]q?h5XV���These notes were initiated by DV with responses by RW and MJ around 17 December, 2010.q@ÖÅqA}qB(hh<hh:ubaubh9)ÅqC}qD(hX5���Notes clarified and consolidated on 08/31/2011 by RW.qEhhhhh h=h"}qF(h$]h%]h&]h']h)]uh+Kh,hh]qGh5X5���Notes clarified and consolidated on 08/31/2011 by RW.qHÖÅqI}qJ(hhEhhCubaubh9)ÅqK}qL(hX§��SystemMetadata will be modified by CNs, MNs and clients. The CN modifies the SystemMetadata during certain operations, such as MN-CN Synchronization and MN-MN replication. A MN will modify SystemMetadata provenance as an object is updated. Clients and MNs will modify SystemMetadata to reflect new policies regarding replication, access and ownership, and will notify the CN when a MN-MN Replication event has completed.qMhhhhh h=h"}qN(h$]h%]h&]h']h)]uh+K h,hh]qOh5X§��SystemMetadata will be modified by CNs, MNs and clients. The CN modifies the SystemMetadata during certain operations, such as MN-CN Synchronization and MN-MN replication. A MN will modify SystemMetadata provenance as an object is updated. Clients and MNs will modify SystemMetadata to reflect new policies regarding replication, access and ownership, and will notify the CN when a MN-MN Replication event has completed.qPÖÅqQ}qR(hhMhhKubaubh)ÅqS}qT(hU�hhhhh h!h"}qU(h$]h%]h&]h']qVhah)]qWhauh+Kh,hh]qX(h.)ÅqY}qZ(hX���SystemMetadata Mutabilityq[hhShhh h2h"}q\(h$]h%]h&]h']h)]uh+Kh,hh]q]h5X���SystemMetadata Mutabilityq^ÖÅq_}q`(hh[hhYubaubh9)Åqa}qb(hXg��SystemMetadata has certain elements that, once created, will never change. The immutable set of elements are determined during the MN-CN Synchronization process and are static through the existence of the object. The mutable set of elements are modified due to certain interactions and restrictions placed on which actor in the system may perform the updates.qchhShhh h=h"}qd(h$]h%]h&]h']h)]uh+Kh,hh]qeh5Xg��SystemMetadata has certain elements that, once created, will never change. The immutable set of elements are determined during the MN-CN Synchronization process and are static through the existence of the object. The mutable set of elements are modified due to certain interactions and restrictions placed on which actor in the system may perform the updates.qfÖÅqg}qh(hhchhaubaubh9)Åqi}qj(hX���The Immutable set:qkhhShhh h=h"}ql(h$]h%]h&]h']h)]uh+Kh,hh]qmh5X���The Immutable set:qnÖÅqo}qp(hhkhhiubaubcdocutils.nodes block_quote qq)Åqr}qs(hU�hhShhh Ublock_quoteqth"}qu(h$]h%]h&]h']h)]uh+Nh,hh]qvcdocutils.nodes table qw)Åqx}qy(hU�h"}qz(h$]h%]h&]h']h)]uhhrh]q{cdocutils.nodes tgroup q|)Åq}}q~(hU�h"}q(h']h&]h$]h%]h)]UcolsKuhhxh]qÄ(cdocutils.nodes colspec qÅ)ÅqÇ}qÉ(hU�h"}qÑ(h']h&]h$]h%]h)]UcolwidthKuhh}h]h UcolspecqÖubhÅ)ÅqÜ}qá(hU�h"}qà(h']h&]h$]h%]h)]UcolwidthK(uhh}h]h hÖubcdocutils.nodes thead qâ)Åqä}qã(hU�h"}qå(h$]h%]h&]h']h)]uhh}h]qçcdocutils.nodes row qé)Åqè}qê(hU�h"}që(h$]h%]h&]h']h)]uhhäh]qí(cdocutils.nodes entry qì)Åqî}qï(hU�h"}qñ(h$]h%]h&]h']h)]uhhèh]qóh9)Åqò}qô(hX���Elementqöhhîhhh h=h"}qõ(h$]h%]h&]h']h)]uh+Kh]qúh5X���ElementqùÖÅqû}qü(hhöhhòubaubah Uentryq†ubhì)Åq°}q¢(hU�h"}q£(h$]h%]h&]h']h)]uhhèh]q§h9)Åq•}q¶(hX���Typeqßhh°hhh h=h"}q®(h$]h%]h&]h']h)]uh+Kh]q©h5X���Typeq™ÖÅq´}q¨(hhßhh•ubaubah h†ubeh Urowq≠ubah UtheadqÆubcdocutils.nodes tbody qØ)Åq∞}q±(hU�h"}q≤(h$]h%]h&]h']h)]uhh}h]q≥(hé)Åq¥}qµ(hU�h"}q∂(h$]h%]h&]h']h)]uhh∞h]q∑(hì)Åq∏}qπ(hU�h"}q∫(h$]h%]h&]h']h)]uhh¥h]qªh9)Åqº}qΩ(hX ���identifierqæhh∏hhh h=h"}qø(h$]h%]h&]h']h)]uh+Kh]q¿h5X ���identifierq¡ÖÅq¬}q√(hhæhhºubaubah h†ubhì)Åqƒ}q≈(hU�h"}q∆(h$]h%]h&]h']h)]uhh¥h]q«h9)Åq»}q…(hX���:class:`Types.Identifier`q hhƒhhh h=h"}qÀ(h$]h%]h&]h']h)]uh+Kh]qÃcsphinx.addnodes pending_xref qÕ)ÅqŒ}qœ(hh hh»hhh Upending_xrefq–h"}q—(UreftypeX���classUrefwarnq“âU reftargetq”X���Types.IdentifierU refdomainX���pyq‘h']h&]Urefexplicitâh$]h%]h)]Urefdocq’X���notes/sysmeta_mutation_20110831q÷Upy:classq◊NU py:moduleqÿNuh+K h]qŸcdocutils.nodes literal q⁄)Åq€}q‹(hh h"}q›(h$]h%]qfi(Uxrefqflh‘X���py-classq‡eh&]h']h)]uhhŒh]q·h5X���Types.Identifierq‚ÖÅq„}q‰(hU�hh€ubah UliteralqÂubaubaubah h†ubeh h≠ubhé)ÅqÊ}qÁ(hU�h"}qË(h$]h%]h&]h']h)]uhh∞h]qÈ(hì)ÅqÍ}qÎ(hU�h"}qÏ(h$]h%]h&]h']h)]uhhÊh]qÌh9)ÅqÓ}qÔ(hX���formatIdqhhÍhhh h=h"}qÒ(h$]h%]h&]h']h)]uh+K h]qÚh5X���formatIdqÛÖÅqÙ}qı(hhhhÓubaubah h†ubhì)Åqˆ}q˜(hU�h"}q¯(h$]h%]h&]h']h)]uhhÊh]q˘h9)Åq˙}q˚(hX%���:class:`Types.ObjectFormatIdentifier`q¸hhˆhhh h=h"}q˝(h$]h%]h&]h']h)]uh+K h]q˛hÕ)Åqˇ}r���(hh¸hh˙hhh h–h"}r��(UreftypeX���classh“âh”X���Types.ObjectFormatIdentifierU refdomainX���pyr��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K!h]r��h⁄)År��}r��(hh¸h"}r��(h$]h%]r��(hflj��X���py-classr��eh&]h']h)]uhhˇh]r ��h5X���Types.ObjectFormatIdentifierr ��ÖÅr��}r��(hU�hj��ubah hÂubaubaubah h†ubeh h≠ubhé)År ��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhh∞h]r��(hì)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj ��h]r��h9)År��}r��(hX���sizer��hj��hhh h=h"}r��(h$]h%]h&]h']h)]uh+K!h]r��h5X���sizer��ÖÅr��}r��(hj��hj��ubaubah h†ubhì)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj ��h]r ��h9)År!��}r"��(hX���longr#��hj��hhh h=h"}r$��(h$]h%]h&]h']h)]uh+K!h]r%��h5X���longr&��ÖÅr'��}r(��(hj#��hj!��ubaubah h†ubeh h≠ubhé)År)��}r*��(hU�h"}r+��(h$]h%]h&]h']h)]uhh∞h]r,��(hì)År-��}r.��(hU�h"}r/��(h$]h%]h&]h']h)]uhj)��h]r0��h9)År1��}r2��(hX���checksumr3��hj-��hhh h=h"}r4��(h$]h%]h&]h']h)]uh+K"h]r5��h5X���checksumr6��ÖÅr7��}r8��(hj3��hj1��ubaubah h†ubhì)År9��}r:��(hU�h"}r;��(h$]h%]h&]h']h)]uhj)��h]r<��h9)År=��}r>��(hX���:class:`Types.Checksum`r?��hj9��hhh h=h"}r@��(h$]h%]h&]h']h)]uh+K"h]rA��hÕ)ÅrB��}rC��(hj?��hj=��hhh h–h"}rD��(UreftypeX���classh“âh”X���Types.ChecksumU refdomainX���pyrE��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K#h]rF��h⁄)ÅrG��}rH��(hj?��h"}rI��(h$]h%]rJ��(hfljE��X���py-classrK��eh&]h']h)]uhjB��h]rL��h5X���Types.ChecksumrM��ÖÅrN��}rO��(hU�hjG��ubah hÂubaubaubah h†ubeh h≠ubhé)ÅrP��}rQ��(hU�h"}rR��(h$]h%]h&]h']h)]uhh∞h]rS��(hì)ÅrT��}rU��(hU�h"}rV��(h$]h%]h&]h']h)]uhjP��h]rW��h9)ÅrX��}rY��(hX ���submitterrZ��hjT��hhh h=h"}r[��(h$]h%]h&]h']h)]uh+K#h]r\��h5X ���submitterr]��ÖÅr^��}r_��(hjZ��hjX��ubaubah h†ubhì)År`��}ra��(hU�h"}rb��(h$]h%]h&]h']h)]uhjP��h]rc��h9)Ård��}re��(hX���:class:`Types.Subject`rf��hj`��hhh h=h"}rg��(h$]h%]h&]h']h)]uh+K#h]rh��hÕ)Åri��}rj��(hjf��hjd��hhh h–h"}rk��(UreftypeX���classh“âh”X ���Types.SubjectU refdomainX���pyrl��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K$h]rm��h⁄)Årn��}ro��(hjf��h"}rp��(h$]h%]rq��(hfljl��X���py-classrr��eh&]h']h)]uhji��h]rs��h5X ���Types.Subjectrt��ÖÅru��}rv��(hU�hjn��ubah hÂubaubaubah h†ubeh h≠ubhé)Årw��}rx��(hU�h"}ry��(h$]h%]h&]h']h)]uhh∞h]rz��(hì)År{��}r|��(hU�h"}r}��(h$]h%]h&]h']h)]uhjw��h]r~��h9)År��}rÄ��(hX���dateUploadedrÅ��hj{��hhh h=h"}rÇ��(h$]h%]h&]h']h)]uh+K$h]rÉ��h5X���dateUploadedrÑ��ÖÅrÖ��}rÜ��(hjÅ��hj��ubaubah h†ubhì)Årá��}rà��(hU�h"}râ��(h$]h%]h&]h']h)]uhjw��h]rä��h9)Årã��}rå��(hX���:class:`Types.DateTime`rç��hjá��hhh h=h"}ré��(h$]h%]h&]h']h)]uh+K$h]rè��hÕ)Årê��}rë��(hjç��hjã��hhh h–h"}rí��(UreftypeX���classh“âh”X���Types.DateTimeU refdomainX���pyrì��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K%h]rî��h⁄)Årï��}rñ��(hjç��h"}ró��(h$]h%]rò��(hfljì��X���py-classrô��eh&]h']h)]uhjê��h]rö��h5X���Types.DateTimerõ��ÖÅrú��}rù��(hU�hjï��ubah hÂubaubaubah h†ubeh h≠ubhé)Årû��}rü��(hU�h"}r†��(h$]h%]h&]h']h)]uhh∞h]r°��(hì)År¢��}r£��(hU�h"}r§��(h$]h%]h&]h']h)]uhjû��h]r•��h9)År¶��}rß��(hX���originMemberNoder®��hj¢��hhh h=h"}r©��(h$]h%]h&]h']h)]uh+K%h]r™��h5X���originMemberNoder´��ÖÅr¨��}r≠��(hj®��hj¶��ubaubah h†ubhì)ÅrÆ��}rØ��(hU�h"}r∞��(h$]h%]h&]h']h)]uhjû��h]r±��h9)År≤��}r≥��(hX���:class:`Types.NodeReference`r¥��hjÆ��hhh h=h"}rµ��(h$]h%]h&]h']h)]uh+K%h]r∂��hÕ)År∑��}r∏��(hj¥��hj≤��hhh h–h"}rπ��(UreftypeX���classh“âh”X���Types.NodeReferenceU refdomainX���pyr∫��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K&h]rª��h⁄)Årº��}rΩ��(hj¥��h"}ræ��(h$]h%]rø��(hflj∫��X���py-classr¿��eh&]h']h)]uhj∑��h]r¡��h5X���Types.NodeReferencer¬��ÖÅr√��}rƒ��(hU�hjº��ubah hÂubaubaubah h†ubeh h≠ubeh Utbodyr≈��ubeh Utgroupr∆��ubah Utabler«��ubaubh9)År»��}r…��(hX���The Mutable set:r ��hhShhh h=h"}rÀ��(h$]h%]h&]h']h)]uh+K)h,hh]rÃ��h5X���The Mutable set:rÕ��ÖÅrŒ��}rœ��(hj ��hj»��ubaubhq)År–��}r—��(hU�hhShhh hth"}r“��(h$]h%]h&]h']h)]uh+Nh,hh]r”��hw)År‘��}r’��(hU�h"}r÷��(h$]h%]h&]h']h)]uhj–��h]r◊��h|)Årÿ��}rŸ��(hU�h"}r⁄��(h']h&]h$]h%]h)]UcolsKuhj‘��h]r€��(hÅ)År‹��}r›��(hU�h"}rfi��(h']h&]h$]h%]h)]UcolwidthKuhjÿ��h]h hÖubhÅ)Årfl��}r‡��(hU�h"}r·��(h']h&]h$]h%]h)]UcolwidthK&uhjÿ��h]h hÖubhâ)År‚��}r„��(hU�h"}r‰��(h$]h%]h&]h']h)]uhjÿ��h]rÂ��hé)ÅrÊ��}rÁ��(hU�h"}rË��(h$]h%]h&]h']h)]uhj‚��h]rÈ��(hì)ÅrÍ��}rÎ��(hU�h"}rÏ��(h$]h%]h&]h']h)]uhjÊ��h]rÌ��h9)ÅrÓ��}rÔ��(hX���Elementr��hjÍ��hhh h=h"}rÒ��(h$]h%]h&]h']h)]uh+K,h]rÚ��h5X���ElementrÛ��ÖÅrÙ��}rı��(hj��hjÓ��ubaubah h†ubhì)Årˆ��}r˜��(hU�h"}r¯��(h$]h%]h&]h']h)]uhjÊ��h]r˘��h9)År˙��}r˚��(hX���Typer¸��hjˆ��hhh h=h"}r˝��(h$]h%]h&]h']h)]uh+K,h]r˛��h5X���Typerˇ��ÖÅr���}r��(hj¸��hj˙��ubaubah h†ubeh h≠ubah hÆubhØ)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhjÿ��h]r��(hé)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj��h]r ��(hì)År ��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj��h]r ��h9)År��}r��(hX���rightsHolderr��hj ��hhh h=h"}r��(h$]h%]h&]h']h)]uh+K.h]r��h5X���rightsHolderr��ÖÅr��}r��(hj��hj��ubaubah h†ubhì)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj��h]r��h9)År��}r��(hX���:class:`Types.Subject`r��hj��hhh h=h"}r��(h$]h%]h&]h']h)]uh+K.h]r��hÕ)År��}r ��(hj��hj��hhh h–h"}r!��(UreftypeX���classh“âh”X ���Types.SubjectU refdomainX���pyr"��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K/h]r#��h⁄)År$��}r%��(hj��h"}r&��(h$]h%]r'��(hflj"��X���py-classr(��eh&]h']h)]uhj��h]r)��h5X ���Types.Subjectr*��ÖÅr+��}r,��(hU�hj$��ubah hÂubaubaubah h†ubeh h≠ubhé)År-��}r.��(hU�h"}r/��(h$]h%]h&]h']h)]uhj��h]r0��(hì)År1��}r2��(hU�h"}r3��(h$]h%]h&]h']h)]uhj-��h]r4��h9)År5��}r6��(hX���accessPolicyr7��hj1��hhh h=h"}r8��(h$]h%]h&]h']h)]uh+K/h]r9��h5X���accessPolicyr:��ÖÅr;��}r<��(hj7��hj5��ubaubah h†ubhì)År=��}r>��(hU�h"}r?��(h$]h%]h&]h']h)]uhj-��h]r@��h9)ÅrA��}rB��(hX���:class:`Types.AccessPolicy`rC��hj=��hhh h=h"}rD��(h$]h%]h&]h']h)]uh+K/h]rE��hÕ)ÅrF��}rG��(hjC��hjA��hhh h–h"}rH��(UreftypeX���classh“âh”X���Types.AccessPolicyU refdomainX���pyrI��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K0h]rJ��h⁄)ÅrK��}rL��(hjC��h"}rM��(h$]h%]rN��(hfljI��X���py-classrO��eh&]h']h)]uhjF��h]rP��h5X���Types.AccessPolicyrQ��ÖÅrR��}rS��(hU�hjK��ubah hÂubaubaubah h†ubeh h≠ubhé)ÅrT��}rU��(hU�h"}rV��(h$]h%]h&]h']h)]uhj��h]rW��(hì)ÅrX��}rY��(hU�h"}rZ��(h$]h%]h&]h']h)]uhjT��h]r[��h9)År\��}r]��(hX���replicationPolicyr^��hjX��hhh h=h"}r_��(h$]h%]h&]h']h)]uh+K0h]r`��h5X���replicationPolicyra��ÖÅrb��}rc��(hj^��hj\��ubaubah h†ubhì)Ård��}re��(hU�h"}rf��(h$]h%]h&]h']h)]uhjT��h]rg��h9)Årh��}ri��(hX ���:class:`Types.ReplicationPolicy`rj��hjd��hhh h=h"}rk��(h$]h%]h&]h']h)]uh+K0h]rl��hÕ)Årm��}rn��(hjj��hjh��hhh h–h"}ro��(UreftypeX���classh“âh”X���Types.ReplicationPolicyU refdomainX���pyrp��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K1h]rq��h⁄)Årr��}rs��(hjj��h"}rt��(h$]h%]ru��(hfljp��X���py-classrv��eh&]h']h)]uhjm��h]rw��h5X���Types.ReplicationPolicyrx��ÖÅry��}rz��(hU�hjr��ubah hÂubaubaubah h†ubeh h≠ubhé)År{��}r|��(hU�h"}r}��(h$]h%]h&]h']h)]uhj��h]r~��(hì)År��}rÄ��(hU�h"}rÅ��(h$]h%]h&]h']h)]uhj{��h]rÇ��h9)ÅrÉ��}rÑ��(hX ���obsoletesrÖ��hj��hhh h=h"}rÜ��(h$]h%]h&]h']h)]uh+K1h]rá��h5X ���obsoletesrà��ÖÅrâ��}rä��(hjÖ��hjÉ��ubaubah h†ubhì)Årã��}rå��(hU�h"}rç��(h$]h%]h&]h']h)]uhj{��h]ré��h9)Årè��}rê��(hX���:class:`Types.Identifier`rë��hjã��hhh h=h"}rí��(h$]h%]h&]h']h)]uh+K1h]rì��hÕ)Årî��}rï��(hjë��hjè��hhh h–h"}rñ��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyró��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K2h]rò��h⁄)Årô��}rö��(hjë��h"}rõ��(h$]h%]rú��(hfljó��X���py-classrù��eh&]h']h)]uhjî��h]rû��h5X���Types.Identifierrü��ÖÅr†��}r°��(hU�hjô��ubah hÂubaubaubah h†ubeh h≠ubhé)År¢��}r£��(hU�h"}r§��(h$]h%]h&]h']h)]uhj��h]r•��(hì)År¶��}rß��(hU�h"}r®��(h$]h%]h&]h']h)]uhj¢��h]r©��h9)År™��}r´��(hX���obsoletedByr¨��hj¶��hhh h=h"}r≠��(h$]h%]h&]h']h)]uh+K2h]rÆ��h5X���obsoletedByrØ��ÖÅr∞��}r±��(hj¨��hj™��ubaubah h†ubhì)År≤��}r≥��(hU�h"}r¥��(h$]h%]h&]h']h)]uhj¢��h]rµ��h9)År∂��}r∑��(hX���:class:`Types.Identifier`r∏��hj≤��hhh h=h"}rπ��(h$]h%]h&]h']h)]uh+K2h]r∫��hÕ)Årª��}rº��(hj∏��hj∂��hhh h–h"}rΩ��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyræ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K3h]rø��h⁄)År¿��}r¡��(hj∏��h"}r¬��(h$]h%]r√��(hfljæ��X���py-classrƒ��eh&]h']h)]uhjª��h]r≈��h5X���Types.Identifierr∆��ÖÅr«��}r»��(hU�hj¿��ubah hÂubaubaubah h†ubeh h≠ubhé)År…��}r ��(hU�h"}rÀ��(h$]h%]h&]h']h)]uhj��h]rÃ��(hì)ÅrÕ��}rŒ��(hU�h"}rœ��(h$]h%]h&]h']h)]uhj…��h]r–��h9)År—��}r“��(hX���dateSysMetadataModified:r”��hjÕ��hhh h=h"}r‘��(h$]h%]h&]h']h)]uh+K3h]r’��h5X���dateSysMetadataModified:r÷��ÖÅr◊��}rÿ��(hj”��hj—��ubaubah h†ubhì)ÅrŸ��}r⁄��(hU�h"}r€��(h$]h%]h&]h']h)]uhj…��h]r‹��h9)År›��}rfi��(hX���:class:`Types.DateTime`rfl��hjŸ��hhh h=h"}r‡��(h$]h%]h&]h']h)]uh+K3h]r·��hÕ)År‚��}r„��(hjfl��hj›��hhh h–h"}r‰��(UreftypeX���classh“âh”X���Types.DateTimeU refdomainX���pyrÂ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K4h]rÊ��h⁄)ÅrÁ��}rË��(hjfl��h"}rÈ��(h$]h%]rÍ��(hfljÂ��X���py-classrÎ��eh&]h']h)]uhj‚��h]rÏ��h5X���Types.DateTimerÌ��ÖÅrÓ��}rÔ��(hU�hjÁ��ubah hÂubaubaubah h†ubeh h≠ubhé)År��}rÒ��(hU�h"}rÚ��(h$]h%]h&]h']h)]uhj��h]rÛ��(hì)ÅrÙ��}rı��(hU�h"}rˆ��(h$]h%]h&]h']h)]uhj��h]r˜��h9)År¯��}r˘��(hX���authoritativeMemberNode:r˙��hjÙ��hhh h=h"}r˚��(h$]h%]h&]h']h)]uh+K4h]r¸��h5X���authoritativeMemberNode:r˝��ÖÅr˛��}rˇ��(hj˙��hj¯��ubaubah h†ubhì)År���}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj��h]r��h9)År��}r��(hX���:class:`Types.NodeReference`r��hj���hhh h=h"}r��(h$]h%]h&]h']h)]uh+K4h]r��hÕ)År ��}r ��(hj��hj��hhh h–h"}r��(UreftypeX���classh“âh”X���Types.NodeReferenceU refdomainX���pyr��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K5h]r ��h⁄)År��}r��(hj��h"}r��(h$]h%]r��(hflj��X���py-classr��eh&]h']h)]uhj ��h]r��h5X���Types.NodeReferencer��ÖÅr��}r��(hU�hj��ubah hÂubaubaubah h†ubeh h≠ubhé)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj��h]r��(hì)År��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhj��h]r��h9)År��}r ��(hX���replicar!��hj��hhh h=h"}r"��(h$]h%]h&]h']h)]uh+K5h]r#��h5X���replicar$��ÖÅr%��}r&��(hj!��hj��ubaubah h†ubhì)År'��}r(��(hU�h"}r)��(h$]h%]h&]h']h)]uhj��h]r*��h9)År+��}r,��(hX���:class:`Types.Replica`r-��hj'��hhh h=h"}r.��(h$]h%]h&]h']h)]uh+K5h]r/��hÕ)År0��}r1��(hj-��hj+��hhh h–h"}r2��(UreftypeX���classh“âh”X ���Types.ReplicaU refdomainX���pyr3��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K6h]r4��h⁄)År5��}r6��(hj-��h"}r7��(h$]h%]r8��(hflj3��X���py-classr9��eh&]h']h)]uhj0��h]r:��h5X ���Types.Replicar;��ÖÅr<��}r=��(hU�hj5��ubah hÂubaubaubah h†ubeh h≠ubeh j≈��ubeh j∆��ubah j«��ubaubeubh)År>��}r?��(hU�hhhhh h!h"}r@��(h$]h%]h&]h']rA��hah)]rB��hauh+K;h,hh]rC��(h.)ÅrD��}rE��(hX���REST APIrF��hj>��hhh h2h"}rG��(h$]h%]h&]h']h)]uh+K;h,hh]rH��h5X���REST APIrI��ÖÅrJ��}rK��(hjF��hjD��ubaubhw)ÅrL��}rM��(hU�hj>��hNh j«��h"}rN��(h$]h%]h&]h']rO��Uid1rP��ah)]uh+Nh,hh]rQ��(h.)ÅrR��}rS��(hX ���Methods affecting SystemMetadatarT��h"}rU��(h$]h%]h&]h']h)]uhjL��h]rV��h5X ���Methods affecting SystemMetadatarW��ÖÅrX��}rY��(hjT��hjR��ubah h2ubh|)ÅrZ��}r[��(hU�h"}r\��(h']h&]h$]h%]h)]UcolsKuhjL��h]r]��(hÅ)År^��}r_��(hU�h"}r`��(h']h&]h$]h%]h)]UcolwidthKuhjZ��h]h hÖubhÅ)Åra��}rb��(hU�h"}rc��(h']h&]h$]h%]h)]UcolwidthK uhjZ��h]h hÖubhÅ)Ård��}re��(hU�h"}rf��(h']h&]h$]h%]h)]UcolwidthK uhjZ��h]h hÖubhÅ)Årg��}rh��(hU�h"}ri��(h']h&]h$]h%]h)]UcolwidthKuhjZ��h]h hÖubhâ)Årj��}rk��(hU�h"}rl��(h$]h%]h&]h']h)]uhjZ��h]rm��hé)Årn��}ro��(hU�h"}rp��(h$]h%]h&]h']h)]uhjj��h]rq��(hì)Årr��}rs��(hU�h"}rt��(h$]h%]h&]h']h)]uhjn��h]ru��h9)Årv��}rw��(hX���Tierrx��hjr��hhh h=h"}ry��(h$]h%]h&]h']h)]uh+KAh]rz��h5X���Tierr{��ÖÅr|��}r}��(hjx��hjv��ubaubah h†ubhì)År~��}r��(hU�h"}rÄ��(h$]h%]h&]h']h)]uhjn��h]rÅ��h9)ÅrÇ��}rÉ��(hX���RESTrÑ��hj~��hhh h=h"}rÖ��(h$]h%]h&]h']h)]uh+KBh]rÜ��h5X���RESTrá��ÖÅrà��}râ��(hjÑ��hjÇ��ubaubah h†ubhì)Årä��}rã��(hU�h"}rå��(h$]h%]h&]h']h)]uhjn��h]rç��h9)Åré��}rè��(hX���Functionrê��hjä��hhh h=h"}rë��(h$]h%]h&]h']h)]uh+KCh]rí��h5X���Functionrì��ÖÅrî��}rï��(hjê��hjé��ubaubah h†ubhì)Årñ��}ró��(hU�h"}rò��(h$]h%]h&]h']h)]uhjn��h]rô��h9)Årö��}rõ��(hX ���Parametersrú��hjñ��hhh h=h"}rù��(h$]h%]h&]h']h)]uh+KDh]rû��h5X ���Parametersrü��ÖÅr†��}r°��(hjú��hjö��ubaubah h†ubeh h≠ubah hÆubhØ)År¢��}r£��(hU�h"}r§��(h$]h%]h&]h']h)]uhjZ��h]r•��(hé)År¶��}rß��(hU�h"}r®��(h$]h%]h&]h']h)]uhj¢��h]r©��(hì)År™��}r´��(hU�h"}r¨��(h$]h%]h&]h']h)]uhj¶��h]r≠��h9)ÅrÆ��}rØ��(hX���Tier 1r∞��hj™��hhh h=h"}r±��(h$]h%]h&]h']h)]uh+KEh]r≤��h5X���Tier 1r≥��ÖÅr¥��}rµ��(hj∞��hjÆ��ubaubah h†ubhì)År∂��}r∑��(hU�h"}r∏��(h$]h%]h&]h']h)]uhj¶��h]rπ��h9)År∫��}rª��(hX���``PUT /meta/{pid}``rº��hj∂��hhh h=h"}rΩ��(h$]h%]h&]h']h)]uh+KFh]ræ��h⁄)Årø��}r¿��(hjº��h"}r¡��(h$]h%]h&]h']h)]uhj∫��h]r¬��h5X���PUT /meta/{pid}r√��ÖÅrƒ��}r≈��(hU�hjø��ubah hÂubaubah h†ubhì)År∆��}r«��(hU�h"}r»��(h$]h%]h&]h']h)]uhj¶��h]r…��h9)År ��}rÀ��(hX#���:func:`CNCore.updateSystemMetadata`rÃ��hj∆��hhh h=h"}rÕ��(h$]h%]h&]h']h)]uh+KGh]rŒ��hÕ)Årœ��}r–��(hjÃ��hj ��hhh h–h"}r—��(UreftypeX���funch“âh”X���CNCore.updateSystemMetadataU refdomainX���pyr“��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KGh]r”��h⁄)År‘��}r’��(hjÃ��h"}r÷��(h$]h%]r◊��(hflj“��X���py-funcrÿ��eh&]h']h)]uhjœ��h]rŸ��h5X���CNCore.updateSystemMetadata()r⁄��ÖÅr€��}r‹��(hU�hj‘��ubah hÂubaubaubah h†ubhì)År›��}rfi��(hU�h"}rfl��(h$]h%]h&]h']h)]uhj¶��h]r‡��h9)År·��}r‚��(hXx���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`sysmeta<Types.SystemMetadata>`) ``->`` booleanr„��hj›��hhh h=h"}r‰��(h$]h%]h&]h']h)]uh+KHh]rÂ��(h5X���(ÖÅrÊ��}rÁ��(hX���(hj·��ubhÕ)ÅrË��}rÈ��(hX���:class:`session<Types.Session>`rÍ��hj·��hhh h–h"}rÎ��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyrÏ��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KHh]rÌ��h⁄)ÅrÓ��}rÔ��(hjÍ��h"}r��(h$]h%]rÒ��(hfljÏ��X���py-classrÚ��eh&]h']h)]uhjË��h]rÛ��h5X���sessionrÙ��ÖÅrı��}rˆ��(hU�hjÓ��ubah hÂubaubh5X���, r˜��ÖÅr¯��}r˘��(hX���, hj·��ubhÕ)År˙��}r˚��(hX���:class:`pid<Types.Identifier>`r¸��hj·��hhh h–h"}r˝��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr˛��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KHh]rˇ��h⁄)År���}r��(hj¸��h"}r��(h$]h%]r��(hflj˛��X���py-classr��eh&]h']h)]uhj˙��h]r��h5X���pidr��ÖÅr��}r��(hU�hj���ubah hÂubaubh5X���, r ��ÖÅr ��}r��(hX���, hj·��ubhÕ)År��}r ��(hX&���:class:`sysmeta<Types.SystemMetadata>`r��hj·��hhh h–h"}r��(UreftypeX���classh“âh”X���Types.SystemMetadataU refdomainX���pyr��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KHh]r��h⁄)År��}r��(hj��h"}r��(h$]h%]r��(hflj��X���py-classr��eh&]h']h)]uhj��h]r��h5X���sysmetar��ÖÅr��}r��(hU�hj��ubah hÂubaubh5X���) r��ÖÅr��}r��(hX���) hj·��ubh⁄)År��}r��(hX���``->``h"}r ��(h$]h%]h&]h']h)]uhj·��h]r!��h5X���->r"��ÖÅr#��}r$��(hU�hj��ubah hÂubh5X��� booleanr%��ÖÅr&��}r'��(hX��� booleanhj·��ubeubah h†ubeh h≠ubhé)År(��}r)��(hU�h"}r*��(h$]h%]h&]h']h)]uhj¢��h]r+��(hì)År,��}r-��(hU�h"}r.��(h$]h%]h&]h']h)]uhj(��h]r/��h9)År0��}r1��(hX���Tier 2r2��hj,��hhh h=h"}r3��(h$]h%]h&]h']h)]uh+KIh]r4��h5X���Tier 2r5��ÖÅr6��}r7��(hj2��hj0��ubaubah h†ubhì)År8��}r9��(hU�h"}r:��(h$]h%]h&]h']h)]uhj(��h]r;��h9)År<��}r=��(hX���``PUT /owner/{pid}``r>��hj8��hhh h=h"}r?��(h$]h%]h&]h']h)]uh+KJh]r@��h⁄)ÅrA��}rB��(hj>��h"}rC��(h$]h%]h&]h']h)]uhj<��h]rD��h5X���PUT /owner/{pid}rE��ÖÅrF��}rG��(hU�hjA��ubah hÂubaubah h†ubhì)ÅrH��}rI��(hU�h"}rJ��(h$]h%]h&]h']h)]uhj(��h]rK��h9)ÅrL��}rM��(hX ���:func:`CNAuthorization.setOwner`rN��hjH��hhh h=h"}rO��(h$]h%]h&]h']h)]uh+KKh]rP��hÕ)ÅrQ��}rR��(hjN��hjL��hhh h–h"}rS��(UreftypeX���funch“âh”X���CNAuthorization.setOwnerU refdomainX���pyrT��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KKh]rU��h⁄)ÅrV��}rW��(hjN��h"}rX��(h$]h%]rY��(hfljT��X���py-funcrZ��eh&]h']h)]uhjQ��h]r[��h5X���CNAuthorization.setOwner()r\��ÖÅr]��}r^��(hU�hjV��ubah hÂubaubaubah h†ubhì)År_��}r`��(hU�h"}ra��(h$]h%]h&]h']h)]uhj(��h]rb��h9)Årc��}rd��(hXÇ���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`userId<Types.Subject>`) ``->`` :class:`Types.Identifier`re��hj_��hhh h=h"}rf��(h$]h%]h&]h']h)]uh+KLh]rg��(h5X���(ÖÅrh��}ri��(hX���(hjc��ubhÕ)Årj��}rk��(hX���:class:`session<Types.Session>`rl��hjc��hhh h–h"}rm��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyrn��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KLh]ro��h⁄)Årp��}rq��(hjl��h"}rr��(h$]h%]rs��(hfljn��X���py-classrt��eh&]h']h)]uhjj��h]ru��h5X���sessionrv��ÖÅrw��}rx��(hU�hjp��ubah hÂubaubh5X���, ry��ÖÅrz��}r{��(hX���, hjc��ubhÕ)År|��}r}��(hX���:class:`pid<Types.Identifier>`r~��hjc��hhh h–h"}r��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyrÄ��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KLh]rÅ��h⁄)ÅrÇ��}rÉ��(hj~��h"}rÑ��(h$]h%]rÖ��(hfljÄ��X���py-classrÜ��eh&]h']h)]uhj|��h]rá��h5X���pidrà��ÖÅrâ��}rä��(hU�hjÇ��ubah hÂubaubh5X���, rã��ÖÅrå��}rç��(hX���, hjc��ubhÕ)Åré��}rè��(hX���:class:`userId<Types.Subject>`rê��hjc��hhh h–h"}rë��(UreftypeX���classh“âh”X ���Types.SubjectU refdomainX���pyrí��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KLh]rì��h⁄)Årî��}rï��(hjê��h"}rñ��(h$]h%]ró��(hfljí��X���py-classrò��eh&]h']h)]uhjé��h]rô��h5X���userIdrö��ÖÅrõ��}rú��(hU�hjî��ubah hÂubaubh5X���) rù��ÖÅrû��}rü��(hX���) hjc��ubh⁄)År†��}r°��(hX���``->``h"}r¢��(h$]h%]h&]h']h)]uhjc��h]r£��h5X���->r§��ÖÅr•��}r¶��(hU�hj†��ubah hÂubh5X��� ÖÅrß��}r®��(hX��� hjc��ubhÕ)År©��}r™��(hX���:class:`Types.Identifier`r´��hjc��hhh h–h"}r¨��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr≠��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KLh]rÆ��h⁄)ÅrØ��}r∞��(hj´��h"}r±��(h$]h%]r≤��(hflj≠��X���py-classr≥��eh&]h']h)]uhj©��h]r¥��h5X���Types.Identifierrµ��ÖÅr∂��}r∑��(hU�hjØ��ubah hÂubaubeubah h†ubeh h≠ubhé)År∏��}rπ��(hU�h"}r∫��(h$]h%]h&]h']h)]uhj¢��h]rª��(hì)Årº��}rΩ��(hU�h"}ræ��(h$]h%]h&]h']h)]uhj∏��h]rø��h9)År¿��}r¡��(hX���Tier 2r¬��hjº��hhh h=h"}r√��(h$]h%]h&]h']h)]uh+KMh]rƒ��h5X���Tier 2r≈��ÖÅr∆��}r«��(hj¬��hj¿��ubaubah h†ubhì)År»��}r…��(hU�h"}r ��(h$]h%]h&]h']h)]uhj∏��h]rÀ��h9)ÅrÃ��}rÕ��(hX���``PUT /accessRules/{pid}``rŒ��hj»��hhh h=h"}rœ��(h$]h%]h&]h']h)]uh+KNh]r–��h⁄)År—��}r“��(hjŒ��h"}r”��(h$]h%]h&]h']h)]uhjÃ��h]r‘��h5X���PUT /accessRules/{pid}r’��ÖÅr÷��}r◊��(hU�hj—��ubah hÂubaubah h†ubhì)Årÿ��}rŸ��(hU�h"}r⁄��(h$]h%]h&]h']h)]uhj∏��h]r€��h9)År‹��}r›��(hX'���:func:`CNAuthorization.setAccessPolicy`rfi��hjÿ��hhh h=h"}rfl��(h$]h%]h&]h']h)]uh+KOh]r‡��hÕ)År·��}r‚��(hjfi��hj‹��hhh h–h"}r„��(UreftypeX���funch“âh”X���CNAuthorization.setAccessPolicyU refdomainX���pyr‰��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KOh]rÂ��h⁄)ÅrÊ��}rÁ��(hjfi��h"}rË��(h$]h%]rÈ��(hflj‰��X���py-funcrÍ��eh&]h']h)]uhj·��h]rÎ��h5X!���CNAuthorization.setAccessPolicy()rÏ��ÖÅrÌ��}rÓ��(hU�hjÊ��ubah hÂubaubaubah h†ubhì)ÅrÔ��}r��(hU�h"}rÒ��(h$]h%]h&]h']h)]uhj∏��h]rÚ��h9)ÅrÛ��}rÙ��(hX{���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`accessPolicy<Types.AccessPolicy>`) ``->`` booleanrı��hjÔ��hhh h=h"}rˆ��(h$]h%]h&]h']h)]uh+KPh]r˜��(h5X���(ÖÅr¯��}r˘��(hX���(hjÛ��ubhÕ)År˙��}r˚��(hX���:class:`session<Types.Session>`r¸��hjÛ��hhh h–h"}r˝��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyr˛��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KPh]rˇ��h⁄)År���}r��(hj¸��h"}r��(h$]h%]r��(hflj˛��X���py-classr��eh&]h']h)]uhj˙��h]r��h5X���sessionr��ÖÅr��}r��(hU�hj���ubah hÂubaubh5X���, r ��ÖÅr ��}r��(hX���, hjÛ��ubhÕ)År��}r ��(hX���:class:`pid<Types.Identifier>`r��hjÛ��hhh h–h"}r��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KPh]r��h⁄)År��}r��(hj��h"}r��(h$]h%]r��(hflj��X���py-classr��eh&]h']h)]uhj��h]r��h5X���pidr��ÖÅr��}r��(hU�hj��ubah hÂubaubh5X���, r��ÖÅr��}r��(hX���, hjÛ��ubhÕ)År��}r��(hX)���:class:`accessPolicy<Types.AccessPolicy>`r ��hjÛ��hhh h–h"}r!��(UreftypeX���classh“âh”X���Types.AccessPolicyU refdomainX���pyr"��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KPh]r#��h⁄)År$��}r%��(hj ��h"}r&��(h$]h%]r'��(hflj"��X���py-classr(��eh&]h']h)]uhj��h]r)��h5X���accessPolicyr*��ÖÅr+��}r,��(hU�hj$��ubah hÂubaubh5X���) r-��ÖÅr.��}r/��(hX���) hjÛ��ubh⁄)År0��}r1��(hX���``->``h"}r2��(h$]h%]h&]h']h)]uhjÛ��h]r3��h5X���->r4��ÖÅr5��}r6��(hU�hj0��ubah hÂubh5X��� booleanr7��ÖÅr8��}r9��(hX��� booleanhjÛ��ubeubah h†ubeh h≠ubhé)År:��}r;��(hU�h"}r<��(h$]h%]h&]h']h)]uhj¢��h]r=��(hì)År>��}r?��(hU�h"}r@��(h$]h%]h&]h']h)]uhj:��h]rA��h9)ÅrB��}rC��(hX���Tier 2rD��hj>��hhh h=h"}rE��(h$]h%]h&]h']h)]uh+KQh]rF��h5X���Tier 2rG��ÖÅrH��}rI��(hjD��hjB��ubaubah h†ubhì)ÅrJ��}rK��(hU�h"}rL��(h$]h%]h&]h']h)]uhj:��h]rM��h9)ÅrN��}rO��(hX���``PUT /accessRules/{pid}``rP��hjJ��hhh h=h"}rQ��(h$]h%]h&]h']h)]uh+KRh]rR��h⁄)ÅrS��}rT��(hjP��h"}rU��(h$]h%]h&]h']h)]uhjN��h]rV��h5X���PUT /accessRules/{pid}rW��ÖÅrX��}rY��(hU�hjS��ubah hÂubaubah h†ubhì)ÅrZ��}r[��(hU�h"}r\��(h$]h%]h&]h']h)]uhj:��h]r]��h9)År^��}r_��(hX'���:func:`MNAuthorization.setAccessPolicy`r`��hjZ��hhh h=h"}ra��(h$]h%]h&]h']h)]uh+KSh]rb��hÕ)Årc��}rd��(hj`��hj^��hhh h–h"}re��(UreftypeX���funch“âh”X���MNAuthorization.setAccessPolicyU refdomainX���pyrf��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KSh]rg��h⁄)Årh��}ri��(hj`��h"}rj��(h$]h%]rk��(hfljf��X���py-funcrl��eh&]h']h)]uhjc��h]rm��h5X!���MNAuthorization.setAccessPolicy()rn��ÖÅro��}rp��(hU�hjh��ubah hÂubaubaubah h†ubhì)Årq��}rr��(hU�h"}rs��(h$]h%]h&]h']h)]uhj:��h]rt��h9)Åru��}rv��(hX{���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`accessPolicy<Types.AccessPolicy>`) ``->`` booleanrw��hjq��hhh h=h"}rx��(h$]h%]h&]h']h)]uh+KTh]ry��(h5X���(ÖÅrz��}r{��(hX���(hju��ubhÕ)År|��}r}��(hX���:class:`session<Types.Session>`r~��hju��hhh h–h"}r��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyrÄ��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KTh]rÅ��h⁄)ÅrÇ��}rÉ��(hj~��h"}rÑ��(h$]h%]rÖ��(hfljÄ��X���py-classrÜ��eh&]h']h)]uhj|��h]rá��h5X���sessionrà��ÖÅrâ��}rä��(hU�hjÇ��ubah hÂubaubh5X���, rã��ÖÅrå��}rç��(hX���, hju��ubhÕ)Åré��}rè��(hX���:class:`pid<Types.Identifier>`rê��hju��hhh h–h"}rë��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyrí��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KTh]rì��h⁄)Årî��}rï��(hjê��h"}rñ��(h$]h%]ró��(hfljí��X���py-classrò��eh&]h']h)]uhjé��h]rô��h5X���pidrö��ÖÅrõ��}rú��(hU�hjî��ubah hÂubaubh5X���, rù��ÖÅrû��}rü��(hX���, hju��ubhÕ)År†��}r°��(hX)���:class:`accessPolicy<Types.AccessPolicy>`r¢��hju��hhh h–h"}r£��(UreftypeX���classh“âh”X���Types.AccessPolicyU refdomainX���pyr§��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KTh]r•��h⁄)År¶��}rß��(hj¢��h"}r®��(h$]h%]r©��(hflj§��X���py-classr™��eh&]h']h)]uhj†��h]r´��h5X���accessPolicyr¨��ÖÅr≠��}rÆ��(hU�hj¶��ubah hÂubaubh5X���) rØ��ÖÅr∞��}r±��(hX���) hju��ubh⁄)År≤��}r≥��(hX���``->``h"}r¥��(h$]h%]h&]h']h)]uhju��h]rµ��h5X���->r∂��ÖÅr∑��}r∏��(hU�hj≤��ubah hÂubh5X��� booleanrπ��ÖÅr∫��}rª��(hX��� booleanhju��ubeubah h†ubeh h≠ubhé)Årº��}rΩ��(hU�h"}ræ��(h$]h%]h&]h']h)]uhj¢��h]rø��(hì)År¿��}r¡��(hU�h"}r¬��(h$]h%]h&]h']h)]uhjº��h]r√��h9)Årƒ��}r≈��(hX���Tier 3r∆��hj¿��hhh h=h"}r«��(h$]h%]h&]h']h)]uh+KUh]r»��h5X���Tier 3r…��ÖÅr ��}rÀ��(hj∆��hjƒ��ubaubah h†ubhì)ÅrÃ��}rÕ��(hU�h"}rŒ��(h$]h%]h&]h']h)]uhjº��h]rœ��h9)År–��}r—��(hX���``PUT /object/{pid}``r“��hjÃ��hhh h=h"}r”��(h$]h%]h&]h']h)]uh+KVh]r‘��h⁄)År’��}r÷��(hj“��h"}r◊��(h$]h%]h&]h']h)]uhj–��h]rÿ��h5X���PUT /object/{pid}rŸ��ÖÅr⁄��}r€��(hU�hj’��ubah hÂubaubah h†ubhì)År‹��}r›��(hU�h"}rfi��(h$]h%]h&]h']h)]uhjº��h]rfl��h9)År‡��}r·��(hX���:func:`MNStorage.update`r‚��hj‹��hhh h=h"}r„��(h$]h%]h&]h']h)]uh+KWh]r‰��hÕ)ÅrÂ��}rÊ��(hj‚��hj‡��hhh h–h"}rÁ��(UreftypeX���funch“âh”X���MNStorage.updateU refdomainX���pyrË��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KWh]rÈ��h⁄)ÅrÍ��}rÎ��(hj‚��h"}rÏ��(h$]h%]rÌ��(hfljË��X���py-funcrÓ��eh&]h']h)]uhjÂ��h]rÔ��h5X���MNStorage.update()r��ÖÅrÒ��}rÚ��(hU�hjÍ��ubah hÂubaubaubah h†ubhì)ÅrÛ��}rÙ��(hU�h"}rı��(h$]h%]h&]h']h)]uhjº��h]rˆ��h9)År˜��}r¯��(hXπ���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, ``object``, :class:`newPid<Types.Identifier>`, :class:`sysmeta<Types.SystemMetadata>`) ``->`` :class:`Types.Identifier`r˘��hjÛ��hhh h=h"}r˙��(h$]h%]h&]h']h)]uh+KXh]r˚��(h5X���(ÖÅr¸��}r˝��(hX���(hj˜��ubhÕ)År˛��}rˇ��(hX���:class:`session<Types.Session>`r���hj˜��hhh h–h"}r��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyr��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KXh]r��h⁄)År��}r��(hj���h"}r��(h$]h%]r��(hflj��X���py-classr��eh&]h']h)]uhj˛��h]r ��h5X���sessionr ��ÖÅr��}r��(hU�hj��ubah hÂubaubh5X���, r ��ÖÅr��}r��(hX���, hj˜��ubhÕ)År��}r��(hX���:class:`pid<Types.Identifier>`r��hj˜��hhh h–h"}r��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KXh]r��h⁄)År��}r��(hj��h"}r��(h$]h%]r��(hflj��X���py-classr��eh&]h']h)]uhj��h]r��h5X���pidr��ÖÅr��}r��(hU�hj��ubah hÂubaubh5X���, r��ÖÅr ��}r!��(hX���, hj˜��ubh⁄)År"��}r#��(hX ���``object``h"}r$��(h$]h%]h&]h']h)]uhj˜��h]r%��h5X���objectr&��ÖÅr'��}r(��(hU�hj"��ubah hÂubh5X���, r)��ÖÅr*��}r+��(hX���, hj˜��ubhÕ)År,��}r-��(hX!���:class:`newPid<Types.Identifier>`r.��hj˜��hhh h–h"}r/��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr0��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KXh]r1��h⁄)År2��}r3��(hj.��h"}r4��(h$]h%]r5��(hflj0��X���py-classr6��eh&]h']h)]uhj,��h]r7��h5X���newPidr8��ÖÅr9��}r:��(hU�hj2��ubah hÂubaubh5X���, r;��ÖÅr<��}r=��(hX���, hj˜��ubhÕ)År>��}r?��(hX&���:class:`sysmeta<Types.SystemMetadata>`r@��hj˜��hhh h–h"}rA��(UreftypeX���classh“âh”X���Types.SystemMetadataU refdomainX���pyrB��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+KXh]rC��h⁄)ÅrD��}rE��(hj@��h"}rF��(h$]h%]rG��(hfljB��X���py-classrH��eh&]h']h)]uhj>��h]rI��h5X���sysmetarJ��ÖÅrK��}rL��(hU�hjD��ubah hÂubaubh5X���) rM��ÖÅrN��}rO��(hX���) hj˜��ubh⁄)ÅrP��}rQ��(hX���``->``h"}rR��(h$]h%]h&]h']h)]uhj˜��h]rS��h5X���->rT��ÖÅrU��}rV��(hU�hjP��ubah hÂubh5X��� ÖÅrW��}rX��(hX��� hj˜��ubhÕ)ÅrY��}rZ��(hX���:class:`Types.Identifier`r[��hj˜��hhh h–h"}r\��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr]��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KXh]r^��h⁄)År_��}r`��(hj[��h"}ra��(h$]h%]rb��(hflj]��X���py-classrc��eh&]h']h)]uhjY��h]rd��h5X���Types.Identifierre��ÖÅrf��}rg��(hU�hj_��ubah hÂubaubeubah h†ubeh h≠ubhé)Årh��}ri��(hU�h"}rj��(h$]h%]h&]h']h)]uhj¢��h]rk��(hì)Årl��}rm��(hU�h"}rn��(h$]h%]h&]h']h)]uhjh��h]ro��h9)Årp��}rq��(hX���Tier 4rr��hjl��hhh h=h"}rs��(h$]h%]h&]h']h)]uh+KYh]rt��h5X���Tier 4ru��ÖÅrv��}rw��(hjr��hjp��ubaubah h†ubhì)Årx��}ry��(hU�h"}rz��(h$]h%]h&]h']h)]uhjh��h]r{��h9)År|��}r}��(hX���``POST /notify``r~��hjx��hhh h=h"}r��(h$]h%]h&]h']h)]uh+KZh]rÄ��h⁄)ÅrÅ��}rÇ��(hj~��h"}rÉ��(h$]h%]h&]h']h)]uhj|��h]rÑ��h5X���POST /notifyrÖ��ÖÅrÜ��}rá��(hU�hjÅ��ubah hÂubaubah h†ubhì)Årà��}râ��(hU�h"}rä��(h$]h%]h&]h']h)]uhjh��h]rã��h9)Årå��}rç��(hX*���:func:`CNReplication.setReplicationStatus`ré��hjà��hhh h=h"}rè��(h$]h%]h&]h']h)]uh+K[h]rê��hÕ)Årë��}rí��(hjé��hjå��hhh h–h"}rì��(UreftypeX���funch“âh”X"���CNReplication.setReplicationStatusU refdomainX���pyrî��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K[h]rï��h⁄)Årñ��}ró��(hjé��h"}rò��(h$]h%]rô��(hfljî��X���py-funcrö��eh&]h']h)]uhjë��h]rõ��h5X$���CNReplication.setReplicationStatus()rú��ÖÅrù��}rû��(hU�hjñ��ubah hÂubaubaubah h†ubhì)Årü��}r†��(hU�h"}r°��(h$]h%]h&]h']h)]uhjh��h]r¢��h9)År£��}r§��(hXz���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`status<Types.ReplicationStatus>`) ``->`` booleanr•��hjü��hhh h=h"}r¶��(h$]h%]h&]h']h)]uh+K\h]rß��(h5X���(ÖÅr®��}r©��(hX���(hj£��ubhÕ)År™��}r´��(hX���:class:`session<Types.Session>`r¨��hj£��hhh h–h"}r≠��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyrÆ��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+K\h]rØ��h⁄)År∞��}r±��(hj¨��h"}r≤��(h$]h%]r≥��(hfljÆ��X���py-classr¥��eh&]h']h)]uhj™��h]rµ��h5X���sessionr∂��ÖÅr∑��}r∏��(hU�hj∞��ubah hÂubaubh5X���, rπ��ÖÅr∫��}rª��(hX���, hj£��ubhÕ)Årº��}rΩ��(hX���:class:`pid<Types.Identifier>`ræ��hj£��hhh h–h"}rø��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr¿��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+K\h]r¡��h⁄)År¬��}r√��(hjæ��h"}rƒ��(h$]h%]r≈��(hflj¿��X���py-classr∆��eh&]h']h)]uhjº��h]r«��h5X���pidr»��ÖÅr…��}r ��(hU�hj¬��ubah hÂubaubh5X���, rÀ��ÖÅrÃ��}rÕ��(hX���, hj£��ubhÕ)ÅrŒ��}rœ��(hX(���:class:`status<Types.ReplicationStatus>`r–��hj£��hhh h–h"}r—��(UreftypeX���classh“âh”X���Types.ReplicationStatusU refdomainX���pyr“��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+K\h]r”��h⁄)År‘��}r’��(hj–��h"}r÷��(h$]h%]r◊��(hflj“��X���py-classrÿ��eh&]h']h)]uhjŒ��h]rŸ��h5X���statusr⁄��ÖÅr€��}r‹��(hU�hj‘��ubah hÂubaubh5X���) r›��ÖÅrfi��}rfl��(hX���) hj£��ubh⁄)År‡��}r·��(hX���``->``h"}r‚��(h$]h%]h&]h']h)]uhj£��h]r„��h5X���->r‰��ÖÅrÂ��}rÊ��(hU�hj‡��ubah hÂubh5X��� booleanrÁ��ÖÅrË��}rÈ��(hX��� booleanhj£��ubeubah h†ubeh h≠ubhé)ÅrÍ��}rÎ��(hU�h"}rÏ��(h$]h%]h&]h']h)]uhj¢��h]rÌ��(hì)ÅrÓ��}rÔ��(hU�h"}r��(h$]h%]h&]h']h)]uhjÍ��h]rÒ��h9)ÅrÚ��}rÛ��(hX���Tier 4rÙ��hjÓ��hhh h=h"}rı��(h$]h%]h&]h']h)]uh+K]h]rˆ��h5X���Tier 4r˜��ÖÅr¯��}r˘��(hjÙ��hjÚ��ubaubah h†ubhì)År˙��}r˚��(hU�h"}r¸��(h$]h%]h&]h']h)]uhjÍ��h]r˝��h9)År˛��}rˇ��(hX���``PUT /meta/replication/{pid}``r���hj˙��hhh h=h"}r��(h$]h%]h&]h']h)]uh+K^h]r��h⁄)År��}r��(hj���h"}r��(h$]h%]h&]h']h)]uhj˛��h]r��h5X���PUT /meta/replication/{pid}r��ÖÅr��}r ��(hU�hj��ubah hÂubaubah h†ubhì)År ��}r��(hU�h"}r��(h$]h%]h&]h']h)]uhjÍ��h]r ��h9)År��}r��(hX/���:func:`CNReplication.updateReplicationMetadata`r��hj ��hhh h=h"}r��(h$]h%]h&]h']h)]uh+K_h]r��hÕ)År��}r��(hj��hj��hhh h–h"}r��(UreftypeX���funch“âh”X'���CNReplication.updateReplicationMetadataU refdomainX���pyr��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K_h]r��h⁄)År��}r��(hj��h"}r��(h$]h%]r��(hflj��X���py-funcr��eh&]h']h)]uhj��h]r��h5X)���CNReplication.updateReplicationMetadata()r��ÖÅr��}r ��(hU�hj��ubah hÂubaubaubah h†ubhì)År!��}r"��(hU�h"}r#��(h$]h%]h&]h']h)]uhjÍ��h]r$��h9)År%��}r&��(hXy���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`replicaMetadata<Types.Replica>`) ``->`` booleanr'��hj!��hhh h=h"}r(��(h$]h%]h&]h']h)]uh+K`h]r)��(h5X���(ÖÅr*��}r+��(hX���(hj%��ubhÕ)År,��}r-��(hX���:class:`session<Types.Session>`r.��hj%��hhh h–h"}r/��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyr0��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+K`h]r1��h⁄)År2��}r3��(hj.��h"}r4��(h$]h%]r5��(hflj0��X���py-classr6��eh&]h']h)]uhj,��h]r7��h5X���sessionr8��ÖÅr9��}r:��(hU�hj2��ubah hÂubaubh5X���, r;��ÖÅr<��}r=��(hX���, hj%��ubhÕ)År>��}r?��(hX���:class:`pid<Types.Identifier>`r@��hj%��hhh h–h"}rA��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyrB��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+K`h]rC��h⁄)ÅrD��}rE��(hj@��h"}rF��(h$]h%]rG��(hfljB��X���py-classrH��eh&]h']h)]uhj>��h]rI��h5X���pidrJ��ÖÅrK��}rL��(hU�hjD��ubah hÂubaubh5X���, rM��ÖÅrN��}rO��(hX���, hj%��ubhÕ)ÅrP��}rQ��(hX'���:class:`replicaMetadata<Types.Replica>`rR��hj%��hhh h–h"}rS��(UreftypeX���classh“âh”X ���Types.ReplicaU refdomainX���pyrT��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+K`h]rU��h⁄)ÅrV��}rW��(hjR��h"}rX��(h$]h%]rY��(hfljT��X���py-classrZ��eh&]h']h)]uhjP��h]r[��h5X���replicaMetadatar\��ÖÅr]��}r^��(hU�hjV��ubah hÂubaubh5X���) r_��ÖÅr`��}ra��(hX���) hj%��ubh⁄)Årb��}rc��(hX���``->``h"}rd��(h$]h%]h&]h']h)]uhj%��h]re��h5X���->rf��ÖÅrg��}rh��(hU�hjb��ubah hÂubh5X��� booleanri��ÖÅrj��}rk��(hX��� booleanhj%��ubeubah h†ubeh h≠ubhé)Årl��}rm��(hU�h"}rn��(h$]h%]h&]h']h)]uhj¢��h]ro��(hì)Årp��}rq��(hU�h"}rr��(h$]h%]h&]h']h)]uhjl��h]rs��h9)Årt��}ru��(hX���Tier 4rv��hjp��hhh h=h"}rw��(h$]h%]h&]h']h)]uh+Kah]rx��h5X���Tier 4ry��ÖÅrz��}r{��(hjv��hjt��ubaubah h†ubhì)År|��}r}��(hU�h"}r~��(h$]h%]h&]h']h)]uhjl��h]r��h9)ÅrÄ��}rÅ��(hX���``PUT /meta/policy/{pid}``rÇ��hj|��hhh h=h"}rÉ��(h$]h%]h&]h']h)]uh+Kbh]rÑ��h⁄)ÅrÖ��}rÜ��(hjÇ��h"}rá��(h$]h%]h&]h']h)]uhjÄ��h]rà��h5X���PUT /meta/policy/{pid}râ��ÖÅrä��}rã��(hU�hjÖ��ubah hÂubaubah h†ubhì)Årå��}rç��(hU�h"}ré��(h$]h%]h&]h']h)]uhjl��h]rè��h9)Årê��}rë��(hX*���:func:`CNReplication.setReplicationPolicy`rí��hjå��hhh h=h"}rì��(h$]h%]h&]h']h)]uh+Kch]rî��hÕ)Årï��}rñ��(hjí��hjê��hhh h–h"}ró��(UreftypeX���funch“âh”X"���CNReplication.setReplicationPolicyU refdomainX���pyrò��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kch]rô��h⁄)Årö��}rõ��(hjí��h"}rú��(h$]h%]rù��(hfljò��X���py-funcrû��eh&]h']h)]uhjï��h]rü��h5X$���CNReplication.setReplicationPolicy()r†��ÖÅr°��}r¢��(hU�hjö��ubah hÂubaubaubah h†ubhì)År£��}r§��(hU�h"}r•��(h$]h%]h&]h']h)]uhjl��h]r¶��h9)Årß��}r®��(hXz���(:class:`session<Types.Session>`, :class:`pid<Types.Identifier>`, :class:`policy<Types.ReplicationPolicy>`) ``->`` booleanr©��hj£��hhh h=h"}r™��(h$]h%]h&]h']h)]uh+Kdh]r´��(h5X���(ÖÅr¨��}r≠��(hX���(hjß��ubhÕ)ÅrÆ��}rØ��(hX���:class:`session<Types.Session>`r∞��hjß��hhh h–h"}r±��(UreftypeX���classh“âh”X ���Types.SessionU refdomainX���pyr≤��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+Kdh]r≥��h⁄)År¥��}rµ��(hj∞��h"}r∂��(h$]h%]r∑��(hflj≤��X���py-classr∏��eh&]h']h)]uhjÆ��h]rπ��h5X���sessionr∫��ÖÅrª��}rº��(hU�hj¥��ubah hÂubaubh5X���, rΩ��ÖÅræ��}rø��(hX���, hjß��ubhÕ)År¿��}r¡��(hX���:class:`pid<Types.Identifier>`r¬��hjß��hhh h–h"}r√��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyrƒ��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+Kdh]r≈��h⁄)År∆��}r«��(hj¬��h"}r»��(h$]h%]r…��(hfljƒ��X���py-classr ��eh&]h']h)]uhj¿��h]rÀ��h5X���pidrÃ��ÖÅrÕ��}rŒ��(hU�hj∆��ubah hÂubaubh5X���, rœ��ÖÅr–��}r—��(hX���, hjß��ubhÕ)År“��}r”��(hX(���:class:`policy<Types.ReplicationPolicy>`r‘��hjß��hhh h–h"}r’��(UreftypeX���classh“âh”X���Types.ReplicationPolicyU refdomainX���pyr÷��h']h&]Urefexplicitàh$]h%]h)]h’h÷h◊NhÿNuh+Kdh]r◊��h⁄)Årÿ��}rŸ��(hj‘��h"}r⁄��(h$]h%]r€��(hflj÷��X���py-classr‹��eh&]h']h)]uhj“��h]r›��h5X���policyrfi��ÖÅrfl��}r‡��(hU�hjÿ��ubah hÂubaubh5X���) r·��ÖÅr‚��}r„��(hX���) hjß��ubh⁄)År‰��}rÂ��(hX���``->``h"}rÊ��(h$]h%]h&]h']h)]uhjß��h]rÁ��h5X���->rË��ÖÅrÈ��}rÍ��(hU�hj‰��ubah hÂubh5X��� booleanrÎ��ÖÅrÏ��}rÌ��(hX��� booleanhjß��ubeubah h†ubeh h≠ubeh j≈��ubeh j∆��ubeubh9)ÅrÓ��}rÔ��(hX���internal only:r��hj>��hhh h=h"}rÒ��(h$]h%]h&]h']h)]uh+Kgh,hh]rÚ��h5X���internal only:rÛ��ÖÅrÙ��}rı��(hj��hjÓ��ubaubcdocutils.nodes bullet_list rˆ��)År˜��}r¯��(hU�hj>��hhh Ubullet_listr˘��h"}r˙��(Ubulletr˚��X���-h']h&]h$]h%]h)]uh+Kih,hh]r¸��(cdocutils.nodes list_item r˝��)År˛��}rˇ��(hX#���:func:`CNCore.updateSystemMetadata`r���hj˜��hhh U list_itemr��h"}r��(h$]h%]h&]h']h)]uh+Nh,hh]r��h9)År��}r��(hj���hj˛��hhh h=h"}r��(h$]h%]h&]h']h)]uh+Kih]r��hÕ)År��}r ��(hj���hj��hhh h–h"}r ��(UreftypeX���funch“âh”X���CNCore.updateSystemMetadataU refdomainX���pyr��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kih]r��h⁄)År ��}r��(hj���h"}r��(h$]h%]r��(hflj��X���py-funcr��eh&]h']h)]uhj��h]r��h5X���CNCore.updateSystemMetadata()r��ÖÅr��}r��(hU�hj ��ubah hÂubaubaubaubj˝��)År��}r��(hX0���:func:`CNReplication.updateReplicationMetadata` hj˜��hhh j��h"}r��(h$]h%]h&]h']h)]uh+Nh,hh]r��h9)År��}r��(hX/���:func:`CNReplication.updateReplicationMetadata`r��hj��hhh h=h"}r��(h$]h%]h&]h']h)]uh+Kjh]r��hÕ)År��}r ��(hj��hj��hhh h–h"}r!��(UreftypeX���funch“âh”X'���CNReplication.updateReplicationMetadataU refdomainX���pyr"��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kjh]r#��h⁄)År$��}r%��(hj��h"}r&��(h$]h%]r'��(hflj"��X���py-funcr(��eh&]h']h)]uhj��h]r)��h5X)���CNReplication.updateReplicationMetadata()r*��ÖÅr+��}r,��(hU�hj$��ubah hÂubaubaubaubeubh9)År-��}r.��(hX&���externally available through REST API:r/��hj>��hhh h=h"}r0��(h$]h%]h&]h']h)]uh+Klh,hh]r1��h5X&���externally available through REST API:r2��ÖÅr3��}r4��(hj/��hj-��ubaubjˆ��)År5��}r6��(hU�hj>��hhh j˘��h"}r7��(j˚��X���-h']h&]h$]h%]h)]uh+Knh,hh]r8��(j˝��)År9��}r:��(hX ���:func:`CNAuthorization.setOwner`r;��hj5��hhh j��h"}r<��(h$]h%]h&]h']h)]uh+Nh,hh]r=��h9)År>��}r?��(hj;��hj9��hhh h=h"}r@��(h$]h%]h&]h']h)]uh+Knh]rA��hÕ)ÅrB��}rC��(hj;��hj>��hhh h–h"}rD��(UreftypeX���funch“âh”X���CNAuthorization.setOwnerU refdomainX���pyrE��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Knh]rF��h⁄)ÅrG��}rH��(hj;��h"}rI��(h$]h%]rJ��(hfljE��X���py-funcrK��eh&]h']h)]uhjB��h]rL��h5X���CNAuthorization.setOwner()rM��ÖÅrN��}rO��(hU�hjG��ubah hÂubaubaubaubj˝��)ÅrP��}rQ��(hX'���:func:`CNAuthorization.setAccessPolicy`rR��hj5��hhh j��h"}rS��(h$]h%]h&]h']h)]uh+Nh,hh]rT��h9)ÅrU��}rV��(hjR��hjP��hhh h=h"}rW��(h$]h%]h&]h']h)]uh+Koh]rX��hÕ)ÅrY��}rZ��(hjR��hjU��hhh h–h"}r[��(UreftypeX���funch“âh”X���CNAuthorization.setAccessPolicyU refdomainX���pyr\��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Koh]r]��h⁄)År^��}r_��(hjR��h"}r`��(h$]h%]ra��(hflj\��X���py-funcrb��eh&]h']h)]uhjY��h]rc��h5X!���CNAuthorization.setAccessPolicy()rd��ÖÅre��}rf��(hU�hj^��ubah hÂubaubaubaubj˝��)Årg��}rh��(hX'���:func:`MNAuthorization.setAccessPolicy`ri��hj5��hhh j��h"}rj��(h$]h%]h&]h']h)]uh+Nh,hh]rk��h9)Årl��}rm��(hji��hjg��hhh h=h"}rn��(h$]h%]h&]h']h)]uh+Kph]ro��hÕ)Årp��}rq��(hji��hjl��hhh h–h"}rr��(UreftypeX���funch“âh”X���MNAuthorization.setAccessPolicyU refdomainX���pyrs��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kph]rt��h⁄)Åru��}rv��(hji��h"}rw��(h$]h%]rx��(hfljs��X���py-funcry��eh&]h']h)]uhjp��h]rz��h5X!���MNAuthorization.setAccessPolicy()r{��ÖÅr|��}r}��(hU�hju��ubah hÂubaubaubaubj˝��)År~��}r��(hX���:func:`MNStorage.update`rÄ��hj5��hhh j��h"}rÅ��(h$]h%]h&]h']h)]uh+Nh,hh]rÇ��h9)ÅrÉ��}rÑ��(hjÄ��hj~��hhh h=h"}rÖ��(h$]h%]h&]h']h)]uh+Kqh]rÜ��hÕ)Årá��}rà��(hjÄ��hjÉ��hhh h–h"}râ��(UreftypeX���funch“âh”X���MNStorage.updateU refdomainX���pyrä��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kqh]rã��h⁄)Årå��}rç��(hjÄ��h"}ré��(h$]h%]rè��(hfljä��X���py-funcrê��eh&]h']h)]uhjá��h]rë��h5X���MNStorage.update()rí��ÖÅrì��}rî��(hU�hjå��ubah hÂubaubaubaubj˝��)Årï��}rñ��(hX*���:func:`CNReplication.setReplicationStatus`ró��hj5��hhh j��h"}rò��(h$]h%]h&]h']h)]uh+Nh,hh]rô��h9)Årö��}rõ��(hjó��hjï��hhh h=h"}rú��(h$]h%]h&]h']h)]uh+Krh]rù��hÕ)Årû��}rü��(hjó��hjö��hhh h–h"}r†��(UreftypeX���funch“âh”X"���CNReplication.setReplicationStatusU refdomainX���pyr°��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Krh]r¢��h⁄)År£��}r§��(hjó��h"}r•��(h$]h%]r¶��(hflj°��X���py-funcrß��eh&]h']h)]uhjû��h]r®��h5X$���CNReplication.setReplicationStatus()r©��ÖÅr™��}r´��(hU�hj£��ubah hÂubaubaubaubj˝��)År¨��}r≠��(hX,���:func:`CNReplication.setReplicationPolicy` hj5��hhh j��h"}rÆ��(h$]h%]h&]h']h)]uh+Nh,hh]rØ��h9)År∞��}r±��(hX*���:func:`CNReplication.setReplicationPolicy`r≤��hj¨��hhh h=h"}r≥��(h$]h%]h&]h']h)]uh+Ksh]r¥��hÕ)Årµ��}r∂��(hj≤��hj∞��hhh h–h"}r∑��(UreftypeX���funch“âh”X"���CNReplication.setReplicationPolicyU refdomainX���pyr∏��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Ksh]rπ��h⁄)År∫��}rª��(hj≤��h"}rº��(h$]h%]rΩ��(hflj∏��X���py-funcræ��eh&]h']h)]uhjµ��h]rø��h5X$���CNReplication.setReplicationPolicy()r¿��ÖÅr¡��}r¬��(hU�hj∫��ubah hÂubaubaubaubeubeubh)År√��}rƒ��(hU�hhhhh h!h"}r≈��(h$]h%]h&]h']r∆��hah)]r«��h auh+Kwh,hh]r»��(h.)År…��}r ��(hX%���Interactions affecting SystemMetadatarÀ��hj√��hhh h2h"}rÃ��(h$]h%]h&]h']h)]uh+Kwh,hh]rÕ��h5X%���Interactions affecting SystemMetadatarŒ��ÖÅrœ��}r–��(hjÀ��hj…��ubaubh9)År—��}r“��(hX·���The CN is the ultimate arbiter of SystemMetadata changes. There needs to be a clear delineation of responsibility with regard to which processes will interact with the CN store such that the SystemMetadata remains consistent.r”��hj√��hhh h=h"}r‘��(h$]h%]h&]h']h)]uh+Kyh,hh]r’��h5X·���The CN is the ultimate arbiter of SystemMetadata changes. There needs to be a clear delineation of responsibility with regard to which processes will interact with the CN store such that the SystemMetadata remains consistent.r÷��ÖÅr◊��}rÿ��(hj”��hj—��ubaubh9)ÅrŸ��}r⁄��(hX���MN-CN Synchronization:r€��hj√��hhh h=h"}r‹��(h$]h%]h&]h']h)]uh+K}h,hh]r›��h5X���MN-CN Synchronization:rfi��ÖÅrfl��}r‡��(hj€��hjŸ��ubaubh9)År·��}r‚��(hX±���The MN-CN Synchronization process will set all the immutable elements the first time an item is created. It will also add items to mutable elements that were provided by the MN:r„��hj√��hhh h=h"}r‰��(h$]h%]h&]h']h)]uh+Kh,hh]rÂ��h5X±���The MN-CN Synchronization process will set all the immutable elements the first time an item is created. It will also add items to mutable elements that were provided by the MN:rÊ��ÖÅrÁ��}rË��(hj„��hj·��ubaubhq)ÅrÈ��}rÍ��(hU�hj√��hNh hth"}rÎ��(h$]h%]h&]h']h)]uh+Nh,hh]rÏ��jˆ��)ÅrÌ��}rÓ��(hU�h"}rÔ��(j˚��X���-h']h&]h$]h%]h)]uhjÈ��h]r��(j˝��)ÅrÒ��}rÚ��(hX3���**originMemberNode** (:class:`Types.NodeReference`)rÛ��h"}rÙ��(h$]h%]h&]h']h)]uhjÌ��h]rı��h9)Årˆ��}r˜��(hjÛ��hjÒ��hhh h=h"}r¯��(h$]h%]h&]h']h)]uh+KÉh]r˘��(cdocutils.nodes strong r˙��)År˚��}r¸��(hX���**originMemberNode**h"}r˝��(h$]h%]h&]h']h)]uhjˆ��h]r˛��h5X���originMemberNoderˇ��ÖÅr� ��}r ��(hU�hj˚��ubah Ustrongr ��ubh5X��� (r ��ÖÅr ��}r ��(hX��� (hjˆ��ubhÕ)År ��}r ��(hX���:class:`Types.NodeReference`r ��hjˆ��hhh h–h"}r ��(UreftypeX���classh“âh”X���Types.NodeReferenceU refdomainX���pyr ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KÉh]r ��h⁄)År ��}r ��(hj ��h"}r ��(h$]h%]r ��(hflj ��X���py-classr ��eh&]h']h)]uhj ��h]r ��h5X���Types.NodeReferencer ��ÖÅr ��}r ��(hU�hj ��ubah hÂubaubh5X���)ÖÅr ��}r ��(hX���)hjˆ��ubeubah j��ubj˝��)År ��}r ��(hX:���**authoritativeMemberNode** (:class:`Types.NodeReference`)r ��h"}r ��(h$]h%]h&]h']h)]uhjÌ��h]r ��h9)År ��}r ��(hj ��hj ��hhh h=h"}r ��(h$]h%]h&]h']h)]uh+KÑh]r ��(j˙��)År ��}r! ��(hX���**authoritativeMemberNode**h"}r" ��(h$]h%]h&]h']h)]uhj ��h]r# ��h5X���authoritativeMemberNoder$ ��ÖÅr% ��}r& ��(hU�hj ��ubah j ��ubh5X��� (r' ��ÖÅr( ��}r) ��(hX��� (hj ��ubhÕ)År* ��}r+ ��(hX���:class:`Types.NodeReference`r, ��hj ��hhh h–h"}r- ��(UreftypeX���classh“âh”X���Types.NodeReferenceU refdomainX���pyr. ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KÑh]r/ ��h⁄)År0 ��}r1 ��(hj, ��h"}r2 ��(h$]h%]r3 ��(hflj. ��X���py-classr4 ��eh&]h']h)]uhj* ��h]r5 ��h5X���Types.NodeReferencer6 ��ÖÅr7 ��}r8 ��(hU�hj0 ��ubah hÂubaubh5X���)ÖÅr9 ��}r: ��(hX���)hj ��ubeubah j��ubj˝��)År; ��}r< ��(hX%���**replica** (:class:`Types.Replica`) h"}r= ��(h$]h%]h&]h']h)]uhjÌ��h]r> ��h9)År? ��}r@ ��(hX$���**replica** (:class:`Types.Replica`)rA ��hj; ��hhh h=h"}rB ��(h$]h%]h&]h']h)]uh+KÖh]rC ��(j˙��)ÅrD ��}rE ��(hX���**replica**h"}rF ��(h$]h%]h&]h']h)]uhj? ��h]rG ��h5X���replicarH ��ÖÅrI ��}rJ ��(hU�hjD ��ubah j ��ubh5X��� (rK ��ÖÅrL ��}rM ��(hX��� (hj? ��ubhÕ)ÅrN ��}rO ��(hX���:class:`Types.Replica`rP ��hj? ��hhh h–h"}rQ ��(UreftypeX���classh“âh”X ���Types.ReplicaU refdomainX���pyrR ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+KÖh]rS ��h⁄)ÅrT ��}rU ��(hjP ��h"}rV ��(h$]h%]rW ��(hfljR ��X���py-classrX ��eh&]h']h)]uhjN ��h]rY ��h5X ���Types.ReplicarZ ��ÖÅr[ ��}r\ ��(hU�hjT ��ubah hÂubaubh5X���)ÖÅr] ��}r^ ��(hX���)hj? ��ubeubah j��ubeh j˘��ubaubh9)År_ ��}r` ��(hXk���It will also reset **dateSysMetadataModified** (:class:`Types.DateTime`) to the time the object was added.hj√��hhh h=h"}ra ��(h$]h%]h&]h']h)]uh+Káh,hh]rb ��(h5X���It will also reset rc ��ÖÅrd ��}re ��(hX���It will also reset hj_ ��ubj˙��)Årf ��}rg ��(hX���**dateSysMetadataModified**h"}rh ��(h$]h%]h&]h']h)]uhj_ ��h]ri ��h5X���dateSysMetadataModifiedrj ��ÖÅrk ��}rl ��(hU�hjf ��ubah j ��ubh5X��� (rm ��ÖÅrn ��}ro ��(hX��� (hj_ ��ubhÕ)Årp ��}rq ��(hX���:class:`Types.DateTime`rr ��hj_ ��hhh h–h"}rs ��(UreftypeX���classh“âh”X���Types.DateTimeU refdomainX���pyrt ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Káh]ru ��h⁄)Årv ��}rw ��(hjr ��h"}rx ��(h$]h%]ry ��(hfljt ��X���py-classrz ��eh&]h']h)]uhjp ��h]r{ ��h5X���Types.DateTimer| ��ÖÅr} ��}r~ ��(hU�hjv ��ubah hÂubaubh5X#���) to the time the object was added.r ��ÖÅrÄ ��}rÅ ��(hX#���) to the time the object was added.hj_ ��ubeubh9)ÅrÇ ��}rÉ ��(hX���The MN-CN Synchronization process may also update SystemMetadata by calling the CNCore.updateSystemMetadata internally. It will update the **authoritativeMemberNode** (:class:`Types.NodeReference`) or **obsoletedBy** (:class:`Types.Identifier`) on the CN when during synchronization of the node listed as the authoritativeMemberNode, it finds those fields have changed been modified, and changes **dateSysMetadataModified** (:class:`Types.DateTime`) to reflect the date on the SystemMetadata sent from the MN.hj√��hhh h=h"}rÑ ��(h$]h%]h&]h']h)]uh+Käh,hh]rÖ ��(h5Xã���The MN-CN Synchronization process may also update SystemMetadata by calling the CNCore.updateSystemMetadata internally. It will update the rÜ ��ÖÅrá ��}rà ��(hXã���The MN-CN Synchronization process may also update SystemMetadata by calling the CNCore.updateSystemMetadata internally. It will update the hjÇ ��ubj˙��)Årâ ��}rä ��(hX���**authoritativeMemberNode**h"}rã ��(h$]h%]h&]h']h)]uhjÇ ��h]rå ��h5X���authoritativeMemberNoderç ��ÖÅré ��}rè ��(hU�hjâ ��ubah j ��ubh5X��� (rê ��ÖÅrë ��}rí ��(hX��� (hjÇ ��ubhÕ)Årì ��}rî ��(hX���:class:`Types.NodeReference`rï ��hjÇ ��hhh h–h"}rñ ��(UreftypeX���classh“âh”X���Types.NodeReferenceU refdomainX���pyró ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Käh]rò ��h⁄)Årô ��}rö ��(hjï ��h"}rõ ��(h$]h%]rú ��(hfljó ��X���py-classrù ��eh&]h']h)]uhjì ��h]rû ��h5X���Types.NodeReferencerü ��ÖÅr† ��}r° ��(hU�hjô ��ubah hÂubaubh5X���) or r¢ ��ÖÅr£ ��}r§ ��(hX���) or hjÇ ��ubj˙��)År• ��}r¶ ��(hX���**obsoletedBy**h"}rß ��(h$]h%]h&]h']h)]uhjÇ ��h]r® ��h5X���obsoletedByr© ��ÖÅr™ ��}r´ ��(hU�hj• ��ubah j ��ubh5X��� (r¨ ��ÖÅr≠ ��}rÆ ��(hX��� (hjÇ ��ubhÕ)ÅrØ ��}r∞ ��(hX���:class:`Types.Identifier`r± ��hjÇ ��hhh h–h"}r≤ ��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr≥ ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Käh]r¥ ��h⁄)Årµ ��}r∂ ��(hj± ��h"}r∑ ��(h$]h%]r∏ ��(hflj≥ ��X���py-classrπ ��eh&]h']h)]uhjØ ��h]r∫ ��h5X���Types.Identifierrª ��ÖÅrº ��}rΩ ��(hU�hjµ ��ubah hÂubaubh5Xú���) on the CN when during synchronization of the node listed as the authoritativeMemberNode, it finds those fields have changed been modified, and changes ræ ��ÖÅrø ��}r¿ ��(hXú���) on the CN when during synchronization of the node listed as the authoritativeMemberNode, it finds those fields have changed been modified, and changes hjÇ ��ubj˙��)År¡ ��}r¬ ��(hX���**dateSysMetadataModified**h"}r√ ��(h$]h%]h&]h']h)]uhjÇ ��h]rƒ ��h5X���dateSysMetadataModifiedr≈ ��ÖÅr∆ ��}r« ��(hU�hj¡ ��ubah j ��ubh5X��� (r» ��ÖÅr… ��}r ��(hX��� (hjÇ ��ubhÕ)ÅrÀ ��}rà ��(hX���:class:`Types.DateTime`rÕ ��hjÇ ��hhh h–h"}rŒ ��(UreftypeX���classh“âh”X���Types.DateTimeU refdomainX���pyrœ ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Käh]r– ��h⁄)År— ��}r“ ��(hjÕ ��h"}r” ��(h$]h%]r‘ ��(hfljœ ��X���py-classr’ ��eh&]h']h)]uhjÀ ��h]r÷ ��h5X���Types.DateTimer◊ ��ÖÅrÿ ��}rŸ ��(hU�hj— ��ubah hÂubaubh5X=���) to reflect the date on the SystemMetadata sent from the MN.r⁄ ��ÖÅr€ ��}r‹ ��(hX=���) to reflect the date on the SystemMetadata sent from the MN.hjÇ ��ubeubh9)År› ��}rfi ��(hX���MN-MN Replication:rfl ��hj√��hhh h=h"}r‡ ��(h$]h%]h&]h']h)]uh+Kíh,hh]r· ��h5X���MN-MN Replication:r‚ ��ÖÅr„ ��}r‰ ��(hjfl ��hj› ��ubaubh9)År ��}rÊ ��(hX��The MN-MN Replication process running on the CN will call CNReplication.updateReplicationMetadata to modify **replica** (:class:`Types.Replica`) on the SystemMetadata to reflect the replica copies available. A MN will call the CNReplication.setReplicationStatus that modifies the replica list **replica** (:class:`Types.Replica`) to indicate when a replication from one MN to another has been completed. After each operation, **dateSysMetadataModified** (:class:`Types.DateTime`) will be modified to be the date the operation was performed.hj√��hhh h=h"}rÁ ��(h$]h%]h&]h']h)]uh+Kîh,hh]rË ��(h5Xm���The MN-MN Replication process running on the CN will call CNReplication.updateReplicationMetadata to modify rÈ ��ÖÅrÍ ��}rÎ ��(hXm���The MN-MN Replication process running on the CN will call CNReplication.updateReplicationMetadata to modify hj ��ubj˙��)ÅrÏ ��}rÌ ��(hX���**replica**h"}rÓ ��(h$]h%]h&]h']h)]uhj ��h]rÔ ��h5X���replicar ��ÖÅrÒ ��}rÚ ��(hU�hjÏ ��ubah j ��ubh5X��� (rÛ ��ÖÅrÙ ��}rı ��(hX��� (hj ��ubhÕ)Årˆ ��}r˜ ��(hX���:class:`Types.Replica`r¯ ��hj ��hhh h–h"}r˘ ��(UreftypeX���classh“âh”X ���Types.ReplicaU refdomainX���pyr˙ ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kîh]r˚ ��h⁄)År¸ ��}r˝ ��(hj¯ ��h"}r˛ ��(h$]h%]rˇ ��(hflj˙ ��X���py-classr� ��eh&]h']h)]uhjˆ ��h]r ��h5X ���Types.Replicar ��ÖÅr ��}r ��(hU�hj¸ ��ubah hÂubaubh5Xñ���) on the SystemMetadata to reflect the replica copies available. A MN will call the CNReplication.setReplicationStatus that modifies the replica list r ��ÖÅr ��}r ��(hXñ���) on the SystemMetadata to reflect the replica copies available. A MN will call the CNReplication.setReplicationStatus that modifies the replica list hj ��ubj˙��)År ��}r ��(hX���**replica**h"}r ��(h$]h%]h&]h']h)]uhj ��h]r ��h5X���replicar ��ÖÅr ��}r ��(hU�hj ��ubah j ��ubh5X��� (r ��ÖÅr ��}r ��(hX��� (hj ��ubhÕ)År ��}r ��(hX���:class:`Types.Replica`r ��hj ��hhh h–h"}r ��(UreftypeX���classh“âh”X ���Types.ReplicaU refdomainX���pyr ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kîh]r ��h⁄)År ��}r ��(hj ��h"}r ��(h$]h%]r ��(hflj ��X���py-classr ��eh&]h']h)]uhj ��h]r ��h5X ���Types.Replicar ��ÖÅr ��}r ��(hU�hj ��ubah hÂubaubh5Xb���) to indicate when a replication from one MN to another has been completed. After each operation, r! ��ÖÅr" ��}r# ��(hXb���) to indicate when a replication from one MN to another has been completed. After each operation, hj ��ubj˙��)År$ ��}r% ��(hX���**dateSysMetadataModified**h"}r& ��(h$]h%]h&]h']h)]uhj ��h]r' ��h5X���dateSysMetadataModifiedr( ��ÖÅr) ��}r* ��(hU�hj$ ��ubah j ��ubh5X��� (r+ ��ÖÅr, ��}r- ��(hX��� (hj ��ubhÕ)År. ��}r/ ��(hX���:class:`Types.DateTime`r0 ��hj ��hhh h–h"}r1 ��(UreftypeX���classh“âh”X���Types.DateTimeU refdomainX���pyr2 ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kîh]r3 ��h⁄)År4 ��}r5 ��(hj0 ��h"}r6 ��(h$]h%]r7 ��(hflj2 ��X���py-classr8 ��eh&]h']h)]uhj. ��h]r9 ��h5X���Types.DateTimer: ��ÖÅr; ��}r< ��(hU�hj4 ��ubah hÂubaubh5X?���) will be modified to be the date the operation was performed.r= ��ÖÅr> ��}r? ��(hX?���) will be modified to be the date the operation was performed.hj ��ubeubh9)År@ ��}rA ��(hX���Client-CN Interactions:rB ��hj√��hhh h=h"}rC ��(h$]h%]h&]h']h)]uh+Kùh,hh]rD ��h5X���Client-CN Interactions:rE ��ÖÅrF ��}rG ��(hjB ��hj@ ��ubaubh9)ÅrH ��}rI ��(hXE���Clients, either ITK or MNs, may call the following methods on the CN:rJ ��hj√��hhh h=h"}rK ��(h$]h%]h&]h']h)]uh+Küh,hh]rL ��h5XE���Clients, either ITK or MNs, may call the following methods on the CN:rM ��ÖÅrN ��}rO ��(hjJ ��hjH ��ubaubjˆ��)ÅrP ��}rQ ��(hU�hj√��hhh j˘��h"}rR ��(j˚��X���-h']h&]h$]h%]h)]uh+K°h,hh]rS ��(j˝��)ÅrT ��}rU ��(hX ���:func:`CNAuthorization.setOwner`rV ��hjP ��hhh j��h"}rW ��(h$]h%]h&]h']h)]uh+Nh,hh]rX ��h9)ÅrY ��}rZ ��(hjV ��hjT ��hhh h=h"}r[ ��(h$]h%]h&]h']h)]uh+K°h]r\ ��hÕ)År] ��}r^ ��(hjV ��hjY ��hhh h–h"}r_ ��(UreftypeX���funch“âh”X���CNAuthorization.setOwnerU refdomainX���pyr` ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K°h]ra ��h⁄)Årb ��}rc ��(hjV ��h"}rd ��(h$]h%]re ��(hflj` ��X���py-funcrf ��eh&]h']h)]uhj] ��h]rg ��h5X���CNAuthorization.setOwner()rh ��ÖÅri ��}rj ��(hU�hjb ��ubah hÂubaubaubaubj˝��)Årk ��}rl ��(hX'���:func:`CNAuthorization.setAccessPolicy`rm ��hjP ��hhh j��h"}rn ��(h$]h%]h&]h']h)]uh+Nh,hh]ro ��h9)Årp ��}rq ��(hjm ��hjk ��hhh h=h"}rr ��(h$]h%]h&]h']h)]uh+K¢h]rs ��hÕ)Årt ��}ru ��(hjm ��hjp ��hhh h–h"}rv ��(UreftypeX���funch“âh”X���CNAuthorization.setAccessPolicyU refdomainX���pyrw ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K¢h]rx ��h⁄)Åry ��}rz ��(hjm ��h"}r{ ��(h$]h%]r| ��(hfljw ��X���py-funcr} ��eh&]h']h)]uhjt ��h]r~ ��h5X!���CNAuthorization.setAccessPolicy()r ��ÖÅrÄ ��}rÅ ��(hU�hjy ��ubah hÂubaubaubaubj˝��)ÅrÇ ��}rÉ ��(hX+���:func:`CNReplication.setReplicationPolicy` hjP ��hhh j��h"}rÑ ��(h$]h%]h&]h']h)]uh+Nh,hh]rÖ ��h9)ÅrÜ ��}rá ��(hX*���:func:`CNReplication.setReplicationPolicy`rà ��hjÇ ��hhh h=h"}râ ��(h$]h%]h&]h']h)]uh+K£h]rä ��hÕ)Årã ��}rå ��(hjà ��hjÜ ��hhh h–h"}rç ��(UreftypeX���funch“âh”X"���CNReplication.setReplicationPolicyU refdomainX���pyré ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K£h]rè ��h⁄)Årê ��}rë ��(hjà ��h"}rí ��(h$]h%]rì ��(hfljé ��X���py-funcrî ��eh&]h']h)]uhjã ��h]rï ��h5X$���CNReplication.setReplicationPolicy()rñ ��ÖÅró ��}rò ��(hU�hjê ��ubah hÂubaubaubaubeubh9)Årô ��}rö ��(hX;���The execution of these methods will alter various elements:rõ ��hj√��hhh h=h"}rú ��(h$]h%]h&]h']h)]uh+K•h,hh]rù ��h5X;���The execution of these methods will alter various elements:rû ��ÖÅrü ��}r† ��(hjõ ��hjô ��ubaubjˆ��)År° ��}r¢ ��(hU�hj√��hhh j˘��h"}r£ ��(j˚��X���-h']h&]h$]h%]h)]uh+Kßh,hh]r§ ��(j˝��)År• ��}r¶ ��(hX)���**rightsHolder** (:class:`Types.Subject`)rß ��hj° ��hhh j��h"}r® ��(h$]h%]h&]h']h)]uh+Nh,hh]r© ��h9)År™ ��}r´ ��(hjß ��hj• ��hhh h=h"}r¨ ��(h$]h%]h&]h']h)]uh+Kßh]r≠ ��(j˙��)ÅrÆ ��}rØ ��(hX���**rightsHolder**h"}r∞ ��(h$]h%]h&]h']h)]uhj™ ��h]r± ��h5X���rightsHolderr≤ ��ÖÅr≥ ��}r¥ ��(hU�hjÆ ��ubah j ��ubh5X��� (rµ ��ÖÅr∂ ��}r∑ ��(hX��� (hj™ ��ubhÕ)År∏ ��}rπ ��(hX���:class:`Types.Subject`r∫ ��hj™ ��hhh h–h"}rª ��(UreftypeX���classh“âh”X ���Types.SubjectU refdomainX���pyrº ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+Kßh]rΩ ��h⁄)Åræ ��}rø ��(hj∫ ��h"}r¿ ��(h$]h%]r¡ ��(hfljº ��X���py-classr¬ ��eh&]h']h)]uhj∏ ��h]r√ ��h5X ���Types.Subjectrƒ ��ÖÅr≈ ��}r∆ ��(hU�hjæ ��ubah hÂubaubh5X���)ÖÅr« ��}r» ��(hX���)hj™ ��ubeubaubj˝��)År… ��}r ��(hX.���**accessPolicy** (:class:`Types.AccessPolicy`)rÀ ��hj° ��hhh j��h"}rà ��(h$]h%]h&]h']h)]uh+Nh,hh]rÕ ��h9)ÅrŒ ��}rœ ��(hjÀ ��hj… ��hhh h=h"}r– ��(h$]h%]h&]h']h)]uh+K®h]r— ��(j˙��)År“ ��}r” ��(hX���**accessPolicy**h"}r‘ ��(h$]h%]h&]h']h)]uhjŒ ��h]r’ ��h5X���accessPolicyr÷ ��ÖÅr◊ ��}rÿ ��(hU�hj“ ��ubah j ��ubh5X��� (rŸ ��ÖÅr⁄ ��}r€ ��(hX��� (hjŒ ��ubhÕ)År‹ ��}r› ��(hX���:class:`Types.AccessPolicy`rfi ��hjŒ ��hhh h–h"}rfl ��(UreftypeX���classh“âh”X���Types.AccessPolicyU refdomainX���pyr‡ ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K®h]r· ��h⁄)År‚ ��}r„ ��(hjfi ��h"}r‰ ��(h$]h%]r ��(hflj‡ ��X���py-classrÊ ��eh&]h']h)]uhj‹ ��h]rÁ ��h5X���Types.AccessPolicyrË ��ÖÅrÈ ��}rÍ ��(hU�hj‚ ��ubah hÂubaubh5X���)ÖÅrÎ ��}rÏ ��(hX���)hjŒ ��ubeubaubj˝��)ÅrÌ ��}rÓ ��(hX9���**replicationPolicy** (:class:`Types.ReplicationPolicy`) hj° ��hhh j��h"}rÔ ��(h$]h%]h&]h']h)]uh+Nh,hh]r ��h9)ÅrÒ ��}rÚ ��(hX8���**replicationPolicy** (:class:`Types.ReplicationPolicy`)hjÌ ��hhh h=h"}rÛ ��(h$]h%]h&]h']h)]uh+K©h]rÙ ��(j˙��)Årı ��}rˆ ��(hX���**replicationPolicy**h"}r˜ ��(h$]h%]h&]h']h)]uhjÒ ��h]r¯ ��h5X���replicationPolicyr˘ ��ÖÅr˙ ��}r˚ ��(hU�hjı ��ubah j ��ubh5X��� (r¸ ��ÖÅr˝ ��}r˛ ��(hX��� (hjÒ ��ubhÕ)Årˇ ��}r���(hX ���:class:`Types.ReplicationPolicy`r��hjÒ ��hhh h–h"}r��(UreftypeX���classh“âh”X���Types.ReplicationPolicyU refdomainX���pyr��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K©h]r��h⁄)År��}r��(hj��h"}r��(h$]h%]r��(hflj��X���py-classr ��eh&]h']h)]uhjˇ ��h]r ��h5X���Types.ReplicationPolicyr��ÖÅr��}r ��(hU�hj��ubah hÂubaubh5X���)ÖÅr��}r��(hX���)hjÒ ��ubeubaubeubcdocutils.nodes definition_list r��)År��}r��(hU�hj√��hhh Udefinition_listr��h"}r��(h$]h%]h&]h']h)]uh+Nh,hh]r��cdocutils.nodes definition_list_item r��)År��}r��(hXw���A side effect of each of these operations will be an update to **dateSysMetadataModified** (:class:`Types.DateTime`). hj��hhh Udefinition_list_itemr��h"}r��(h$]h%]h&]h']h)]uh+K≠h]r��(cdocutils.nodes term r��)År��}r��(hX>���A side effect of each of these operations will be an update tor��hj��hhh Utermr ��h"}r!��(h$]h%]h&]h']h)]uh+K≠h]r"��h5X>���A side effect of each of these operations will be an update tor#��ÖÅr$��}r%��(hj��hj��ubaubcdocutils.nodes definition r&��)År'��}r(��(hU�h"}r)��(h$]h%]h&]h']h)]uhj��h]r*��h9)År+��}r,��(hX6���**dateSysMetadataModified** (:class:`Types.DateTime`).hj'��hhh h=h"}r-��(h$]h%]h&]h']h)]uh+K¨h]r.��(j˙��)År/��}r0��(hX���**dateSysMetadataModified**h"}r1��(h$]h%]h&]h']h)]uhj+��h]r2��h5X���dateSysMetadataModifiedr3��ÖÅr4��}r5��(hU�hj/��ubah j ��ubh5X��� (r6��ÖÅr7��}r8��(hX��� (hj+��ubhÕ)År9��}r:��(hX���:class:`Types.DateTime`r;��hj+��hhh h–h"}r<��(UreftypeX���classh“âh”X���Types.DateTimeU refdomainX���pyr=��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K¨h]r>��h⁄)År?��}r@��(hj;��h"}rA��(h$]h%]rB��(hflj=��X���py-classrC��eh&]h']h)]uhj9��h]rD��h5X���Types.DateTimerE��ÖÅrF��}rG��(hU�hj?��ubah hÂubaubh5X���).rH��ÖÅrI��}rJ��(hX���).hj+��ubeubah U definitionrK��ubeubaubh9)ÅrL��}rM��(hX���Client-MN Interactions:rN��hj√��hhh h=h"}rO��(h$]h%]h&]h']h)]uh+KØh,hh]rP��h5X���Client-MN Interactions:rQ��ÖÅrR��}rS��(hjN��hjL��ubaubh9)ÅrT��}rU��(hX ���A Client may call the following:rV��hj√��hhh h=h"}rW��(h$]h%]h&]h']h)]uh+K±h,hh]rX��h5X ���A Client may call the following:rY��ÖÅrZ��}r[��(hjV��hjT��ubaubjˆ��)År\��}r]��(hU�hj√��hhh j˘��h"}r^��(j˚��X���-h']h&]h$]h%]h)]uh+K≥h,hh]r_��(j˝��)År`��}ra��(hX'���:func:`MNAuthorization.setAccessPolicy`rb��hj\��hhh j��h"}rc��(h$]h%]h&]h']h)]uh+Nh,hh]rd��h9)Åre��}rf��(hjb��hj`��hhh h=h"}rg��(h$]h%]h&]h']h)]uh+K≥h]rh��hÕ)Åri��}rj��(hjb��hje��hhh h–h"}rk��(UreftypeX���funch“âh”X���MNAuthorization.setAccessPolicyU refdomainX���pyrl��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K≥h]rm��h⁄)Årn��}ro��(hjb��h"}rp��(h$]h%]rq��(hfljl��X���py-funcrr��eh&]h']h)]uhji��h]rs��h5X!���MNAuthorization.setAccessPolicy()rt��ÖÅru��}rv��(hU�hjn��ubah hÂubaubaubaubj˝��)Årw��}rx��(hX���:func:`MNStorage.update` hj\��hhh j��h"}ry��(h$]h%]h&]h']h)]uh+Nh,hh]rz��h9)År{��}r|��(hX���:func:`MNStorage.update`r}��hjw��hhh h=h"}r~��(h$]h%]h&]h']h)]uh+K¥h]r��hÕ)ÅrÄ��}rÅ��(hj}��hj{��hhh h–h"}rÇ��(UreftypeX���funch“âh”X���MNStorage.updateU refdomainX���pyrÉ��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K¥h]rÑ��h⁄)ÅrÖ��}rÜ��(hj}��h"}rá��(h$]h%]rà��(hfljÉ��X���py-funcrâ��eh&]h']h)]uhjÄ��h]rä��h5X���MNStorage.update()rã��ÖÅrå��}rç��(hU�hjÖ��ubah hÂubaubaubaubeubh9)Åré��}rè��(hX∂���This operation alone does not have an effect on the CN's definitive store. A subsequent call to the CN will via func:`CNAuthorization.setAccessPolicy` will need to be made by the MN.hj√��hhh h=h"}rê��(h$]h%]h&]h']h)]uh+K∂h,hh]rë��(h5Xu���This operation alone does not have an effect on the CN's definitive store. A subsequent call to the CN will via func:rí��ÖÅrì��}rî��(hXu���This operation alone does not have an effect on the CN's definitive store. A subsequent call to the CN will via func:hjé��ubcdocutils.nodes title_reference rï��)Årñ��}ró��(hX!���`CNAuthorization.setAccessPolicy`h"}rò��(h$]h%]h&]h']h)]uhjé��h]rô��h5X���CNAuthorization.setAccessPolicyrö��ÖÅrõ��}rú��(hU�hjñ��ubah Utitle_referencerù��ubh5X ��� will need to be made by the MN.rû��ÖÅrü��}r†��(hX ��� will need to be made by the MN.hjé��ubeubh9)År°��}r¢��(hXï��An object may be updated on an MN. The update mechanism will create a new object that is the descendent of the object updated. The descendant object will have the **obsoletes** (:class:`Types.Identifier`) field set while the ancestor object will need an **obsoletedBy** (:class:`Types.Identifier`) element added. The synchronization process will update the ancestor's SystemMetadata with the new value.hj√��hhh h=h"}r£��(h$]h%]h&]h']h)]uh+K∫h,hh]r§��(h5X•���An object may be updated on an MN. The update mechanism will create a new object that is the descendent of the object updated. The descendant object will have the r•��ÖÅr¶��}rß��(hX•���An object may be updated on an MN. The update mechanism will create a new object that is the descendent of the object updated. The descendant object will have the hj°��ubj˙��)År®��}r©��(hX ���**obsoletes**h"}r™��(h$]h%]h&]h']h)]uhj°��h]r´��h5X ���obsoletesr¨��ÖÅr≠��}rÆ��(hU�hj®��ubah j ��ubh5X��� (rØ��ÖÅr∞��}r±��(hX��� (hj°��ubhÕ)År≤��}r≥��(hX���:class:`Types.Identifier`r¥��hj°��hhh h–h"}rµ��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr∂��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K∫h]r∑��h⁄)År∏��}rπ��(hj¥��h"}r∫��(h$]h%]rª��(hflj∂��X���py-classrº��eh&]h']h)]uhj≤��h]rΩ��h5X���Types.Identifierræ��ÖÅrø��}r¿��(hU�hj∏��ubah hÂubaubh5X4���) field set while the ancestor object will need an r¡��ÖÅr¬��}r√��(hX4���) field set while the ancestor object will need an hj°��ubj˙��)Årƒ��}r≈��(hX���**obsoletedBy**h"}r∆��(h$]h%]h&]h']h)]uhj°��h]r«��h5X���obsoletedByr»��ÖÅr…��}r ��(hU�hjƒ��ubah j ��ubh5X��� (rÀ��ÖÅrÃ��}rÕ��(hX��� (hj°��ubhÕ)ÅrŒ��}rœ��(hX���:class:`Types.Identifier`r–��hj°��hhh h–h"}r—��(UreftypeX���classh“âh”X���Types.IdentifierU refdomainX���pyr“��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K∫h]r”��h⁄)År‘��}r’��(hj–��h"}r÷��(h$]h%]r◊��(hflj“��X���py-classrÿ��eh&]h']h)]uhjŒ��h]rŸ��h5X���Types.Identifierr⁄��ÖÅr€��}r‹��(hU�hj‘��ubah hÂubaubh5Xj���) element added. The synchronization process will update the ancestor's SystemMetadata with the new value.r›��ÖÅrfi��}rfl��(hXj���) element added. The synchronization process will update the ancestor's SystemMetadata with the new value.hj°��ubeubh9)År‡��}r·��(hX���Robert's Notes:r‚��hj√��hhh h=h"}r„��(h$]h%]h&]h']h)]uh+K¡h,hh]r‰��h5X���Robert's Notes:rÂ��ÖÅrÊ��}rÁ��(hj‚��hj‡��ubaubh9)ÅrË��}rÈ��(hXt���From these interactions, there is no mechanism defined that updates authoritativeMemberNode on the Authoritative MN.rÍ��hj√��hhh h=h"}rÎ��(h$]h%]h&]h']h)]uh+K√h,hh]rÏ��h5Xt���From these interactions, there is no mechanism defined that updates authoritativeMemberNode on the Authoritative MN.rÌ��ÖÅrÓ��}rÔ��(hjÍ��hjË��ubaubh9)År��}rÒ��(hX’���I am uncertain why :func:`MNAuthorization.setAccessPolicy` is needed. It would appear to be a proxy of the `CNAuthorization.setAccessPolicy`. So why not eliminate the MN call and direct all client calls to the CN?hj√��hhh h=h"}rÚ��(h$]h%]h&]h']h)]uh+K∆h,hh]rÛ��(h5X���I am uncertain why rÙ��ÖÅrı��}rˆ��(hX���I am uncertain why hj��ubhÕ)År˜��}r¯��(hX'���:func:`MNAuthorization.setAccessPolicy`r˘��hj��hhh h–h"}r˙��(UreftypeX���funch“âh”X���MNAuthorization.setAccessPolicyU refdomainX���pyr˚��h']h&]Urefexplicitâh$]h%]h)]h’h÷h◊NhÿNuh+K∆h]r¸��h⁄)År˝��}r˛��(hj˘��h"}rˇ��(h$]h%]r���(hflj˚��X���py-funcr��eh&]h']h)]uhj˜��h]r��h5X!���MNAuthorization.setAccessPolicy()r��ÖÅr��}r��(hU�hj˝��ubah hÂubaubh5X1��� is needed. It would appear to be a proxy of the r��ÖÅr��}r��(hX1��� is needed. It would appear to be a proxy of the hj��ubjï��)År ��}r ��(hX!���`CNAuthorization.setAccessPolicy`h"}r��(h$]h%]h&]h']h)]uhj��h]r��h5X���CNAuthorization.setAccessPolicyr ��ÖÅr��}r��(hU�hj ��ubah jù��ubh5XI���. So why not eliminate the MN call and direct all client calls to the CN?r��ÖÅr��}r��(hXI���. So why not eliminate the MN call and direct all client calls to the CN?hj��ubeubh9)År��}r��(hXÎ���To answer my question about Synchronization updating responsibility: Synchronization should only update the obsoletedBy and authoritativeMemberNode fields of the SystemMetadata from the Authoritative MN (and only the Authoritative MN).r��hj√��hhh h=h"}r��(h$]h%]h&]h']h)]uh+K h,hh]r��h5XÎ���To answer my question about Synchronization updating responsibility: Synchronization should only update the obsoletedBy and authoritativeMemberNode fields of the SystemMetadata from the Authoritative MN (and only the Authoritative MN).r��ÖÅr��}r��(hj��hj��ubaubeubeubahU�Utransformerr��NU footnote_refsr��}r��Urefnamesr��}r��Usymbol_footnotesr ��]r!��Uautofootnote_refsr"��]r#��Usymbol_footnote_refsr$��]r%��U citationsr&��]r'��h,hUcurrent_liner(��NUtransform_messagesr)��]r*��Ureporterr+��NUid_startr,��KU autofootnotesr-��]r.��U citation_refsr/��}r0��Uindirect_targetsr1��]r2��Usettingsr3��(cdocutils.frontend Values r4��or5��}r6��(Ufootnote_backlinksr7��KUrecord_dependenciesr8��NUrfc_base_urlr9��Uhttps://tools.ietf.org/html/r:��U tracebackr;��àUpep_referencesr<��NUstrip_commentsr=��NU toc_backlinksr>��h†U language_coder?��Uenr@��U datestamprA��NUreport_levelrB��KU_destinationrC��NU halt_levelrD��KU strip_classesrE��Nh2NUerror_encoding_error_handlerrF��UbackslashreplacerG��UdebugrH��NUembed_stylesheetrI��âUoutput_encoding_error_handlerrJ��UstrictrK��U sectnum_xformrL��KUdump_transformsrM��NU docinfo_xformrN��KUwarning_streamrO��NUpep_file_url_templaterP��Upep-%04drQ��Uexit_status_levelrR��KUconfigrS��NUstrict_visitorrT��NUcloak_email_addressesrU��àUtrim_footnote_reference_spacerV��âUenvrW��NUdump_pseudo_xmlrX��NUexpose_internalsrY��NUsectsubtitle_xformrZ��âUsource_linkr[��NUrfc_referencesr\��NUoutput_encodingr]��Uutf-8r^��U source_urlr_��NUinput_encodingr`��U utf-8-sigra��U_disable_configrb��NU id_prefixrc��U�U tab_widthrd��KUerror_encodingre��UUTF-8rf��U_sourcerg��hUgettext_compactrh��àU generatorri��NUdump_internalsrj��NUsmart_quotesrk��âUpep_base_urlrl��U https://www.python.org/dev/peps/rm��Usyntax_highlightrn��Ulongro��Uinput_encoding_error_handlerrp��jK��Uauto_id_prefixrq��Uidrr��Udoctitle_xformrs��âUstrip_elements_with_classesrt��NU _config_filesru��]Ufile_insertion_enabledrv��àUraw_enabledrw��KU dump_settingsrx��NubUsymbol_footnote_startry��K�Uidsrz��}r{��(hj>��hhhj√��hhSjP��jL��uUsubstitution_namesr|��}r}��h h,h"}r~��(h$]h']h&]Usourcehh%]h)]uU footnotesr��]rÄ��UrefidsrÅ��}rÇ��ub.