Interface Product

All Superinterfaces:
com.rosetta.model.lib.RosettaModelObject
All Known Subinterfaces:
Product.ProductBuilder
All Known Implementing Classes:
Product.ProductBuilderImpl, Product.ProductImpl

@RosettaDataType(value="Product", builder=ProductBuilderImpl.class, version="7.0.0-dev.105") @RuneDataType(value="Product", model="cdm", builder=ProductBuilderImpl.class, version="7.0.0-dev.105") public interface Product extends com.rosetta.model.lib.RosettaModelObject
Enables either a TransferableProduct or a NonTransferableProduct to be used in an underlier.
Version:
7.0.0-dev.105
  • Field Details

  • Method Details

    • getTransferableProduct

      TransferableProduct getTransferableProduct()
      A TransferableProduct is a type of financial product which can be held or transferred, represented as an Asset with the addition of specific EconomicTerms.
    • getNonTransferableProduct

      NonTransferableProduct getNonTransferableProduct()
      The non-transferable product data type represents a product that can be traded (as part of a TradableProduct) but cannot be transferred to others.
    • build

      Product build()
      Build Methods
      Specified by:
      build in interface com.rosetta.model.lib.RosettaModelObject
    • toBuilder

      Specified by:
      toBuilder in interface com.rosetta.model.lib.RosettaModelObject
    • builder

      static Product.ProductBuilder builder()
    • metaData

      default com.rosetta.model.lib.meta.RosettaMetaData<? extends Product> metaData()
      Utility Methods
      Specified by:
      metaData in interface com.rosetta.model.lib.RosettaModelObject
    • getType

      @RuneAttribute("@type") default Class<? extends Product> getType()
      Specified by:
      getType in interface com.rosetta.model.lib.RosettaModelObject
    • process

      default void process(com.rosetta.model.lib.path.RosettaPath path, com.rosetta.model.lib.process.Processor processor)
      Specified by:
      process in interface com.rosetta.model.lib.RosettaModelObject