Class AbstractDescriptor
- java.lang.Object
-
- de.hybris.platform.impex.jalo.header.AbstractDescriptor
-
- Direct Known Subclasses:
AbstractColumnDescriptor
,HeaderDescriptor
public abstract class AbstractDescriptor extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AbstractDescriptor.ColumnParams
static class
AbstractDescriptor.DescriptorParams
static class
AbstractDescriptor.HeaderParams
-
Constructor Summary
Constructors Constructor Description AbstractDescriptor(java.lang.String expr)
Self-parsing constructor.AbstractDescriptor(java.lang.String expr, AbstractDescriptor.DescriptorParams params)
Non-parsing constructor.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract HeaderCellTranslator
createTranslator(java.lang.String expr)
Creates the translator class which parses the own definition text of this descriptor.static java.util.List<AbstractDescriptor.ColumnParams>[]
extractItemPathElements(java.lang.String expr)
Parses pattern elements as follows:static java.util.Map<java.lang.String,java.lang.String>
extractModifiersMap(java.lang.String expression)
Helper method to extract modifiers from the definition text of the following syntax:java.lang.String
getDefinitionSrc()
AbstractDescriptor.DescriptorParams
getDescriptorData()
protected HeaderCellTranslator
getDescriptorTranslator()
static AbstractDescriptor.ColumnParams
parseColumnDescriptor(java.lang.String expr)
Parses column descriptors like this:static AbstractDescriptor.HeaderParams
parseHeaderDescriptor(java.lang.String expr)
Parses header descriptors like this:protected abstract void
validate()
-
-
-
Constructor Detail
-
AbstractDescriptor
public AbstractDescriptor(java.lang.String expr, AbstractDescriptor.DescriptorParams params) throws HeaderValidationException
Non-parsing constructor.- Parameters:
expr
- source (optional)params
- the already parsed header params- Throws:
HeaderValidationException
-
AbstractDescriptor
public AbstractDescriptor(java.lang.String expr) throws HeaderValidationException
Self-parsing constructor.- Parameters:
expr
-- Throws:
HeaderValidationException
-
-
Method Detail
-
getDefinitionSrc
public java.lang.String getDefinitionSrc()
-
getDescriptorTranslator
protected HeaderCellTranslator getDescriptorTranslator()
-
createTranslator
protected abstract HeaderCellTranslator createTranslator(java.lang.String expr)
Creates the translator class which parses the own definition text of this descriptor.- Parameters:
expr
- the definition text- Returns:
- the translator instance
-
getDescriptorData
public AbstractDescriptor.DescriptorParams getDescriptorData()
- Returns:
- the parsed descriptor data object.
-
extractModifiersMap
public static java.util.Map<java.lang.String,java.lang.String> extractModifiersMap(java.lang.String expression) throws HeaderValidationException
Helper method to extract modifiers from the definition text of the following syntax:{key} '=' ( {value} | '\''{value} '\'' ) ( ',' {key} '=' ( {value} | '\''{value} '\'' ) )*
.
- Parameters:
expression
-- Returns:
- Map
- Throws:
HeaderValidationException
-
extractItemPathElements
public static final java.util.List<AbstractDescriptor.ColumnParams>[] extractItemPathElements(java.lang.String expr) throws HeaderValidationException
Parses pattern elements as follows:{qualifer}('['{modifiersExpr}']')? (','{qualifer}('['{modifiersExpr}']')?)*
- Parameters:
expr
-- Returns:
- List
- Throws:
HeaderValidationException
-
parseHeaderDescriptor
public static final AbstractDescriptor.HeaderParams parseHeaderDescriptor(java.lang.String expr) throws HeaderValidationException
Parses header descriptors like this:{mode} {type} ( '[' {modifiersExpr} ']'
.
- Parameters:
expr
-- Returns:
- HeaderParams
- Throws:
HeaderValidationException
-
parseColumnDescriptor
public static final AbstractDescriptor.ColumnParams parseColumnDescriptor(java.lang.String expr) throws HeaderValidationException
Parses column descriptors like this:{qualifier} ( '(' {itemPathExpr} ')' )? ( '[' {modifierExpr} ']' ) ?
- Parameters:
expr
-- Returns:
- ColumnParams
- Throws:
HeaderValidationException
-
validate
protected abstract void validate() throws HeaderValidationException
- Throws:
HeaderValidationException
-
-