Class ProductVariantRuntimeHelper
java.lang.Object
org.faktorips.runtime.internal.productvariant.ProductVariantRuntimeHelper
Helper class for loading product variants or varied product components respectively.
- Author:
- Stefan Widmaier, FaktorZehn AG
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ProductComponentGenerationcreateNewInstance(ProductComponentGeneration generationTemplate, ProductComponent parentProductCmpt) Creates a new instance of the givenProductComponentGeneration's class.getOriginalProdCmpt(IRuntimeRepository runtimeRepository, Element element) initProductComponentGenerationVariation(IRuntimeRepository runtimeRepository, GenerationTocEntry tocEntry, Element genElement) The given generation is initialized with the data of the original product component generation and the variations defined by the variant.voidinitProductComponentVariation(ProductComponent originalProductComponent, ProductComponent productComponentToBeInitialized, Element prodCmptElement) The given product component is initialized with the data of the original product component and the variations defined by the variant.booleanisProductVariantXML(Element productVariantElement) protected voidloadAndVary(IXmlPersistenceSupport originalObject, Element variationXML, IClRepositoryObject objectToInitialize)
-
Field Details
-
ATTRIBUTE_NAME_VARIED_PRODUCT_CMPT
- See Also:
-
ATTRIBUTE_NAME_RUNTIME_ID
- See Also:
-
-
Constructor Details
-
ProductVariantRuntimeHelper
public ProductVariantRuntimeHelper()
-
-
Method Details
-
initProductComponentVariation
public void initProductComponentVariation(ProductComponent originalProductComponent, ProductComponent productComponentToBeInitialized, Element prodCmptElement) The given product component is initialized with the data of the original product component and the variations defined by the variant.- Parameters:
originalProductComponent- the original product component that provides default valuesproductComponentToBeInitialized- the yet un-initialized product component.prodCmptElement- the XML element containing product component's variation data.
-
initProductComponentGenerationVariation
public IProductComponentGeneration initProductComponentGenerationVariation(IRuntimeRepository runtimeRepository, GenerationTocEntry tocEntry, Element genElement) The given generation is initialized with the data of the original product component generation and the variations defined by the variant.- Parameters:
runtimeRepository- the runtime repository calling this method. It will be used to load the original product component.tocEntry- theGenerationTocEntryfor the requestedProductComponentGenerationgenElement- the XML element containing the variation of a product component generation.
-
createNewInstance
protected ProductComponentGeneration createNewInstance(ProductComponentGeneration generationTemplate, ProductComponent parentProductCmpt) Creates a new instance of the givenProductComponentGeneration's class. Uses the givenProductComponentas new parent.- Parameters:
parentProductCmpt- the new parent component.generationTemplate- the generation a new instance is created of- Returns:
- a new
ProductComponentGenerationinstance of the same class as this class
-
loadAndVary
protected void loadAndVary(IXmlPersistenceSupport originalObject, Element variationXML, IClRepositoryObject objectToInitialize) -
getOriginalProdCmpt
-
isProductVariantXML
-