Class ValidateCsv
java.lang.Object
org.apache.nifi.components.AbstractConfigurableComponent
org.apache.nifi.processor.AbstractSessionFactoryProcessor
org.apache.nifi.processor.AbstractProcessor
org.apache.nifi.processors.standard.ValidateCsv
- All Implemented Interfaces:
org.apache.nifi.components.ConfigurableComponent,org.apache.nifi.processor.Processor
@SideEffectFree
@SupportsBatching
@InputRequirement(INPUT_REQUIRED)
@Tags({"csv","schema","validation"})
@CapabilityDescription("Validates the contents of FlowFiles or a FlowFile attribute value against a user-specified CSV schema. Take a look at the additional documentation of this processor for some schema examples.")
@WritesAttribute(attribute="count.valid.lines",description="If line by line validation, number of valid lines extracted from the source data") @WritesAttribute(attribute="count.invalid.lines",description="If line by line validation, number of invalid lines extracted from the source data") @WritesAttribute(attribute="count.total.lines",description="If line by line validation, total number of lines in the source data") @WritesAttribute(attribute="validation.error.message",description="For flow files routed to invalid, message of the first validation error")
public class ValidateCsv
extends org.apache.nifi.processor.AbstractProcessor
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate classThis is required to avoid the side effect of Parse* cell processors. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorprivate static final List<org.apache.nifi.components.PropertyDescriptor> static final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.processor.Relationshipstatic final org.apache.nifi.processor.Relationshipprivate static final Set<org.apache.nifi.processor.Relationship> private static final Stringprivate static final Stringstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.AllowableValuestatic final org.apache.nifi.components.AllowableValuestatic final org.apache.nifi.components.PropertyDescriptor -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Collection<org.apache.nifi.components.ValidationResult> customValidate(org.apache.nifi.components.ValidationContext context) org.supercsv.prefs.CsvPreferencegetPreference(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.flowfile.FlowFile flowFile) private org.supercsv.cellprocessor.ift.CellProcessorgetProcessor(String method, String argument) Set<org.apache.nifi.processor.Relationship> protected List<org.apache.nifi.components.PropertyDescriptor> voidonTrigger(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.processor.ProcessSession session) private org.supercsv.cellprocessor.ift.CellProcessor[]parseSchema(String schema) Method used to parse the string supplied by the user.private byte[]private StringsetProcessor(String remaining, List<org.supercsv.cellprocessor.ift.CellProcessor> processorsList) Methods inherited from class org.apache.nifi.processor.AbstractProcessor
onTriggerMethods inherited from class org.apache.nifi.processor.AbstractSessionFactoryProcessor
getControllerServiceLookup, getIdentifier, getLogger, getNodeTypeProvider, init, initialize, isConfigurationRestored, isScheduled, toString, updateConfiguredRestoredTrue, updateScheduledFalse, updateScheduledTrueMethods inherited from class org.apache.nifi.components.AbstractConfigurableComponent
equals, getPropertyDescriptor, getPropertyDescriptors, getSupportedDynamicPropertyDescriptor, hashCode, onPropertyModified, validateMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.nifi.components.ConfigurableComponent
getPropertyDescriptor, getPropertyDescriptors, onPropertyModified, validateMethods inherited from interface org.apache.nifi.processor.Processor
isStateful, migrateProperties, migrateRelationships
-
Field Details
-
ALLOWED_OPERATORS
-
ROUTE_WHOLE_FLOW_FILE
- See Also:
-
ROUTE_LINES_INDIVIDUALLY
- See Also:
-
VALIDATE_WHOLE_FLOWFILE
public static final org.apache.nifi.components.AllowableValue VALIDATE_WHOLE_FLOWFILE -
VALIDATE_LINES_INDIVIDUALLY
public static final org.apache.nifi.components.AllowableValue VALIDATE_LINES_INDIVIDUALLY -
SCHEMA
public static final org.apache.nifi.components.PropertyDescriptor SCHEMA -
HEADER
public static final org.apache.nifi.components.PropertyDescriptor HEADER -
QUOTE_CHARACTER
public static final org.apache.nifi.components.PropertyDescriptor QUOTE_CHARACTER -
MAX_LINES_PER_ROW
public static final org.apache.nifi.components.PropertyDescriptor MAX_LINES_PER_ROW -
DELIMITER_CHARACTER
public static final org.apache.nifi.components.PropertyDescriptor DELIMITER_CHARACTER -
END_OF_LINE_CHARACTER
public static final org.apache.nifi.components.PropertyDescriptor END_OF_LINE_CHARACTER -
VALIDATION_STRATEGY
public static final org.apache.nifi.components.PropertyDescriptor VALIDATION_STRATEGY -
CSV_SOURCE_ATTRIBUTE
public static final org.apache.nifi.components.PropertyDescriptor CSV_SOURCE_ATTRIBUTE -
INCLUDE_ALL_VIOLATIONS
public static final org.apache.nifi.components.PropertyDescriptor INCLUDE_ALL_VIOLATIONS -
PROPERTY_DESCRIPTORS
-
REL_VALID
public static final org.apache.nifi.processor.Relationship REL_VALID -
REL_INVALID
public static final org.apache.nifi.processor.Relationship REL_INVALID -
RELATIONSHIPS
-
-
Constructor Details
-
ValidateCsv
public ValidateCsv()
-
-
Method Details
-
getRelationships
- Specified by:
getRelationshipsin interfaceorg.apache.nifi.processor.Processor- Overrides:
getRelationshipsin classorg.apache.nifi.processor.AbstractSessionFactoryProcessor
-
getSupportedPropertyDescriptors
- Overrides:
getSupportedPropertyDescriptorsin classorg.apache.nifi.components.AbstractConfigurableComponent
-
customValidate
protected Collection<org.apache.nifi.components.ValidationResult> customValidate(org.apache.nifi.components.ValidationContext context) - Overrides:
customValidatein classorg.apache.nifi.components.AbstractConfigurableComponent
-
getPreference
public org.supercsv.prefs.CsvPreference getPreference(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.flowfile.FlowFile flowFile) -
parseSchema
Method used to parse the string supplied by the user. The string is converted to a list of cell processors used to validate the CSV data.- Parameters:
schema- Schema to parse
-
setProcessor
-
getProcessor
-
onTrigger
public void onTrigger(org.apache.nifi.processor.ProcessContext context, org.apache.nifi.processor.ProcessSession session) - Specified by:
onTriggerin classorg.apache.nifi.processor.AbstractProcessor
-
print
-