Class GroupByMeta
- java.lang.Object
-
- org.pentaho.di.trans.step.BaseStepMeta
-
- org.pentaho.di.trans.steps.groupby.GroupByMeta
-
- All Implemented Interfaces:
Cloneable
,StepAttributesInterface
,StepMetaInterface
public class GroupByMeta extends BaseStepMeta implements StepMetaInterface
Created on 02-jun-2003
-
-
Field Summary
Fields Modifier and Type Field Description static int
TYPE_GROUP_AVERAGE
static int
TYPE_GROUP_CONCAT_COMMA
static int
TYPE_GROUP_CONCAT_STRING
static int
TYPE_GROUP_COUNT_ALL
static int
TYPE_GROUP_COUNT_ANY
static int
TYPE_GROUP_COUNT_DISTINCT
static int
TYPE_GROUP_CUMULATIVE_AVERAGE
static int
TYPE_GROUP_CUMULATIVE_SUM
static int
TYPE_GROUP_FIRST
static int
TYPE_GROUP_FIRST_INCL_NULL
static int
TYPE_GROUP_LAST
static int
TYPE_GROUP_LAST_INCL_NULL
static int
TYPE_GROUP_MAX
static int
TYPE_GROUP_MEDIAN
static int
TYPE_GROUP_MIN
static int
TYPE_GROUP_NONE
static int
TYPE_GROUP_PERCENTILE
static int
TYPE_GROUP_PERCENTILE_NEAREST_RANK
static int
TYPE_GROUP_STANDARD_DEVIATION
static int
TYPE_GROUP_STANDARD_DEVIATION_SAMPLE
static int
TYPE_GROUP_SUM
static String[]
typeGroupCode
static String[]
typeGroupLongDesc
-
Fields inherited from class org.pentaho.di.trans.step.BaseStepMeta
attributes, databases, log, loggingObject, parentStepMeta, repository, STEP_ATTRIBUTES_FILE
-
-
Constructor Summary
Constructors Constructor Description GroupByMeta()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
allocate(int sizegroup, int nrfields)
void
check(List<org.pentaho.di.core.CheckResultInterface> remarks, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore)
Checks the settings of this step and puts the findings in a remarks List.Object
clone()
Make an exact copy of this step, make sure to explicitly copy Collections etc.String[]
getAggregateField()
String
getAggregateIgnoredField()
int[]
getAggregateType()
String
getDirectory()
void
getFields(org.pentaho.di.core.row.RowMetaInterface rowMeta, String origin, org.pentaho.di.core.row.RowMetaInterface[] info, StepMeta nextStep, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore)
Gets the fields.String[]
getGroupField()
String
getLineNrInGroupField()
String
getPrefix()
StepInterface
getStep(StepMeta stepMeta, StepDataInterface stepDataInterface, int cnr, TransMeta transMeta, Trans trans)
Get the executing step, needed by Trans to launch a step.StepDataInterface
getStepData()
Get a new instance of the appropriate data class.StepMetaInjectionInterface
getStepMetaInjectionInterface()
String[]
getSubjectField()
TransMeta.TransformationType[]
getSupportedTransformationTypes()
static int
getType(String desc)
static String
getTypeDesc(int i)
static String
getTypeDescLong(int i)
String[]
getValueField()
String
getXML()
Produces the XML string that describes this step's information.boolean
isAddingLineNrInGroup()
boolean
isAggregateIgnored()
boolean
isAlwaysGivingBackOneRow()
void
loadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, org.pentaho.metastore.api.IMetaStore metaStore)
Load the values for this step from an XML Nodeboolean
passAllRows()
void
readRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases)
Read the steps information from a Kettle repositoryvoid
saveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step)
Save the steps data into a Kettle repositoryvoid
setAddingLineNrInGroup(boolean addingLineNrInGroup)
void
setAggregateField(String[] aggregateField)
void
setAggregateIgnored(boolean aggregateIgnored)
void
setAggregateIgnoredField(String aggregateIgnoredField)
void
setAggregateType(int[] aggregateType)
void
setAlwaysGivingBackOneRow(boolean alwaysGivingBackOneRow)
void
setDefault()
Set default valuesvoid
setDirectory(String directory)
void
setGroupField(String[] groupField)
void
setLineNrInGroupField(String lineNrInGroupField)
void
setPassAllRows(boolean passAllRows)
void
setPrefix(String prefix)
void
setSubjectField(String[] subjectField)
void
setValueField(String[] valueField)
-
Methods inherited from class org.pentaho.di.trans.step.BaseStepMeta
analyseImpact, analyseImpact, cancelQueries, check, check, createEntry, excludeFromCopyDistributeVerification, excludeFromRowLayoutVerification, exportResources, exportResources, extractStepMetadataEntries, findAttribute, findParent, findParentEntry, getActiveReferencedObjectDescription, getDescription, getDialogClassName, getFields, getLog, getLogChannelId, getName, getObjectCopy, getObjectId, getObjectRevision, getObjectType, getOptionalStreams, getParent, getParentStepMeta, getReferencedObjectDescriptions, getRepCode, getRepositoryDirectory, getRequiredFields, getRequiredFields, getResourceDependencies, getSQLStatements, getSQLStatements, getStepInjectionMetadataEntries, getStepIOMeta, getStepIOMeta, getTableFields, getTooltip, getUsedArguments, getUsedDatabaseConnections, getUsedLibraries, getXmlCode, handleStreamSelection, hasChanged, hasRepositoryReferences, isBasic, isDebug, isDetailed, isReferencedObjectEnabled, isRowLevel, loadReferencedObject, loadReferencedObject, loadStepAttributes, loadXML, loadXML, logBasic, logBasic, logDebug, logDebug, logDetailed, logDetailed, logError, logError, logError, logMinimal, logMinimal, logRowlevel, logRowlevel, lookupRepositoryReferences, readRep, readRep, resetStepIoMeta, saveRep, searchInfoAndTargetSteps, setChanged, setChanged, setParentStepMeta, setStepIOMeta, supportsErrorHandling
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.pentaho.di.trans.step.StepMetaInterface
analyseImpact, analyseImpact, cancelQueries, check, cleanAfterHopFromRemove, cleanAfterHopFromRemove, cleanAfterHopToRemove, excludeFromCopyDistributeVerification, excludeFromRowLayoutVerification, exportResources, exportResources, extractStepMetadataEntries, fetchTransMeta, getActiveReferencedObjectDescription, getDialogClassName, getFields, getOptionalStreams, getParentStepMeta, getReferencedObjectDescriptions, getRequiredFields, getResourceDependencies, getSQLStatements, getSQLStatements, getStepIOMeta, getTableFields, getUsedArguments, getUsedDatabaseConnections, getUsedLibraries, handleStreamSelection, hasChanged, hasRepositoryReferences, isReferencedObjectEnabled, loadReferencedObject, loadXML, lookupRepositoryReferences, passDataToServletOutput, readRep, resetStepIoMeta, saveRep, searchInfoAndTargetSteps, setChanged, setParentStepMeta, supportsErrorHandling
-
-
-
-
Field Detail
-
TYPE_GROUP_NONE
public static final int TYPE_GROUP_NONE
- See Also:
- Constant Field Values
-
TYPE_GROUP_SUM
public static final int TYPE_GROUP_SUM
- See Also:
- Constant Field Values
-
TYPE_GROUP_AVERAGE
public static final int TYPE_GROUP_AVERAGE
- See Also:
- Constant Field Values
-
TYPE_GROUP_MEDIAN
public static final int TYPE_GROUP_MEDIAN
- See Also:
- Constant Field Values
-
TYPE_GROUP_PERCENTILE
public static final int TYPE_GROUP_PERCENTILE
- See Also:
- Constant Field Values
-
TYPE_GROUP_MIN
public static final int TYPE_GROUP_MIN
- See Also:
- Constant Field Values
-
TYPE_GROUP_MAX
public static final int TYPE_GROUP_MAX
- See Also:
- Constant Field Values
-
TYPE_GROUP_COUNT_ALL
public static final int TYPE_GROUP_COUNT_ALL
- See Also:
- Constant Field Values
-
TYPE_GROUP_CONCAT_COMMA
public static final int TYPE_GROUP_CONCAT_COMMA
- See Also:
- Constant Field Values
-
TYPE_GROUP_FIRST
public static final int TYPE_GROUP_FIRST
- See Also:
- Constant Field Values
-
TYPE_GROUP_LAST
public static final int TYPE_GROUP_LAST
- See Also:
- Constant Field Values
-
TYPE_GROUP_FIRST_INCL_NULL
public static final int TYPE_GROUP_FIRST_INCL_NULL
- See Also:
- Constant Field Values
-
TYPE_GROUP_LAST_INCL_NULL
public static final int TYPE_GROUP_LAST_INCL_NULL
- See Also:
- Constant Field Values
-
TYPE_GROUP_CUMULATIVE_SUM
public static final int TYPE_GROUP_CUMULATIVE_SUM
- See Also:
- Constant Field Values
-
TYPE_GROUP_CUMULATIVE_AVERAGE
public static final int TYPE_GROUP_CUMULATIVE_AVERAGE
- See Also:
- Constant Field Values
-
TYPE_GROUP_STANDARD_DEVIATION
public static final int TYPE_GROUP_STANDARD_DEVIATION
- See Also:
- Constant Field Values
-
TYPE_GROUP_CONCAT_STRING
public static final int TYPE_GROUP_CONCAT_STRING
- See Also:
- Constant Field Values
-
TYPE_GROUP_COUNT_DISTINCT
public static final int TYPE_GROUP_COUNT_DISTINCT
- See Also:
- Constant Field Values
-
TYPE_GROUP_COUNT_ANY
public static final int TYPE_GROUP_COUNT_ANY
- See Also:
- Constant Field Values
-
TYPE_GROUP_STANDARD_DEVIATION_SAMPLE
public static final int TYPE_GROUP_STANDARD_DEVIATION_SAMPLE
- See Also:
- Constant Field Values
-
TYPE_GROUP_PERCENTILE_NEAREST_RANK
public static final int TYPE_GROUP_PERCENTILE_NEAREST_RANK
- See Also:
- Constant Field Values
-
typeGroupCode
public static final String[] typeGroupCode
-
typeGroupLongDesc
public static final String[] typeGroupLongDesc
-
-
Method Detail
-
getAggregateField
public String[] getAggregateField()
- Returns:
- Returns the aggregateField.
-
setAggregateField
public void setAggregateField(String[] aggregateField)
- Parameters:
aggregateField
- The aggregateField to set.
-
isAggregateIgnored
public boolean isAggregateIgnored()
- Returns:
- Returns the aggregateIgnored.
-
setAggregateIgnored
public void setAggregateIgnored(boolean aggregateIgnored)
- Parameters:
aggregateIgnored
- The aggregateIgnored to set.
-
getAggregateIgnoredField
public String getAggregateIgnoredField()
- Returns:
- Returns the aggregateIgnoredField.
-
setAggregateIgnoredField
public void setAggregateIgnoredField(String aggregateIgnoredField)
- Parameters:
aggregateIgnoredField
- The aggregateIgnoredField to set.
-
getAggregateType
public int[] getAggregateType()
- Returns:
- Returns the aggregateType.
-
setAggregateType
public void setAggregateType(int[] aggregateType)
- Parameters:
aggregateType
- The aggregateType to set.
-
getGroupField
public String[] getGroupField()
- Returns:
- Returns the groupField.
-
setGroupField
public void setGroupField(String[] groupField)
- Parameters:
groupField
- The groupField to set.
-
passAllRows
public boolean passAllRows()
- Returns:
- Returns the passAllRows.
-
setPassAllRows
public void setPassAllRows(boolean passAllRows)
- Parameters:
passAllRows
- The passAllRows to set.
-
getSubjectField
public String[] getSubjectField()
- Returns:
- Returns the subjectField.
-
setSubjectField
public void setSubjectField(String[] subjectField)
- Parameters:
subjectField
- The subjectField to set.
-
getValueField
public String[] getValueField()
- Returns:
- Returns the valueField.
-
setValueField
public void setValueField(String[] valueField)
- Parameters:
valueField
- The valueField to set.
-
loadXML
public void loadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleXMLException
Description copied from interface:StepMetaInterface
Load the values for this step from an XML Node- Specified by:
loadXML
in interfaceStepMetaInterface
- Overrides:
loadXML
in classBaseStepMeta
- Parameters:
stepnode
- the Node to get the info fromdatabases
- The available list of databases to reference tometaStore
- the metastore to optionally load external reference metadata from- Throws:
org.pentaho.di.core.exception.KettleXMLException
- When an unexpected XML error occurred. (malformed etc.)
-
allocate
public void allocate(int sizegroup, int nrfields)
-
clone
public Object clone()
Description copied from interface:StepMetaInterface
Make an exact copy of this step, make sure to explicitly copy Collections etc.- Specified by:
clone
in interfaceStepMetaInterface
- Overrides:
clone
in classBaseStepMeta
- Returns:
- an exact copy of this step
-
getType
public static final int getType(String desc)
-
getTypeDesc
public static final String getTypeDesc(int i)
-
getTypeDescLong
public static final String getTypeDescLong(int i)
-
setDefault
public void setDefault()
Description copied from interface:StepMetaInterface
Set default values- Specified by:
setDefault
in interfaceStepMetaInterface
-
getFields
public void getFields(org.pentaho.di.core.row.RowMetaInterface rowMeta, String origin, org.pentaho.di.core.row.RowMetaInterface[] info, StepMeta nextStep, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore)
Description copied from class:BaseStepMeta
Gets the fields.- Specified by:
getFields
in interfaceStepMetaInterface
- Overrides:
getFields
in classBaseStepMeta
- Parameters:
rowMeta
- the input row meta that is modified in this method to reflect the output row metadata of the steporigin
- Name of the step to use as input for the origin field in the valuesinfo
- Fields used as extra lookup informationnextStep
- the next step that is targetedspace
- the space The variable space to use to replace variablesrepository
- the repository to use to load Kettle metadata objects impacting the output fieldsmetaStore
- the MetaStore to use to load additional external data or metadata impacting the output fields
-
getXML
public String getXML()
Description copied from class:BaseStepMeta
Produces the XML string that describes this step's information.- Specified by:
getXML
in interfaceStepMetaInterface
- Overrides:
getXML
in classBaseStepMeta
- Returns:
- String containing the XML describing this step.
-
readRep
public void readRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases) throws org.pentaho.di.core.exception.KettleException
Description copied from interface:StepMetaInterface
Read the steps information from a Kettle repository- Specified by:
readRep
in interfaceStepMetaInterface
- Overrides:
readRep
in classBaseStepMeta
- Parameters:
rep
- The repository to read frommetaStore
- The MetaStore to read external information fromid_step
- The step IDdatabases
- The databases to reference- Throws:
org.pentaho.di.core.exception.KettleException
- When an unexpected error occurred (database, network, etc)
-
saveRep
public void saveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step) throws org.pentaho.di.core.exception.KettleException
Description copied from interface:StepMetaInterface
Save the steps data into a Kettle repository- Specified by:
saveRep
in interfaceStepMetaInterface
- Overrides:
saveRep
in classBaseStepMeta
- Parameters:
rep
- The Kettle repository to save tometaStore
- the metaStore to optionally write toid_transformation
- The transformation IDid_step
- The step ID- Throws:
org.pentaho.di.core.exception.KettleException
- When an unexpected error occurred (database, network, etc)
-
check
public void check(List<org.pentaho.di.core.CheckResultInterface> remarks, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore)
Description copied from interface:StepMetaInterface
Checks the settings of this step and puts the findings in a remarks List.- Specified by:
check
in interfaceStepMetaInterface
- Overrides:
check
in classBaseStepMeta
- Parameters:
remarks
- The list to put the remarks in @see org.pentaho.di.core.CheckResultstepMeta
- The stepMeta to help checkingprev
- The fields coming from the previous stepinput
- The input step namesoutput
- The output step namesinfo
- The fields that are used as information by the stepspace
- the variable space to resolve variable expressions withrepository
- the repository to use to load Kettle metadata objects impacting the output fieldsmetaStore
- the MetaStore to use to load additional external data or metadata impacting the output fields
-
getStep
public StepInterface getStep(StepMeta stepMeta, StepDataInterface stepDataInterface, int cnr, TransMeta transMeta, Trans trans)
Description copied from interface:StepMetaInterface
Get the executing step, needed by Trans to launch a step.- Specified by:
getStep
in interfaceStepMetaInterface
- Parameters:
stepMeta
- The step infostepDataInterface
- the step data interface linked to this step. Here the step can store temporary data, database connections, etc.cnr
- The copy nr to gettransMeta
- The transformation infotrans
- The launching transformation
-
getStepData
public StepDataInterface getStepData()
Description copied from interface:StepMetaInterface
Get a new instance of the appropriate data class. This data class implements the StepDataInterface. It basically contains the persisting data that needs to live on, even if a worker thread is terminated.- Specified by:
getStepData
in interfaceStepMetaInterface
- Returns:
- The appropriate StepDataInterface class.
-
getDirectory
public String getDirectory()
- Returns:
- Returns the directory.
-
setDirectory
public void setDirectory(String directory)
- Parameters:
directory
- The directory to set.
-
getPrefix
public String getPrefix()
- Returns:
- Returns the prefix.
-
setPrefix
public void setPrefix(String prefix)
- Parameters:
prefix
- The prefix to set.
-
isAddingLineNrInGroup
public boolean isAddingLineNrInGroup()
- Returns:
- the addingLineNrInGroup
-
setAddingLineNrInGroup
public void setAddingLineNrInGroup(boolean addingLineNrInGroup)
- Parameters:
addingLineNrInGroup
- the addingLineNrInGroup to set
-
getLineNrInGroupField
public String getLineNrInGroupField()
- Returns:
- the lineNrInGroupField
-
setLineNrInGroupField
public void setLineNrInGroupField(String lineNrInGroupField)
- Parameters:
lineNrInGroupField
- the lineNrInGroupField to set
-
isAlwaysGivingBackOneRow
public boolean isAlwaysGivingBackOneRow()
- Returns:
- the alwaysGivingBackOneRow
-
setAlwaysGivingBackOneRow
public void setAlwaysGivingBackOneRow(boolean alwaysGivingBackOneRow)
- Parameters:
alwaysGivingBackOneRow
- the alwaysGivingBackOneRow to set
-
getStepMetaInjectionInterface
public StepMetaInjectionInterface getStepMetaInjectionInterface()
- Specified by:
getStepMetaInjectionInterface
in interfaceStepMetaInterface
- Overrides:
getStepMetaInjectionInterface
in classBaseStepMeta
- Returns:
- Optional interface that allows an external program to inject step metadata in a standardized fasion. This method will return null if the interface is not available for this step.
-
getSupportedTransformationTypes
public TransMeta.TransformationType[] getSupportedTransformationTypes()
- Specified by:
getSupportedTransformationTypes
in interfaceStepMetaInterface
- Overrides:
getSupportedTransformationTypes
in classBaseStepMeta
- Returns:
- The supported transformation types that this step supports.
-
-