.. _module-utility-registry-holding-v0-holding-26903: Utility.Registry.Holding.V0.Holding =================================== Templates --------- .. _type-utility-registry-holding-v0-holding-holding-15575: **template** `Holding `_ Implementation of a transferable and fungible holding\. Signatory\: registrar, owner, getLockers this .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - operator - `Party `_ - Operator of the holding\. * - provider - `Party `_ - Provider of the holding\. * - registrar - `Party `_ - Registrar of the holding\. * - owner - `Party `_ - Owner of the holding\. * - instrument - :ref:`InstrumentIdentifier ` - Instrument of the holding\. * - label - `Text `_ - Label of the holding\. * - amount - `Decimal `_ - Number of units of the holding\. * - lock - `Optional `_ `Lock `_ - Optional lock for the holding\. + **Choice** Archive Controller\: registrar, owner, getLockers this Returns\: () (no fields) + .. _type-utility-registry-holding-v0-holding-holdinglock-3564: **Choice** `Holding_Lock `_ Locks this holding, restricting further actions\. Controller\: registrar, owner, lockers Returns\: `Holding_Lock_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - lockers - :ref:`Parties ` - Parties that restrict actions\. * - context - `Text `_ - Context for the lock\. + .. _type-utility-registry-holding-v0-holding-holdingmerge-44568: **Choice** `Holding_Merge `_ Merges this holding with multiple other holdings into a single consolidated holding\. Controller\: registrar Returns\: `Holding_Merge_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - holdingCids - \[`ContractId `_ `Holding `_\] - The holdings to merge\. + .. _type-utility-registry-holding-v0-holding-holdingsplit-80032: **Choice** `Holding_Split `_ Splits this holding into smaller holdings based on specified amounts\. Controller\: registrar Returns\: `Holding_Split_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - amounts - \[`Decimal `_\] - The quantities to split the holding by\. + .. _type-utility-registry-holding-v0-holding-holdingtransfer-7500: **Choice** `Holding_Transfer `_ Transfers ownership of the this holding to a new owner within the same registrar\. Controller\: registrar, owner, newOwner Returns\: `Holding_Transfer_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - newOwner - `Party `_ - The new owner\. * - newLabel - `Text `_ - The new label for the holding\. + .. _type-utility-registry-holding-v0-holding-holdingunlock-34699: **Choice** `Holding_Unlock `_ Unlocks this holding\. Controller\: getLockers this Returns\: `Holding_Unlock_Result `_ (no fields) Data Types ---------- .. _type-utility-registry-holding-v0-holding-holdinglockresult-15749: **data** `Holding_Lock_Result `_ Result of ``Holding_Lock``\. .. _constr-utility-registry-holding-v0-holding-holdinglockresult-34578: `Holding_Lock_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - holdingCid - `ContractId `_ `Holding `_ - Locked holding\. .. _type-utility-registry-holding-v0-holding-holdingmergeresult-93385: **data** `Holding_Merge_Result `_ Result of a call to ``Holding_Merge``\. .. _constr-utility-registry-holding-v0-holding-holdingmergeresult-41744: `Holding_Merge_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - holdingCid - `ContractId `_ `Holding `_ - The merged holding\. .. _type-utility-registry-holding-v0-holding-holdingsplitresult-42385: **data** `Holding_Split_Result `_ Result of a call to ``Holding_Split``\. .. _constr-utility-registry-holding-v0-holding-holdingsplitresult-70420: `Holding_Split_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - splitCids - \[`ContractId `_ `Holding `_\] - The split holdings\. * - remaining - `Optional `_ (`ContractId `_ `Holding `_) - The remaining holding (if any)\. .. _type-utility-registry-holding-v0-holding-holdingtransferresult-37013: **data** `Holding_Transfer_Result `_ Result of ``Holding_Transfer``\. .. _constr-utility-registry-holding-v0-holding-holdingtransferresult-34034: `Holding_Transfer_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - holdingCid - `ContractId `_ `Holding `_ - Transferred holding\. .. _type-utility-registry-holding-v0-holding-holdingunlockresult-13292: **data** `Holding_Unlock_Result `_ Result of ``Holding_Unlock``\. .. _constr-utility-registry-holding-v0-holding-holdingunlockresult-23131: `Holding_Unlock_Result `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - holdingCid - `ContractId `_ `Holding `_ - Unlocked holding\. .. _type-utility-registry-holding-v0-holding-lock-78516: **data** `Lock `_ Locking details, representing parties that lock the contract and the context of the lock\. .. _constr-utility-registry-holding-v0-holding-lock-63497: `Lock `_ .. list-table:: :widths: 15 10 30 :header-rows: 1 * - Field - Type - Description * - lockers - :ref:`Parties ` - Parties locking the contract\. * - context - `Text `_ - Reason for the lock held by the locking parties\. Functions --------- .. _function-utility-registry-holding-v0-holding-isvalidlock-48317: `isValidLock `_ \: `Optional `_ `Lock `_ \-\> `Bool `_ Validates a lock\. .. _function-utility-registry-holding-v0-holding-getlockers-35608: `getLockers `_ \: `Holding `_ \-\> :ref:`Parties ` Retrieves the lockers of a holding\. .. _function-utility-registry-holding-v0-holding-mustbeunlocked-74136: `mustBeUnlocked `_ \: `CanAssert `_ m \=\> `Holding `_ \-\> m () Asserts that the holding is unlocked\. .. _function-utility-registry-holding-v0-holding-mustbelocked-22751: `mustBeLocked `_ \: `CanAssert `_ m \=\> `Holding `_ \-\> m () Asserts that the holding is locked\. .. _function-utility-registry-holding-v0-holding-assertholding-16239: `assertHolding `_ \: `CanAssert `_ m \=\> `Holding `_ \-\> `Party `_ \-\> `Party `_ \-\> `Party `_ \-\> `Party `_ \-\> :ref:`InstrumentIdentifier ` \-\> `Decimal `_ \-\> `Text `_ \-\> `Optional `_ `Lock `_ \-\> m () Asserts that the holding matches the provided expected values\.