public class org.apache.nifi.processors.standard.UpdateDatabaseTable extends org.apache.nifi.processor.AbstractProcessor
{
static final org.apache.nifi.components.AllowableValue CREATE_IF_NOT_EXISTS;
static final org.apache.nifi.components.AllowableValue FAIL_IF_NOT_EXISTS;
static final java.lang.String ATTR_OUTPUT_TABLE;
static final org.apache.nifi.components.PropertyDescriptor RECORD_READER;
static final org.apache.nifi.components.PropertyDescriptor DBCP_SERVICE;
static final org.apache.nifi.components.PropertyDescriptor CATALOG_NAME;
static final org.apache.nifi.components.PropertyDescriptor SCHEMA_NAME;
static final org.apache.nifi.components.PropertyDescriptor TABLE_NAME;
static final org.apache.nifi.components.PropertyDescriptor CREATE_TABLE;
static final org.apache.nifi.components.PropertyDescriptor PRIMARY_KEY_FIELDS;
static final org.apache.nifi.components.PropertyDescriptor TRANSLATE_FIELD_NAMES;
static final org.apache.nifi.components.PropertyDescriptor UPDATE_FIELD_NAMES;
static final org.apache.nifi.components.PropertyDescriptor RECORD_WRITER_FACTORY;
static final org.apache.nifi.components.PropertyDescriptor QUOTE_COLUMN_IDENTIFIERS;
static final org.apache.nifi.components.PropertyDescriptor QUOTE_TABLE_IDENTIFIER;
static final org.apache.nifi.components.PropertyDescriptor QUERY_TIMEOUT;
static final org.apache.nifi.components.PropertyDescriptor DB_TYPE;
public static final org.apache.nifi.processor.Relationship REL_SUCCESS;
public static final org.apache.nifi.processor.Relationship REL_FAILURE;
protected static final java.util.Map dbAdapters;
private static final java.util.List propertyDescriptors;
protected static java.util.Set relationships;
public void <init>()
{
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
specialinvoke v.<org.apache.nifi.processor.AbstractProcessor: void <init>()>();
return;
}
protected java.util.List getSupportedPropertyDescriptors()
{
java.util.List v;
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.List propertyDescriptors>;
return v;
}
public java.util.Set getRelationships()
{
java.util.Set v;
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.Set relationships>;
return v;
}
protected java.util.Collection customValidate(org.apache.nifi.components.ValidationContext)
{
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
org.apache.nifi.components.PropertyDescriptor v, v, v, v, v, v;
org.apache.nifi.components.PropertyValue v, v, v, v;
java.util.Map v;
boolean v, v, v, v;
org.apache.nifi.components.ValidationResult$Builder v, v, v, v, v, v, v, v;
java.util.Collection v;
org.apache.nifi.components.AllowableValue v;
org.apache.nifi.components.ValidationContext v;
java.util.ArrayList v;
java.lang.Boolean v;
java.lang.String v, v, v, v, v;
org.apache.nifi.components.ValidationResult v, v;
java.lang.Object v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v := @parameter: org.apache.nifi.components.ValidationContext;
v = new java.util.ArrayList;
v = specialinvoke v.<org.apache.nifi.processor.AbstractProcessor: java.util.Collection customValidate(org.apache.nifi.components.ValidationContext)>(v);
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_WRITER_FACTORY>;
v = interfaceinvoke v.<org.apache.nifi.components.ValidationContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: boolean isSet()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor UPDATE_FIELD_NAMES>;
v = interfaceinvoke v.<org.apache.nifi.components.ValidationContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Boolean asBoolean()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v != 0 goto label;
if v == 0 goto label;
v = new org.apache.nifi.components.ValidationResult$Builder;
specialinvoke v.<org.apache.nifi.components.ValidationResult$Builder: void <init>()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_WRITER_FACTORY>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor: java.lang.String getDisplayName()>();
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult$Builder subject(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult$Builder explanation(java.lang.String)>("Record Writer must be set if \'Update Field Names\' is true");
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult$Builder valid(boolean)>(0);
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult build()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.Map dbAdapters>;
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DB_TYPE>;
v = interfaceinvoke v.<org.apache.nifi.components.ValidationContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue CREATE_IF_NOT_EXISTS>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CREATE_TABLE>;
v = interfaceinvoke v.<org.apache.nifi.components.ValidationContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.processors.standard.db.DatabaseAdapter: boolean supportsCreateTableIfNotExists()>();
if v != 0 goto label;
v = new org.apache.nifi.components.ValidationResult$Builder;
specialinvoke v.<org.apache.nifi.components.ValidationResult$Builder: void <init>()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CREATE_TABLE>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor: java.lang.String getDisplayName()>();
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult$Builder subject(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult$Builder explanation(java.lang.String)>("The specified Database Type does not support Create If Not Exists");
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult$Builder valid(boolean)>(0);
v = virtualinvoke v.<org.apache.nifi.components.ValidationResult$Builder: org.apache.nifi.components.ValidationResult build()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return v;
}
public void onTrigger(org.apache.nifi.processor.ProcessContext, org.apache.nifi.processor.ProcessSession) throws org.apache.nifi.processor.exception.ProcessException
{
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
org.apache.nifi.components.PropertyDescriptor v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.serialization.record.RecordSchema v;
java.util.Map v, v;
org.apache.nifi.components.AllowableValue v;
java.lang.Exception v, v, v;
java.util.stream.Stream v, v, v;
org.apache.nifi.controller.ControllerService v, v, v;
java.lang.Throwable v, v, v, v, v, v, v;
java.lang.Object[] v, v, v, v;
org.apache.nifi.provenance.ProvenanceReporter v;
org.apache.nifi.processor.Relationship v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.processor.ProcessSession v;
java.sql.Connection v;
org.apache.nifi.components.PropertyValue v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.serialization.RecordReader v;
org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder v;
boolean v, v, v, v, v, v;
org.apache.nifi.flowfile.FlowFile v, v, v, v;
java.util.function.Predicate v;
org.apache.nifi.processor.io.StreamCallback v;
java.lang.String[] v;
java.util.HashMap v;
org.apache.nifi.logging.ComponentLog v, v, v, v;
java.util.function.Function v;
org.apache.nifi.processor.exception.ProcessException v, v, v, v;
java.util.HashSet v, v;
java.lang.Boolean v, v, v, v;
org.apache.nifi.processor.ProcessContext v;
java.util.function.Consumer v;
java.lang.Class v, v, v, v, v;
java.lang.Object v;
java.io.InputStream v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v := @parameter: org.apache.nifi.processor.ProcessContext;
v := @parameter: org.apache.nifi.processor.ProcessSession;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile get()>();
if v != null goto label;
return;
label:
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_READER>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.controller.ControllerService asControllerService(java.lang.Class)>(class "Lorg/apache/nifi/serialization/RecordReaderFactory;");
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_WRITER_FACTORY>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.controller.ControllerService asControllerService(java.lang.Class)>(class "Lorg/apache/nifi/serialization/RecordSetWriterFactory;");
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CATALOG_NAME>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor SCHEMA_NAME>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor TABLE_NAME>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor PRIMARY_KEY_FIELDS>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
label:
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: java.io.InputStream read(org.apache.nifi.flowfile.FlowFile)>(v);
label:
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = interfaceinvoke v.<org.apache.nifi.serialization.RecordReaderFactory: org.apache.nifi.serialization.RecordReader createRecordReader(org.apache.nifi.flowfile.FlowFile,java.io.InputStream,org.apache.nifi.logging.ComponentLog)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.processor.exception.ProcessException;
specialinvoke v.<org.apache.nifi.processor.exception.ProcessException: void <init>(java.lang.String,java.lang.Throwable)>("Unable to create RecordReader", v);
throw v;
label:
if v == null goto label;
virtualinvoke v.<java.io.InputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = newarray (java.lang.Object)[2];
v = class "Lorg/apache/nifi/serialization/RecordReader;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v[0] = v;
v[1] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void error(java.lang.String,java.lang.Object[],java.lang.Throwable)>("Failed to create {} for {} - routing to failure", v, v);
v = virtualinvoke v.<org.apache.nifi.processor.exception.ProcessException: java.lang.Throwable getCause()>();
if v == null goto label;
v = v;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getLocalizedMessage()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getLocalizedMessage()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u Thrown");
label:
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, "record.error.message", v);
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u Thrown");
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, "record.error.message", v);
label:
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_FAILURE>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
label:
return;
label:
v = interfaceinvoke v.<org.apache.nifi.serialization.RecordReader: org.apache.nifi.serialization.record.RecordSchema getSchema()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CREATE_TABLE>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue CREATE_IF_NOT_EXISTS>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getValue()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor UPDATE_FIELD_NAMES>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Boolean asBoolean()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor TRANSLATE_FIELD_NAMES>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Boolean asBoolean()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v != null goto label;
if v == 0 goto label;
v = new org.apache.nifi.processor.exception.ProcessException;
specialinvoke v.<org.apache.nifi.processor.exception.ProcessException: void <init>(java.lang.String)>("Record Writer must be set if \'Update Field Names\' is true");
throw v;
label:
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DBCP_SERVICE>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.controller.ControllerService asControllerService(java.lang.Class)>(class "Lorg/apache/nifi/dbcp/DBCPService;");
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.Map dbAdapters>;
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DB_TYPE>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = interfaceinvoke v.<org.apache.nifi.dbcp.DBCPService: java.sql.Connection getConnection()>();
label:
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUOTE_TABLE_IDENTIFIER>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Boolean asBoolean()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUOTE_COLUMN_IDENTIFIERS>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Boolean asBoolean()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v = new java.util.HashMap;
v = interfaceinvoke v.<org.apache.nifi.flowfile.FlowFile: java.util.Map getAttributes()>();
specialinvoke v.<java.util.HashMap: void <init>(java.util.Map)>(v);
if v == 0 goto label;
if v == null goto label;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = v;
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>(",");
v = staticinvoke <java.util.Arrays: java.util.stream.Stream stream(java.lang.Object[])>(v);
v = staticinvoke <org.apache.nifi.processors.standard.UpdateDatabaseTable$lambda_onTrigger_1__239: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <org.apache.nifi.processors.standard.UpdateDatabaseTable$trim__240: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream map(java.util.function.Function)>(v);
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.nifi.processors.standard.UpdateDatabaseTable$add__241: java.util.function.Consumer bootstrap$(java.util.Set)>(v);
interfaceinvoke v.<java.util.stream.Stream: void forEach(java.util.function.Consumer)>(v);
goto label;
label:
v = null;
label:
v = specialinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder checkAndUpdateTableSchema(java.sql.Connection,org.apache.nifi.processors.standard.db.DatabaseAdapter,org.apache.nifi.serialization.record.RecordSchema,java.lang.String,java.lang.String,java.lang.String,boolean,boolean,boolean,java.util.Set,boolean,boolean)>(v, v, v, v, v, v, v, v, v, v, v, v);
if v == null goto label;
label:
v = staticinvoke <org.apache.nifi.processors.standard.UpdateDatabaseTable$lambda_onTrigger_2__238: org.apache.nifi.processor.io.StreamCallback bootstrap$(org.apache.nifi.processors.standard.UpdateDatabaseTable,org.apache.nifi.serialization.RecordReaderFactory,org.apache.nifi.flowfile.FlowFile,org.apache.nifi.serialization.RecordSetWriterFactory,org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder,java.util.Map,org.apache.nifi.serialization.record.RecordSchema)>(v, v, v, v, v, v, v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile write(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.io.StreamCallback)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void error(java.lang.String,java.lang.Object[])>("Failed to process {}; will route to failure", v);
v = virtualinvoke v.<java.lang.Exception: java.lang.Throwable getCause()>();
if v == null goto label;
v = v;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getLocalizedMessage()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getLocalizedMessage()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u Thrown");
label:
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, "record.error.message", v);
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getCanonicalName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u Thrown");
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, "record.error.message", v);
label:
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_FAILURE>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
label:
if v == null goto label;
interfaceinvoke v.<java.sql.Connection: void close()>();
label:
return;
label:
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("output.table", v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAllAttributes(org.apache.nifi.flowfile.FlowFile,java.util.Map)>(v, v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.provenance.ProvenanceReporter getProvenanceReporter()>();
v = specialinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: java.lang.String getJdbcUrl(java.sql.Connection)>(v);
interfaceinvoke v.<org.apache.nifi.provenance.ProvenanceReporter: void invokeRemoteProcess(org.apache.nifi.flowfile.FlowFile,java.lang.String)>(v, v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_SUCCESS>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
label:
if v == null goto label;
interfaceinvoke v.<java.sql.Connection: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, "output.table", v);
v = newarray (java.lang.Object)[1];
v[0] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void error(java.lang.String,java.lang.Object[],java.lang.Throwable)>("Exception while processing {} - routing to failure", v, v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_FAILURE>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void warn(java.lang.String,java.lang.Object[],java.lang.Throwable)>("Discontinued processing for {} due to {}", v, v);
v = <org.apache.nifi.processor.Relationship: org.apache.nifi.processor.Relationship SELF>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
goto label;
label:
v := @caughtexception;
v = v instanceof org.apache.nifi.processor.exception.ProcessException;
if v != 0 goto label;
v = new org.apache.nifi.processor.exception.ProcessException;
specialinvoke v.<org.apache.nifi.processor.exception.ProcessException: void <init>(java.lang.Throwable)>(v);
label:
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
catch java.lang.Throwable from label to label with label;
catch org.apache.nifi.processor.exception.ProcessException from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.io.IOException from label to label with label;
catch java.sql.SQLException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.sql.SQLException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.sql.SQLException from label to label with label;
catch org.apache.nifi.processor.util.pattern.DiscontinuedException from label to label with label;
catch org.apache.nifi.processor.util.pattern.DiscontinuedException from label to label with label;
catch org.apache.nifi.processor.util.pattern.DiscontinuedException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private synchronized org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder checkAndUpdateTableSchema(java.sql.Connection, org.apache.nifi.processors.standard.db.DatabaseAdapter, org.apache.nifi.serialization.record.RecordSchema, java.lang.String, java.lang.String, java.lang.String, boolean, boolean, boolean, java.util.Set, boolean, boolean) throws java.io.IOException
{
org.apache.nifi.serialization.record.DataType v, v, v;
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
org.apache.nifi.serialization.record.RecordSchema v;
org.apache.nifi.processors.standard.db.ColumnDescription v, v;
java.util.Set v;
org.apache.nifi.serialization.SimpleRecordSchema v;
java.lang.Exception v;
java.lang.Throwable v;
java.util.ArrayList v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.processors.standard.db.DatabaseAdapter v;
org.apache.nifi.serialization.record.RecordField v;
java.io.IOException v, v;
java.sql.Statement v;
java.sql.Connection v;
org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.List v, v, v, v, v;
org.apache.nifi.processors.standard.db.TableSchema v, v;
org.apache.nifi.processors.standard.db.TableNotFoundException v;
java.util.HashMap v;
org.apache.nifi.logging.ComponentLog v, v, v, v, v;
int v, v;
java.util.Iterator v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v, v, v, v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v := @parameter: java.sql.Connection;
v := @parameter: org.apache.nifi.processors.standard.db.DatabaseAdapter;
v := @parameter: org.apache.nifi.serialization.record.RecordSchema;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: boolean;
v := @parameter: java.util.Set;
v := @parameter: boolean;
v := @parameter: boolean;
label:
v = interfaceinvoke v.<java.sql.Connection: java.sql.Statement createStatement()>();
label:
v = null;
label:
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = staticinvoke <org.apache.nifi.processors.standard.db.TableSchema: org.apache.nifi.processors.standard.db.TableSchema 'from'(java.sql.Connection,java.lang.String,java.lang.String,java.lang.String,boolean,java.lang.String,org.apache.nifi.logging.ComponentLog)>(v, v, v, v, v, null, v);
label:
goto label;
label:
v := @caughtexception;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = 0;
if v != null goto label;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.serialization.record.RecordSchema: java.util.List getFields()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: java.lang.String getFieldName()>();
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: java.lang.Object getDefaultValue()>();
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = new org.apache.nifi.processors.standard.db.ColumnDescription;
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: org.apache.nifi.serialization.record.DataType getDataType()>();
v = staticinvoke <org.apache.nifi.serialization.record.util.DataTypeUtils: int getSQLTypeValue(org.apache.nifi.serialization.record.DataType)>(v);
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: boolean isNullable()>();
specialinvoke v.<org.apache.nifi.processors.standard.db.ColumnDescription: void <init>(java.lang.String,int,boolean,java.lang.Integer,boolean)>(v, v, v, null, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Adding column \u to table \u0001");
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void debug(java.lang.String)>(v);
goto label;
label:
v = new org.apache.nifi.processors.standard.db.TableSchema;
v = interfaceinvoke v.<org.apache.nifi.processors.standard.db.DatabaseAdapter: java.lang.String getColumnQuoteString()>();
specialinvoke v.<org.apache.nifi.processors.standard.db.TableSchema: void <init>(java.lang.String,java.util.List,boolean,java.util.Set,java.lang.String)>(v, v, v, v, v);
v = v;
v = interfaceinvoke v.<org.apache.nifi.processors.standard.db.DatabaseAdapter: java.lang.String getCreateTableStatement(org.apache.nifi.processors.standard.db.TableSchema,boolean,boolean)>(v, v, v);
v = staticinvoke <org.apache.nifi.util.StringUtils: boolean isNotEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Executing DDL: \u0001");
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void info(java.lang.String)>(v);
interfaceinvoke v.<java.sql.Statement: boolean execute(java.lang.String)>(v);
label:
v = 1;
goto label;
label:
v = new java.io.IOException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The table \u could not be found in the database and the processor is configured not to create it.");
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.db.TableSchema: java.util.List getColumnsAsList()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.db.ColumnDescription: java.lang.String getColumnName()>();
v = staticinvoke <org.apache.nifi.processors.standard.db.ColumnDescription: java.lang.String normalizeColumnName(java.lang.String,boolean)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
if v != 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.serialization.record.RecordSchema: java.util.List getFields()>();
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: java.lang.String getFieldName()>();
v = staticinvoke <org.apache.nifi.processors.standard.db.ColumnDescription: java.lang.String normalizeColumnName(java.lang.String,boolean)>(v, v);
v = interfaceinvoke v.<java.util.List: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
v = new org.apache.nifi.processors.standard.db.ColumnDescription;
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: org.apache.nifi.serialization.record.DataType getDataType()>();
v = staticinvoke <org.apache.nifi.serialization.record.util.DataTypeUtils: int getSQLTypeValue(org.apache.nifi.serialization.record.DataType)>(v);
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: java.lang.Object getDefaultValue()>();
if v == null goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: boolean isNullable()>();
specialinvoke v.<org.apache.nifi.processors.standard.db.ColumnDescription: void <init>(java.lang.String,int,boolean,java.lang.Integer,boolean)>(v, v, v, null, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Adding column \u to table \u0001");
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void debug(java.lang.String)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.processors.standard.db.DatabaseAdapter: java.util.List getAlterTableStatements(java.lang.String,java.util.List,boolean,boolean)>(v, v, v, v);
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.apache.nifi.util.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Executing DDL: \u0001");
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void info(java.lang.String)>(v);
interfaceinvoke v.<java.sql.Statement: boolean execute(java.lang.String)>(v);
goto label;
label:
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.serialization.record.RecordSchema: java.util.List getFields()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: java.lang.String getFieldName()>();
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = 1;
label:
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new org.apache.nifi.serialization.record.RecordField;
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: org.apache.nifi.serialization.record.DataType getDataType()>();
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: java.lang.Object getDefaultValue()>();
v = virtualinvoke v.<org.apache.nifi.serialization.record.RecordField: boolean isNullable()>();
specialinvoke v.<org.apache.nifi.serialization.record.RecordField: void <init>(java.lang.String,org.apache.nifi.serialization.record.DataType,java.lang.Object,boolean)>(v, v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = 1;
label:
if v != 0 goto label;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
if v == 0 goto label;
v = new org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder;
v = v;
v = new org.apache.nifi.serialization.SimpleRecordSchema;
specialinvoke v.<org.apache.nifi.serialization.SimpleRecordSchema: void <init>(java.util.List)>(v);
specialinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder: void <init>(org.apache.nifi.serialization.record.RecordSchema,java.util.Map)>(v, v);
goto label;
label:
v = null;
label:
v = v;
goto label;
label:
v = null;
label:
v = v;
label:
if v == null goto label;
interfaceinvoke v.<java.sql.Statement: void close()>();
label:
return v;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new java.io.IOException;
specialinvoke v.<java.io.IOException: void <init>(java.lang.Throwable)>(v);
throw v;
catch org.apache.nifi.processors.standard.db.TableNotFoundException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
}
private synchronized org.apache.nifi.serialization.WriteResult updateRecords(org.apache.nifi.serialization.record.RecordSchema, org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder, org.apache.nifi.serialization.RecordReader, org.apache.nifi.serialization.RecordSetWriter) throws java.io.IOException
{
java.lang.Throwable v;
java.util.HashMap v;
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
org.apache.nifi.serialization.record.RecordSchema v, v;
org.apache.nifi.serialization.RecordReader v;
java.util.Map v;
int v;
java.lang.String v, v;
org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder v;
org.apache.nifi.serialization.record.Record v;
boolean v;
org.apache.nifi.serialization.record.MapRecord v;
java.util.Iterator v;
org.apache.nifi.serialization.WriteResult v;
java.util.Set v;
java.io.IOException v;
java.util.List v;
java.lang.Object v, v, v, v;
org.apache.nifi.serialization.RecordSetWriter v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v := @parameter: org.apache.nifi.serialization.record.RecordSchema;
v := @parameter: org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder;
v := @parameter: org.apache.nifi.serialization.RecordReader;
v := @parameter: org.apache.nifi.serialization.RecordSetWriter;
label:
interfaceinvoke v.<org.apache.nifi.serialization.RecordSetWriter: void beginRecordSet()>();
label:
v = interfaceinvoke v.<org.apache.nifi.serialization.RecordReader: org.apache.nifi.serialization.record.Record nextRecord()>();
if v == null goto label;
v = interfaceinvoke v.<org.apache.nifi.serialization.record.RecordSchema: java.util.List getFields()>();
v = new java.util.HashMap;
v = interfaceinvoke v.<java.util.List: int size()>();
specialinvoke v.<java.util.HashMap: void <init>(int)>(v);
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder: java.util.Map getFieldMap()>();
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = interfaceinvoke v.<org.apache.nifi.serialization.record.Record: java.lang.Object getValue(java.lang.String)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = new org.apache.nifi.serialization.record.MapRecord;
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable$OutputMetadataHolder: org.apache.nifi.serialization.record.RecordSchema getOutputSchema()>();
specialinvoke v.<org.apache.nifi.serialization.record.MapRecord: void <init>(org.apache.nifi.serialization.record.RecordSchema,java.util.Map)>(v, v);
interfaceinvoke v.<org.apache.nifi.serialization.RecordSetWriter: org.apache.nifi.serialization.WriteResult write(org.apache.nifi.serialization.record.Record)>(v);
goto label;
label:
v = interfaceinvoke v.<org.apache.nifi.serialization.RecordSetWriter: org.apache.nifi.serialization.WriteResult finishRecordSet()>();
label:
return v;
label:
v := @caughtexception;
v = new java.io.IOException;
v = virtualinvoke v.<org.apache.nifi.serialization.MalformedRecordException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Error reading records: \u0001");
specialinvoke v.<java.io.IOException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch org.apache.nifi.serialization.MalformedRecordException from label to label with label;
}
private java.lang.String getJdbcUrl(java.sql.Connection)
{
java.sql.Connection v;
java.sql.DatabaseMetaData v;
java.lang.String v;
org.apache.nifi.processors.standard.UpdateDatabaseTable v;
org.apache.nifi.logging.ComponentLog v;
java.lang.Exception v;
v := @this: org.apache.nifi.processors.standard.UpdateDatabaseTable;
v := @parameter: java.sql.Connection;
label:
v = interfaceinvoke v.<java.sql.Connection: java.sql.DatabaseMetaData getMetaData()>();
if v == null goto label;
v = interfaceinvoke v.<java.sql.DatabaseMetaData: java.lang.String getURL()>();
label:
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.logging.ComponentLog getLogger()>();
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void warn(java.lang.String,java.lang.Throwable)>("Could not determine JDBC URL based on the Driver Connection.", v);
label:
return "DBCPService";
catch java.lang.Exception from label to label with label;
}
static void <clinit>()
{
org.apache.nifi.components.AllowableValue v, v, v, v, v, v;
java.lang.Object[] v;
org.apache.nifi.processor.Relationship v, v, v, v;
java.util.ServiceLoader v;
org.apache.nifi.expression.ExpressionLanguageScope v, v, v, v, v;
java.util.HashSet v;
java.util.function.Consumer v;
org.apache.nifi.components.PropertyDescriptor v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Set v;
java.util.ArrayList v, v;
java.lang.String v;
org.apache.nifi.components.PropertyDescriptor$Builder v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.List v;
org.apache.nifi.components.AllowableValue[] v, v, v;
java.lang.String[] v, v, v, v, v;
java.util.HashMap v;
org.apache.nifi.components.Validator v, v, v, v, v, v;
org.apache.nifi.processor.Relationship$Builder v, v, v, v, v, v;
v = new org.apache.nifi.components.AllowableValue;
specialinvoke v.<org.apache.nifi.components.AllowableValue: void <init>(java.lang.String,java.lang.String,java.lang.String)>("Create If Not Exists", "Create If Not Exists", "Create a table with the given schema if it does not already exist");
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue CREATE_IF_NOT_EXISTS> = v;
v = new org.apache.nifi.components.AllowableValue;
specialinvoke v.<org.apache.nifi.components.AllowableValue: void <init>(java.lang.String,java.lang.String,java.lang.String)>("Fail If Not Exists", "Fail If Not Exists", "If the target does not already exist, log an error and route the flowfile to failure");
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue FAIL_IF_NOT_EXISTS> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("record-reader");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Record Reader");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The service for reading incoming flow files. The reader is only used to determine the schema of the records, the actual records will not be processed.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder identifiesControllerService(java.lang.Class)>(class "Lorg/apache/nifi/serialization/RecordReaderFactory;");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_READER> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-dbcp-service");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Database Connection Pooling Service");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The Controller Service that is used to obtain connection(s) to the database");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder identifiesControllerService(java.lang.Class)>(class "Lorg/apache/nifi/dbcp/DBCPService;");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DBCP_SERVICE> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-catalog-name");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Catalog Name");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The name of the catalog that the statement should update. This may not apply for the database that you are updating. In this case, leave the field empty. Note that if the property is set and the database is case-sensitive, the catalog name must match the database\'s catalog name exactly.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(0);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CATALOG_NAME> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-schema-name");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Schema Name");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The name of the database schema that the table belongs to. This may not apply for the database that you are updating. In this case, leave the field empty. Note that if the property is set and the database is case-sensitive, the schema name must match the database\'s schema name exactly.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(0);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor SCHEMA_NAME> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-table-name");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Table Name");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The name of the database table to update. If the table does not exist, then it will either be created or an error thrown, depending on the value of the Create Table property.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor TABLE_NAME> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-create-table");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Create Table Strategy");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Specifies how to process the target table when it does not exist (create it, fail, e.g.).");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = <org.apache.nifi.components.Validator: org.apache.nifi.components.Validator VALID>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = newarray (org.apache.nifi.components.AllowableValue)[2];
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue CREATE_IF_NOT_EXISTS>;
v[0] = v;
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue FAIL_IF_NOT_EXISTS>;
v[1] = v;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(org.apache.nifi.components.AllowableValue[])>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue FAIL_IF_NOT_EXISTS>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CREATE_TABLE> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-primary-keys");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Primary Key Fields");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("A comma-separated list of record field names that uniquely identifies a row in the database. This property is only used if the specified table needs to be created, in which case the Primary Key Fields will be used to specify the primary keys of the newly-created table. IMPORTANT: Primary Key Fields must match the record field names exactly unless \'Quote Column Identifiers\' is false and the database allows for case-insensitive column names. In practice it is best to specify Primary Key Fields that exactly match the record field names, and those will become the column names in the created table.");
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(0);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CREATE_TABLE>;
v = newarray (org.apache.nifi.components.AllowableValue)[1];
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.AllowableValue CREATE_IF_NOT_EXISTS>;
v[0] = v;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder dependsOn(org.apache.nifi.components.PropertyDescriptor,org.apache.nifi.components.AllowableValue[])>(v, v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor PRIMARY_KEY_FIELDS> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-translate-field-names");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Translate Field Names");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("If true, the Processor will attempt to translate field names into the corresponding column names for the table specified, for the purposes of determining whether the field name exists as a column in the target table. NOTE: If the target table does not exist and is to be created, this property is ignored and the field names will be used as-is. If false, the field names must match the column names exactly, or the column may not be found and instead an error my be reported that the column already exists.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = newarray (java.lang.String)[2];
v[0] = "true";
v[1] = "false";
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(java.lang.String[])>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>("true");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor TRANSLATE_FIELD_NAMES> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-update-field-names");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Update Field Names");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("This property indicates whether to update the output schema such that the field names are set to the exact column names from the specified table. This should be used if the incoming record field names may not match the table\'s column names in terms of upper- and lower-case. For example, this property should be set to true if the output FlowFile is destined for Oracle e.g., which expects the field names to match the column names exactly. NOTE: The value of the \'Translate Field Names\' property is ignored when updating field names; instead they are updated to match the column name as returned by the database.");
v = newarray (java.lang.String)[2];
v[0] = "true";
v[1] = "false";
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(java.lang.String[])>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>("false");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor UPDATE_FIELD_NAMES> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-record-writer");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Record Writer");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Specifies the Controller Service to use for writing results to a FlowFile. The Record Writer should use Inherit Schema to emulate the inferred schema behavior, i.e. an explicit schema need not be defined in the writer, and will be supplied by the same logic used to infer the schema from the column types. If Create Table Strategy is set \'Create If Not Exists\', the Record Writer\'s output format must match the Record Reader\'s format in order for the data to be placed in the created table location. Note that this property is only used if \'Update Field Names\' is set to true and the field names do not all match the column names exactly. If no update is needed for any field names (or \'Update Field Names\' is false), the Record Writer is not used and instead the input FlowFile is routed to success or failure without modification.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder identifiesControllerService(java.lang.Class)>(class "Lorg/apache/nifi/serialization/RecordSetWriterFactory;");
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor UPDATE_FIELD_NAMES>;
v = newarray (java.lang.String)[0];
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder dependsOn(org.apache.nifi.components.PropertyDescriptor,java.lang.String,java.lang.String[])>(v, "true", v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_WRITER_FACTORY> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-quoted-column-identifiers");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Quote Column Identifiers");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Enabling this option will cause all column names to be quoted, allowing you to use reserved words as column names in your tables and/or forcing the record field names to match the column names exactly.");
v = newarray (java.lang.String)[2];
v[0] = "true";
v[1] = "false";
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(java.lang.String[])>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>("false");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUOTE_COLUMN_IDENTIFIERS> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-quoted-table-identifiers");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Quote Table Identifiers");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Enabling this option will cause the table name to be quoted to support the use of special characters in the table name and/or forcing the value of the Table Name property to match the target table name exactly.");
v = newarray (java.lang.String)[2];
v[0] = "true";
v[1] = "false";
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(java.lang.String[])>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>("false");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUOTE_TABLE_IDENTIFIER> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("updatedatabasetable-query-timeout");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Query Timeout");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Sets the number of seconds the driver will wait for a query to execute. A value of 0 means no timeout. NOTE: Non-zero values may not be supported by the driver.");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>("0");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator INTEGER_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUERY_TIMEOUT> = v;
v = new org.apache.nifi.processor.Relationship$Builder;
specialinvoke v.<org.apache.nifi.processor.Relationship$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder name(java.lang.String)>("success");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder description(java.lang.String)>("A FlowFile containing records routed to this relationship after the record has been successfully transmitted to the database.");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_SUCCESS> = v;
v = new org.apache.nifi.processor.Relationship$Builder;
specialinvoke v.<org.apache.nifi.processor.Relationship$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder name(java.lang.String)>("failure");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder description(java.lang.String)>("A FlowFile containing records routed to this relationship if the record could not be transmitted to the database.");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_FAILURE> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.Map dbAdapters> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = staticinvoke <java.util.ServiceLoader: java.util.ServiceLoader load(java.lang.Class)>(class "Lorg/apache/nifi/processors/standard/db/DatabaseAdapter;");
v = staticinvoke <org.apache.nifi.processors.standard.UpdateDatabaseTable$lambda_static_0__242: java.util.function.Consumer bootstrap$(java.util.ArrayList)>(v);
virtualinvoke v.<java.util.ServiceLoader: void forEach(java.util.function.Consumer)>(v);
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("db-type");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Database Type");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The type/flavor of database, used for generating database-specific code. In many cases the Generic type should suffice, but some databases (such as Oracle) require custom SQL clauses.");
v = newarray (org.apache.nifi.components.AllowableValue)[0];
v = virtualinvoke v.<java.util.ArrayList: java.lang.Object[] toArray(java.lang.Object[])>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(org.apache.nifi.components.AllowableValue[])>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>("Generic");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(0);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DB_TYPE> = v;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_SUCCESS>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.processor.Relationship REL_FAILURE>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = staticinvoke <java.util.Collections: java.util.Set unmodifiableSet(java.util.Set)>(v);
<org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.Set relationships> = v;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_READER>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DBCP_SERVICE>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor DB_TYPE>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CATALOG_NAME>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor SCHEMA_NAME>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor TABLE_NAME>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor CREATE_TABLE>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor PRIMARY_KEY_FIELDS>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor TRANSLATE_FIELD_NAMES>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor UPDATE_FIELD_NAMES>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor RECORD_WRITER_FACTORY>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUOTE_TABLE_IDENTIFIER>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUOTE_COLUMN_IDENTIFIERS>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.UpdateDatabaseTable: org.apache.nifi.components.PropertyDescriptor QUERY_TIMEOUT>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = staticinvoke <java.util.Collections: java.util.List unmodifiableList(java.util.List)>(v);
<org.apache.nifi.processors.standard.UpdateDatabaseTable: java.util.List propertyDescriptors> = v;
return;
}
}