Class AlternativeExpressionTranslator
- java.lang.Object
-
- de.hybris.platform.impex.jalo.translators.AbstractValueTranslator
-
- de.hybris.platform.impex.jalo.translators.SingleValueTranslator
-
- de.hybris.platform.impex.jalo.translators.ItemExpressionTranslator
-
- de.hybris.platform.impex.jalo.translators.AlternativeExpressionTranslator
-
public class AlternativeExpressionTranslator extends ItemExpressionTranslator
Special translator for alternative item reference expressions:INSERT Address; owner( User.uid | Order.code | Item.PK ) ; ... INSERT Product; ...; catalogVersion( catalog( id | name )
Technically this translator contains the first pattern and holds one additional translator for each other pattern. Importing one value tries to import using all patterns in order of occurrence. Exporting chooses the first pattern which provides a assignable type (so never put
Item.PK
in front!).
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class de.hybris.platform.impex.jalo.translators.ItemExpressionTranslator
ItemExpressionTranslator.CombinedSearchResult, ItemExpressionTranslator.ExpressionQuery
-
-
Constructor Summary
Constructors Constructor Description AlternativeExpressionTranslator(ComposedType targetType, java.util.List<AbstractDescriptor.ColumnParams>[] itemPatternLists)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.Object
convertToJalo(java.lang.String valueExpr, Item forItem)
Converts a non-null and non-empty string into a jalo attribute value.protected java.lang.String
convertToString(java.lang.Object value)
Converts a non-null jalo attribute value into its string representation.protected java.lang.String
convertToStringImpl(java.lang.Object value)
protected ItemExpressionTranslator
getAssignableTranslator(java.lang.Object value)
-
Methods inherited from class de.hybris.platform.impex.jalo.translators.ItemExpressionTranslator
addValuePath, buildQuery, checkResolvableAttribute, convertAllToJalo, convertAllToJalo, createAtomicAttributeSubTranslator, createDocumentIDSubTranslator, createItemAttributeSubTranslator, createNewTableAlias, createRelationAttributeSubTranslator, createSubTranslator, cutOff, getDocumentIDFromItemPattern, getEmptyValue, getFullDefaultValueMap, getLanguageByIsoCode, getMostSpecific, getQuery, getTargetType, init, inserIsNullIfNecessary, isLocalizedAndLanguageModifierIsSet, mergeDefaultValues, mergeValues, resolveAttribute, search, searchCombined, searchInChunks, searchItem, toString, validate
-
Methods inherited from class de.hybris.platform.impex.jalo.translators.SingleValueTranslator
exportValue, importValue, isEmpty
-
Methods inherited from class de.hybris.platform.impex.jalo.translators.AbstractValueTranslator
clearStatus, createTranslator, createTranslator, createTranslator, debug, error, getColumnDescriptor, getFlexibleSearch, info, isDebugEnabled, isInfoEnabled, setEmpty, setError, warn, wasEmpty, wasUnresolved
-
-
-
-
Constructor Detail
-
AlternativeExpressionTranslator
public AlternativeExpressionTranslator(ComposedType targetType, java.util.List<AbstractDescriptor.ColumnParams>[] itemPatternLists) throws HeaderValidationException
- Throws:
HeaderValidationException
-
-
Method Detail
-
convertToJalo
protected java.lang.Object convertToJalo(java.lang.String valueExpr, Item forItem)
Description copied from class:SingleValueTranslator
Converts a non-null and non-empty string into a jalo attribute value.- Overrides:
convertToJalo
in classItemExpressionTranslator
- Parameters:
valueExpr
- string to translateforItem
- item instance the translated value will be set to as attribute- Returns:
- Object translated value
-
convertToString
protected java.lang.String convertToString(java.lang.Object value)
Description copied from class:SingleValueTranslator
Converts a non-null jalo attribute value into its string representation.- Overrides:
convertToString
in classItemExpressionTranslator
- Parameters:
value
- value to translate- Returns:
- translated value
-
convertToStringImpl
protected java.lang.String convertToStringImpl(java.lang.Object value)
-
getAssignableTranslator
protected ItemExpressionTranslator getAssignableTranslator(java.lang.Object value)
-
-