Class XmlFileTransformer
java.lang.Object
org.apache.nifi.toolkit.config.transformer.XmlFileTransformer
- All Implemented Interfaces:
FileTransformer
File Transformer supporting transformation of XML configuration files containing property elements
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final QNameprivate final XMLEventFactoryprivate static final Stringprivate final SensitivePropertyProviderprivate static final QNameprivate static final XMLEventReaderProviderprivate static final Patternprivate final SensitivePropertyProviderprivate final SensitivePropertyProviderFactory -
Constructor Summary
ConstructorsConstructorDescriptionXmlFileTransformer(SensitivePropertyProvider inputSensitivePropertyProvider, SensitivePropertyProviderFactory sensitivePropertyProviderFactory, ProtectionScheme protectionScheme) XML File Transformer with Sensitive Property Provider Factory and Protection Scheme applied when writing output files -
Method Summary
Modifier and TypeMethodDescriptionprivate StartElementgetEncryptedStartElement(StartElement startElement) private StringgetEncryptionAttribute(StartElement startElement) private StringgetNameAttribute(StartElement startElement) private booleanisEncryptionRequired(StartElement startElement) private booleanisEncryptionSupported(String propertyName) voidRead input file using XMLEventReader and write protected values using XMLEventWriterprotected voidtransform(XMLEventReader eventReader, XMLEventWriter eventWriter) Transform input XML Event Reader to output XML Event Writerprivate voidtransformStartElement(XMLEventReader eventReader, XMLEventWriter eventWriter, StartElement startElement, String groupIdentifier)
-
Field Details
-
SENSITIVE_PATTERN
-
NAME_ATTRIBUTE
-
ENCRYPTION_ATTRIBUTE
-
IDENTIFIER_ELEMENT_NAME
- See Also:
-
readerProvider
-
eventFactory
-
inputSensitivePropertyProvider
-
sensitivePropertyProviderFactory
-
sensitivePropertyProvider
-
-
Constructor Details
-
XmlFileTransformer
public XmlFileTransformer(SensitivePropertyProvider inputSensitivePropertyProvider, SensitivePropertyProviderFactory sensitivePropertyProviderFactory, ProtectionScheme protectionScheme) XML File Transformer with Sensitive Property Provider Factory and Protection Scheme applied when writing output files- Parameters:
sensitivePropertyProviderFactory- Sensitive Property Provider Factory for output filesprotectionScheme- Protection Scheme for output files
-
-
Method Details
-
transform
Read input file using XMLEventReader and write protected values using XMLEventWriter- Specified by:
transformin interfaceFileTransformer- Parameters:
inputPath- Input file path to be transformedoutputPath- Output file path containing protected values- Throws:
IOException- Thrown on transformation failures
-
transform
protected void transform(XMLEventReader eventReader, XMLEventWriter eventWriter) throws XMLStreamException Transform input XML Event Reader to output XML Event Writer- Parameters:
eventReader- XML Event ReadereventWriter- XML Event Writer- Throws:
XMLStreamException- Thrown on XML processing failures
-
isEncryptionSupported
-
isEncryptionRequired
-
transformStartElement
private void transformStartElement(XMLEventReader eventReader, XMLEventWriter eventWriter, StartElement startElement, String groupIdentifier) throws XMLStreamException - Throws:
XMLStreamException
-
getNameAttribute
-
getEncryptionAttribute
-
getEncryptedStartElement
-