Package cdm.product.template
Class TradableProduct.TradableProductBuilderImpl
java.lang.Object
cdm.product.template.TradableProduct.TradableProductBuilderImpl
- All Implemented Interfaces:
TradableProduct,TradableProduct.TradableProductBuilder,com.rosetta.model.lib.RosettaModelObject,com.rosetta.model.lib.RosettaModelObjectBuilder
- Enclosing interface:
TradableProduct
public static class TradableProduct.TradableProductBuilderImpl
extends Object
implements TradableProduct.TradableProductBuilder
Builder Implementation of TradableProduct
-
Nested Class Summary
Nested classes/interfaces inherited from interface cdm.product.template.TradableProduct
TradableProduct.TradableProductBuilder, TradableProduct.TradableProductBuilderImpl, TradableProduct.TradableProductImpl -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected NotionalAdjustmentEnumprotected List<AncillaryParty.AncillaryPartyBuilder> protected List<Counterparty.CounterpartyBuilder> protected Product.ProductBuilderprotected List<TradeLot.TradeLotBuilder> Fields inherited from interface cdm.product.template.TradableProduct
metaData -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAncillaryParty(AncillaryParty _ancillaryParty) addAncillaryParty(AncillaryParty _ancillaryParty, int idx) addAncillaryParty(List<? extends AncillaryParty> ancillaryPartys) addCounterparty(Counterparty _counterparty) addCounterparty(Counterparty _counterparty, int idx) addCounterparty(List<? extends Counterparty> counterpartys) addTradeLot(TradeLot _tradeLot) addTradeLot(TradeLot _tradeLot, int idx) addTradeLot(List<? extends TradeLot> tradeLots) build()Build MethodsbooleanSpecifies the conditions that govern the adjustment to the quantity of a product being traded: e.g. execution, portfolio rebalancing etc.List<? extends AncillaryParty.AncillaryPartyBuilder> Specifies the parties with ancillary roles in the transaction.List<? extends Counterparty.CounterpartyBuilder> Specifies the parties which are the two counterparties to the transaction.getOrCreateAncillaryParty(int index) getOrCreateCounterparty(int index) getOrCreateTradeLot(int index) The underlying product to be included in a contract or execution.List<? extends TradeLot.TradeLotBuilder> Specifies the price, quantity and effective date of each trade lot, when the same product may be traded multiple times in different lots with the same counterparty.booleanhasData()inthashCode()merge(com.rosetta.model.lib.RosettaModelObjectBuilder other, com.rosetta.model.lib.process.BuilderMerger merger) prune()setAdjustment(NotionalAdjustmentEnum _adjustment) setAncillaryParty(List<? extends AncillaryParty> ancillaryPartys) setCounterparty(List<? extends Counterparty> counterpartys) setProduct(Product _product) setTradeLot(List<? extends TradeLot> tradeLots) toString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.rosetta.model.lib.RosettaModelObject
processRosetta, processRosettaMethods inherited from interface com.rosetta.model.lib.RosettaModelObjectBuilder
getIndex, processRosetta, processRosettaMethods inherited from interface cdm.product.template.TradableProduct
getType, metaData, processMethods inherited from interface cdm.product.template.TradableProduct.TradableProductBuilder
process
-
Field Details
-
product
-
tradeLot
-
counterparty
-
ancillaryParty
-
adjustment
-
-
Constructor Details
-
TradableProductBuilderImpl
public TradableProductBuilderImpl()
-
-
Method Details
-
getProduct
@RosettaAttribute(value="product", isRequired=true) @RuneAttribute(value="product", isRequired=true) public Product.ProductBuilder getProduct()Description copied from interface:TradableProductThe underlying product to be included in a contract or execution.- Specified by:
getProductin interfaceTradableProduct- Specified by:
getProductin interfaceTradableProduct.TradableProductBuilder
-
getOrCreateProduct
- Specified by:
getOrCreateProductin interfaceTradableProduct.TradableProductBuilder
-
getTradeLot
@RosettaAttribute(value="tradeLot", isRequired=true) @RuneAttribute(value="tradeLot", isRequired=true) public List<? extends TradeLot.TradeLotBuilder> getTradeLot()Description copied from interface:TradableProductSpecifies the price, quantity and effective date of each trade lot, when the same product may be traded multiple times in different lots with the same counterparty. In a trade increase, a new trade lot is added to the list, with the corresponding effective date. In a trade decrease, the existing trade lot(s) are decreased of the corresponding quantity (and an unwind fee may have to be settled). The multiple cardinality and the ability to increase existing trades is used for Equity Swaps in particular.- Specified by:
getTradeLotin interfaceTradableProduct- Specified by:
getTradeLotin interfaceTradableProduct.TradableProductBuilder
-
getOrCreateTradeLot
- Specified by:
getOrCreateTradeLotin interfaceTradableProduct.TradableProductBuilder
-
getCounterparty
@RosettaAttribute(value="counterparty", isRequired=true) @RuneAttribute(value="counterparty", isRequired=true) public List<? extends Counterparty.CounterpartyBuilder> getCounterparty()Description copied from interface:TradableProductSpecifies the parties which are the two counterparties to the transaction. The product is agnostic to the actual parties to the transaction, with the party references abstracted away from the product definition and replaced by the counterparty enum (e.g. CounterpartyEnum values Party1 or Party2). The counterparty enum can then be positioned in the product (e.g. to specify which counterparty is the payer, receiver etc) and this counterparties attribute, which is positioned outside of the product definition, allows the counterparty enum to be associated with an actual party reference. Body ICMA Corpus MasterAgreement GMRA Global Master Repurchase Agreement GMRA 2011 "The Global Master Repurchase Agreement (GMRA) is a model legal agreement designed for parties transacting repos and is published by the International Capital Market Association (ICMA)." namingConvention "Party" Provision Parties entering into GMRA, as specified on page 1 of the GMRA and under 1. (a).- Specified by:
getCounterpartyin interfaceTradableProduct- Specified by:
getCounterpartyin interfaceTradableProduct.TradableProductBuilder
-
getOrCreateCounterparty
- Specified by:
getOrCreateCounterpartyin interfaceTradableProduct.TradableProductBuilder
-
getAncillaryParty
@RosettaAttribute("ancillaryParty") @RuneAttribute("ancillaryParty") public List<? extends AncillaryParty.AncillaryPartyBuilder> getAncillaryParty()Description copied from interface:TradableProductSpecifies the parties with ancillary roles in the transaction. The product is agnostic to the actual parties involved in the transaction, with the party references abstracted away from the product definition and replaced by the AncillaryRoleEnum. The AncillaryRoleEnum can then be positioned in the product and this AncillaryParty type, which is positioned outside of the product definition, allows the AncillaryRoleEnum to be associated with an actual party reference.- Specified by:
getAncillaryPartyin interfaceTradableProduct- Specified by:
getAncillaryPartyin interfaceTradableProduct.TradableProductBuilder
-
getOrCreateAncillaryParty
- Specified by:
getOrCreateAncillaryPartyin interfaceTradableProduct.TradableProductBuilder
-
getAdjustment
@RosettaAttribute("adjustment") @RuneAttribute("adjustment") public NotionalAdjustmentEnum getAdjustment()Description copied from interface:TradableProductSpecifies the conditions that govern the adjustment to the quantity of a product being traded: e.g. execution, portfolio rebalancing etc. It is typically used in the context of Equity Swaps.- Specified by:
getAdjustmentin interfaceTradableProduct
-
setProduct
@RosettaAttribute(value="product", isRequired=true) @RuneAttribute(value="product", isRequired=true) public TradableProduct.TradableProductBuilder setProduct(Product _product) - Specified by:
setProductin interfaceTradableProduct.TradableProductBuilder
-
addTradeLot
@RosettaAttribute(value="tradeLot", isRequired=true) @RuneAttribute(value="tradeLot", isRequired=true) public TradableProduct.TradableProductBuilder addTradeLot(TradeLot _tradeLot) - Specified by:
addTradeLotin interfaceTradableProduct.TradableProductBuilder
-
addTradeLot
- Specified by:
addTradeLotin interfaceTradableProduct.TradableProductBuilder
-
addTradeLot
- Specified by:
addTradeLotin interfaceTradableProduct.TradableProductBuilder
-
setTradeLot
@RuneAttribute("tradeLot") public TradableProduct.TradableProductBuilder setTradeLot(List<? extends TradeLot> tradeLots) - Specified by:
setTradeLotin interfaceTradableProduct.TradableProductBuilder
-
addCounterparty
@RosettaAttribute(value="counterparty", isRequired=true) @RuneAttribute(value="counterparty", isRequired=true) public TradableProduct.TradableProductBuilder addCounterparty(Counterparty _counterparty) - Specified by:
addCounterpartyin interfaceTradableProduct.TradableProductBuilder
-
addCounterparty
- Specified by:
addCounterpartyin interfaceTradableProduct.TradableProductBuilder
-
addCounterparty
public TradableProduct.TradableProductBuilder addCounterparty(List<? extends Counterparty> counterpartys) - Specified by:
addCounterpartyin interfaceTradableProduct.TradableProductBuilder
-
setCounterparty
@RuneAttribute("counterparty") public TradableProduct.TradableProductBuilder setCounterparty(List<? extends Counterparty> counterpartys) - Specified by:
setCounterpartyin interfaceTradableProduct.TradableProductBuilder
-
addAncillaryParty
@RosettaAttribute("ancillaryParty") @RuneAttribute("ancillaryParty") public TradableProduct.TradableProductBuilder addAncillaryParty(AncillaryParty _ancillaryParty) - Specified by:
addAncillaryPartyin interfaceTradableProduct.TradableProductBuilder
-
addAncillaryParty
public TradableProduct.TradableProductBuilder addAncillaryParty(AncillaryParty _ancillaryParty, int idx) - Specified by:
addAncillaryPartyin interfaceTradableProduct.TradableProductBuilder
-
addAncillaryParty
public TradableProduct.TradableProductBuilder addAncillaryParty(List<? extends AncillaryParty> ancillaryPartys) - Specified by:
addAncillaryPartyin interfaceTradableProduct.TradableProductBuilder
-
setAncillaryParty
@RuneAttribute("ancillaryParty") public TradableProduct.TradableProductBuilder setAncillaryParty(List<? extends AncillaryParty> ancillaryPartys) - Specified by:
setAncillaryPartyin interfaceTradableProduct.TradableProductBuilder
-
setAdjustment
@RosettaAttribute("adjustment") @RuneAttribute("adjustment") public TradableProduct.TradableProductBuilder setAdjustment(NotionalAdjustmentEnum _adjustment) - Specified by:
setAdjustmentin interfaceTradableProduct.TradableProductBuilder
-
build
Description copied from interface:TradableProductBuild Methods- Specified by:
buildin interfacecom.rosetta.model.lib.RosettaModelObject- Specified by:
buildin interfaceTradableProduct
-
toBuilder
- Specified by:
toBuilderin interfacecom.rosetta.model.lib.RosettaModelObject- Specified by:
toBuilderin interfaceTradableProduct
-
prune
- Specified by:
prunein interfacecom.rosetta.model.lib.RosettaModelObjectBuilder- Specified by:
prunein interfaceTradableProduct.TradableProductBuilder
-
hasData
public boolean hasData()- Specified by:
hasDatain interfacecom.rosetta.model.lib.RosettaModelObjectBuilder
-
merge
public TradableProduct.TradableProductBuilder merge(com.rosetta.model.lib.RosettaModelObjectBuilder other, com.rosetta.model.lib.process.BuilderMerger merger) - Specified by:
mergein interfacecom.rosetta.model.lib.RosettaModelObjectBuilder
-
equals
-
hashCode
public int hashCode() -
toString
-