Utility.Registry.App.V0.Service.AllocationFactory

Templates

template AllocationFactory

Multi-purpose factory template for asset workflows. This template is used to initiate:

  1. Allocations for asset movements settled by a third party

  2. Transfer instructions

  3. Burn requests and offers

  4. Mint requests and offers Note: The name "AllocationFactory" is retained for upgradeability, but the template now covers a broader set of workflows beyond allocations. Instances of this template are disclosed via the operator backend.

Signatory: provider, registrar

Field

Type

Description

provider

Party

The provider party.

registrar

Party

The registrar party.

operator

Party

The operator party.

  • Choice AllocationFactory_OfferBurn

    Offer a 2-step burn. This choice was added as of version 0.4.0 of this package.

    Controller: registrar

    Returns: AllocationFactory_OfferBurn_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    burn

    Burn

    Details of the burn.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: * The InstrumentConfiguration of the holding being burned * The Credential``s of the holder that satisfy the issuer requirements   ``extraArgs.metadata is reserved for extensibility.

  • Choice AllocationFactory_OfferMint

    Offer a 2-step mint. This choice was added as of version 0.4.0 of this package.

    Controller: registrar

    Returns: AllocationFactory_OfferMint_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    mint

    Mint

    Details of the mint.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: * The InstrumentConfiguration of the holding being minted * The Credential``s of the holder that satisfy the issuer requirements   ``extraArgs.metadata is reserved for extensibility.

  • Choice AllocationFactory_RequestBurn

    Request a 2-step burn. This choice was added as of version 0.4.0 of this package.

    Controller: (DA.Internal.Record.getField @"holder" burn)

    Returns: AllocationFactory_RequestBurn_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    burn

    Burn

    Details of the burn.

    holdingCids

    [ContractId Holding]

    Holdings to be used for the burn.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: * The InstrumentConfiguration of the holding being burned * The Credential``s of the holder that satisfy the issuer requirements   ``extraArgs.metadata is reserved for extensibility.

  • Choice AllocationFactory_RequestMint

    Request a 2-step mint. This choice was added as of version 0.4.0 of this package.

    Controller: (DA.Internal.Record.getField @"holder" mint)

    Returns: AllocationFactory_RequestMint_Result

    Field

    Type

    Description

    expectedAdmin

    Party

    Expected admin (registrar) of the factory.

    mint

    Mint

    Details of the mint.

    extraArgs

    ExtraArgs

    Additional context required to exercise the choice. extraArgs.context (provided by the backend) includes: * The InstrumentConfiguration of the holding being minted * The Credential``s of the holder that satisfy the issuer requirements   ``extraArgs.metadata is reserved for extensibility.

  • Choice Archive

    Controller: provider, registrar

    Returns: ()

    (no fields)

  • interface instance AllocationFactory for AllocationFactory

  • interface instance BurnMintFactory for AllocationFactory

  • interface instance TransferFactory for AllocationFactory

Data Types

data AllocationFactory_OfferBurn_Result

Result of offering a burn via the ‘AllocationFactory_OfferBurn’ choice.

AllocationFactory_OfferBurn_Result

Field

Type

Description

burnOfferCid

ContractId BurnOffer

The burn offer contract to accept.

meta

Metadata

Additional metadata.

data AllocationFactory_OfferMint_Result

Result of offering a mint via the ‘AllocationFactory_OfferMint’ choice.

AllocationFactory_OfferMint_Result

Field

Type

Description

mintOfferCid

ContractId MintOffer

The mint offer contract to accept.

meta

Metadata

Additional metadata.

data AllocationFactory_RequestBurn_Result

Result of requesting a burn via the ‘AllocationFactory_RequestBurn’ choice.

AllocationFactory_RequestBurn_Result

Field

Type

Description

burnRequestCid

ContractId BurnRequest

The burn request contract to accept.

remaining

Optional (ContractId Holding)

Any remaining holding after splitting off the amount for the burn.

meta

Metadata

Additional metadata.

data AllocationFactory_RequestMint_Result

Result of requesting a mint via the ‘AllocationFactory_RequestMint’ choice.

AllocationFactory_RequestMint_Result

Field

Type

Description

mintRequestCid

ContractId MintRequest

The mint request contract to accept.

meta

Metadata

Additional metadata.