public class org.apache.nifi.authorization.FileAccessPolicyProvider extends java.lang.Object implements org.apache.nifi.authorization.ConfigurableAccessPolicyProvider
{
private static final org.slf4j.Logger logger;
private static final java.lang.String AUTHORIZATIONS_XSD;
private static final java.lang.String JAXB_AUTHORIZATIONS_PATH;
private static final java.lang.String USERS_XSD;
private static final java.lang.String JAXB_USERS_PATH;
private static final javax.xml.bind.JAXBContext JAXB_AUTHORIZATIONS_CONTEXT;
private static final javax.xml.bind.JAXBContext JAXB_USERS_CONTEXT;
private static final javax.xml.stream.XMLOutputFactory XML_OUTPUT_FACTORY;
private static final java.lang.String POLICY_ELEMENT;
private static final java.lang.String POLICY_USER_ELEMENT;
private static final java.lang.String POLICY_GROUP_ELEMENT;
private static final java.lang.String IDENTIFIER_ATTR;
private static final java.lang.String RESOURCE_ATTR;
private static final java.lang.String ACTIONS_ATTR;
static final java.lang.String READ_CODE;
static final java.lang.String WRITE_CODE;
static final java.lang.String PROP_NODE_IDENTITY_PREFIX;
static final java.lang.String PROP_NODE_GROUP_NAME;
static final java.lang.String PROP_USER_GROUP_PROVIDER;
static final java.lang.String PROP_AUTHORIZATIONS_FILE;
static final java.lang.String PROP_INITIAL_ADMIN_IDENTITY;
static final java.util.regex.Pattern NODE_IDENTITY_PATTERN;
private javax.xml.validation.Schema usersSchema;
private javax.xml.validation.Schema authorizationsSchema;
private org.apache.nifi.util.NiFiProperties properties;
private java.io.File authorizationsFile;
private java.io.File restoreAuthorizationsFile;
private java.lang.String rootGroupId;
private java.lang.String initialAdminIdentity;
private java.lang.String legacyAuthorizedUsersFile;
private java.util.Set nodeIdentities;
private java.lang.String nodeGroupIdentifier;
private java.util.List ports;
private java.util.List identityMappings;
private java.util.List groupMappings;
private org.apache.nifi.authorization.UserGroupProvider userGroupProvider;
private org.apache.nifi.authorization.UserGroupProviderLookup userGroupProviderLookup;
private final java.util.concurrent.atomic.AtomicReference authorizationsHolder;
public void <init>()
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.concurrent.atomic.AtomicReference v;
java.util.ArrayList v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List ports> = v;
v = new java.util.concurrent.atomic.AtomicReference;
specialinvoke v.<java.util.concurrent.atomic.AtomicReference: void <init>()>();
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder> = v;
return;
}
private static javax.xml.bind.JAXBContext initializeJaxbContext(java.lang.String)
{
java.lang.Throwable v;
java.lang.Class v;
java.lang.ClassLoader v;
java.lang.RuntimeException v;
java.lang.String v;
javax.xml.bind.JAXBContext v;
v := @parameter: java.lang.String;
label:
v = class "Lorg/apache/nifi/authorization/FileAuthorizer;";
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
v = staticinvoke <javax.xml.bind.JAXBContext: javax.xml.bind.JAXBContext newInstance(java.lang.String,java.lang.ClassLoader)>(v, v);
label:
return v;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>("Unable to create JAXBContext.");
throw v;
catch javax.xml.bind.JAXBException from label to label with label;
}
public void initialize(org.apache.nifi.authorization.AccessPolicyProviderInitializationContext) throws org.apache.nifi.authorization.exception.AuthorizerCreationException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
javax.xml.validation.SchemaFactory v;
org.apache.nifi.authorization.AccessPolicyProviderInitializationContext v;
java.net.URL v, v;
java.lang.Exception v;
javax.xml.validation.Schema v, v;
java.lang.Class v, v;
org.apache.nifi.authorization.exception.AuthorizerCreationException v;
org.apache.nifi.authorization.UserGroupProviderLookup v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AccessPolicyProviderInitializationContext;
v = interfaceinvoke v.<org.apache.nifi.authorization.AccessPolicyProviderInitializationContext: org.apache.nifi.authorization.UserGroupProviderLookup getUserGroupProviderLookup()>();
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProviderLookup userGroupProviderLookup> = v;
label:
v = staticinvoke <javax.xml.validation.SchemaFactory: javax.xml.validation.SchemaFactory newInstance(java.lang.String)>("http://www.w.org/2001/XMLSchema");
v = class "Lorg/apache/nifi/authorization/FileAuthorizer;";
v = virtualinvoke v.<java.lang.Class: java.net.URL getResource(java.lang.String)>("/authorizations.xsd");
v = virtualinvoke v.<javax.xml.validation.SchemaFactory: javax.xml.validation.Schema newSchema(java.net.URL)>(v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.validation.Schema authorizationsSchema> = v;
v = class "Lorg/apache/nifi/authorization/FileAuthorizer;";
v = virtualinvoke v.<java.lang.Class: java.net.URL getResource(java.lang.String)>("/legacy-users.xsd");
v = virtualinvoke v.<javax.xml.validation.SchemaFactory: javax.xml.validation.Schema newSchema(java.net.URL)>(v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.validation.Schema usersSchema> = v;
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
}
public void onConfigured(org.apache.nifi.authorization.AuthorizerConfigurationContext) throws org.apache.nifi.authorization.exception.AuthorizerCreationException
{
org.apache.nifi.authorization.UserGroupProvider v, v, v;
java.util.regex.Matcher v;
java.util.Map v;
org.apache.nifi.authorization.file.generated.Authorizations v;
java.util.Set v, v, v;
java.lang.Exception v;
java.lang.Throwable v;
java.lang.Object[] 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, v, v, v, v, v;
java.io.File v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.util.NiFiProperties v, v, v;
java.util.Date v;
org.apache.nifi.components.PropertyValue v, v, v, v, v;
org.apache.nifi.authorization.exception.AuthorizerCreationException v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.apache.nifi.authorization.AuthorizerConfigurationContext v;
java.util.List v, v, v, v, v, v;
java.util.regex.Pattern v;
org.apache.nifi.authorization.UserGroupProviderLookup v;
java.util.HashSet v;
org.slf4j.Logger v, v, v, v, v, v, v;
java.util.Iterator v, v;
java.lang.Object v, v, v, v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AuthorizerConfigurationContext;
label:
v = interfaceinvoke v.<org.apache.nifi.authorization.AuthorizerConfigurationContext: org.apache.nifi.components.PropertyValue getProperty(java.lang.String)>("User Group Provider");
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: boolean isSet()>();
if v != 0 goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>("The user group provider must be specified.");
throw v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProviderLookup userGroupProviderLookup>;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProviderLookup: org.apache.nifi.authorization.UserGroupProvider getUserGroupProvider(java.lang.String)>(v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider> = v;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
if v != null goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
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[])>("Unable to locate user group provider with identifier \u0001");
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = interfaceinvoke v.<org.apache.nifi.authorization.AuthorizerConfigurationContext: org.apache.nifi.components.PropertyValue getProperty(java.lang.String)>("Authorizations File");
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v == 0 goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>("The authorizations file must be specified.");
throw v;
label:
v = new java.io.File;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile> = v;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v != 0 goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = newarray (java.lang.Object)[1];
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v[0] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Creating new authorizations file at {}", v);
v = new org.apache.nifi.authorization.file.generated.Authorizations;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: void <init>()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAuthorizations(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = virtualinvoke v.<java.io.File: java.io.File getAbsoluteFile()>();
v = virtualinvoke v.<java.io.File: java.io.File getParentFile()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.util.NiFiProperties properties>;
v = virtualinvoke v.<org.apache.nifi.util.NiFiProperties: java.io.File getRestoreDirectory()>();
if v == null goto label;
staticinvoke <org.apache.nifi.util.file.FileUtils: void ensureDirectoryExistAndCanAccess(java.io.File)>(v);
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
v = newarray (java.lang.Object)[2];
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v[0] = v;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v[1] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Authorizations file directory \'%s\' is the same as restore directory \'%s\' ", v);
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.io.File;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = virtualinvoke v.<java.io.File: java.lang.String getName()>();
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File restoreAuthorizationsFile> = v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File restoreAuthorizationsFile>;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
staticinvoke <org.apache.nifi.util.file.FileUtils: void syncWithRestore(java.io.File,java.io.File,org.slf4j.Logger)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.util.NiFiProperties properties>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.util.List getIdentityMappings(org.apache.nifi.util.NiFiProperties)>(v);
v = staticinvoke <java.util.Collections: java.util.List unmodifiableList(java.util.List)>(v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List identityMappings> = v;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.util.NiFiProperties properties>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.util.List getGroupMappings(org.apache.nifi.util.NiFiProperties)>(v);
v = staticinvoke <java.util.Collections: java.util.List unmodifiableList(java.util.List)>(v);
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List groupMappings> = v;
v = interfaceinvoke v.<org.apache.nifi.authorization.AuthorizerConfigurationContext: org.apache.nifi.components.PropertyValue getProperty(java.lang.String)>("Initial Admin Identity");
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: boolean isSet()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List identityMappings>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.lang.String mapIdentity(java.lang.String,java.util.List)>(v, v);
goto label;
label:
v = null;
label:
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String initialAdminIdentity> = v;
v = interfaceinvoke v.<org.apache.nifi.authorization.AuthorizerConfigurationContext: org.apache.nifi.components.PropertyValue getProperty(java.lang.String)>("Legacy Authorized Users File");
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: boolean isSet()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
goto label;
label:
v = null;
label:
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String legacyAuthorizedUsersFile> = v;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.Set nodeIdentities> = v;
v = interfaceinvoke v.<org.apache.nifi.authorization.AuthorizerConfigurationContext: java.util.Map getProperties()>();
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 = <org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.regex.Pattern NODE_IDENTITY_PATTERN>;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = virtualinvoke v.<java.util.regex.Pattern: java.util.regex.Matcher matcher(java.lang.CharSequence)>(v);
v = virtualinvoke v.<java.util.regex.Matcher: boolean matches()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v != 0 goto label;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List identityMappings>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.lang.String mapIdentity(java.lang.String,java.util.List)>(v, v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.Set nodeIdentities>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = newarray (java.lang.Object)[2];
v[0] = v;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v[1] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Added mapped node {} (raw node identity {})", v);
goto label;
label:
v = interfaceinvoke v.<org.apache.nifi.authorization.AuthorizerConfigurationContext: org.apache.nifi.components.PropertyValue getProperty(java.lang.String)>("Node Group");
if v == null goto label;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: boolean isSet()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
goto label;
label:
v = null;
label:
v = v;
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier> = null;
if v == null goto label;
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v != 0 goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Trying to load node group \'{}\' from the underlying userGroupProvider", v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: java.util.Set getGroups()>();
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 = virtualinvoke v.<org.apache.nifi.authorization.Group: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.authorization.Group: java.lang.String getIdentifier()>();
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier> = v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
if v != null goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Authorizations node group \'%s\' could not be found", v);
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Empty node group name provided");
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void load()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File restoreAuthorizationsFile>;
if v == null goto label;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File restoreAuthorizationsFile>;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
staticinvoke <org.apache.nifi.util.file.FileUtils: long copyFile(java.io.File,java.io.File,boolean,boolean,org.slf4j.Logger)>(v, v, 0, 0, v);
label:
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = newarray (java.lang.Object)[1];
v = new java.util.Date;
specialinvoke v.<java.util.Date: void <init>()>();
v = virtualinvoke v.<java.util.Date: java.lang.String toString()>();
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Authorizations file loaded at %s", v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch java.io.IOException from label to label with label;
catch java.lang.IllegalStateException from label to label with label;
catch java.io.IOException from label to label with label;
catch org.apache.nifi.authorization.exception.AuthorizerCreationException from label to label with label;
catch javax.xml.bind.JAXBException from label to label with label;
catch java.lang.IllegalStateException from label to label with label;
catch org.xml.sax.SAXException from label to label with label;
}
public org.apache.nifi.authorization.UserGroupProvider getUserGroupProvider()
{
org.apache.nifi.authorization.UserGroupProvider v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
return v;
}
public java.util.Set getAccessPolicies() throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Set v;
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: java.util.Set getAllPolicies()>();
return v;
}
public synchronized org.apache.nifi.authorization.AccessPolicy addAccessPolicy(org.apache.nifi.authorization.AccessPolicy) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.concurrent.atomic.AtomicReference v;
java.util.List v;
org.apache.nifi.authorization.AccessPolicy v;
java.util.Map v;
java.lang.Object v, v;
java.lang.String v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AccessPolicy;
v = staticinvoke <java.util.Collections: java.util.List singletonList(java.lang.Object)>(v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addAccessPolicies(java.util.List)>(v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: java.util.Map getPoliciesById()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getIdentifier()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
private synchronized void addAccessPolicies(java.util.List) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
java.lang.IllegalArgumentException v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.nifi.authorization.file.generated.Policies v;
java.util.List v, v;
java.lang.Object v, v;
org.apache.nifi.authorization.file.generated.Policy v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.util.List;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("AccessPolicies cannot be null");
throw v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: org.apache.nifi.authorization.file.generated.Authorizations getAuthorizations()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
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 = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Policy createJAXBPolicy(org.apache.nifi.authorization.AccessPolicy)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAndRefreshHolder(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
return;
}
public synchronized void purgePolicies(boolean)
{
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.file.generated.Policies v;
java.util.List v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: boolean;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: org.apache.nifi.authorization.file.generated.Authorizations getAuthorizations()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
interfaceinvoke v.<java.util.List: void clear()>();
if v == 0 goto label;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAndRefreshHolder(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
label:
return;
}
public void backupPolicies() throws javax.xml.bind.JAXBException
{
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.slf4j.Logger v;
java.util.Date v;
java.text.SimpleDateFormat v;
java.util.concurrent.atomic.AtomicReference v;
java.io.File v, v, v, v;
java.lang.Object v;
java.lang.String v, v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: org.apache.nifi.authorization.file.generated.Authorizations getAuthorizations()>();
v = new java.text.SimpleDateFormat;
specialinvoke v.<java.text.SimpleDateFormat: void <init>(java.lang.String)>("yyyy-MM-dd-HH-mm-ss");
v = new java.util.Date;
specialinvoke v.<java.util.Date: void <init>()>();
v = virtualinvoke v.<java.text.DateFormat: java.lang.String format(java.util.Date)>(v);
v = new java.io.File;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = virtualinvoke v.<java.io.File: java.io.File getParentFile()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
v = virtualinvoke v.<java.io.File: java.lang.String getName()>();
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[])>("\u.\u0001");
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, v);
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("Writing backup of Policies to {}", v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAuthorizations(org.apache.nifi.authorization.file.generated.Authorizations,java.io.File)>(v, v);
return;
}
public org.apache.nifi.authorization.AccessPolicy getAccessPolicy(java.lang.String) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Map v;
java.lang.Object v, v;
java.lang.String v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
if v != null goto label;
return null;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: java.util.Map getPoliciesById()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public org.apache.nifi.authorization.AccessPolicy getAccessPolicy(java.lang.String, org.apache.nifi.authorization.RequestAction) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.apache.nifi.authorization.AccessPolicy v;
org.apache.nifi.authorization.RequestAction v;
java.lang.Object v;
java.lang.String v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
v := @parameter: org.apache.nifi.authorization.RequestAction;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: org.apache.nifi.authorization.AccessPolicy getAccessPolicy(java.lang.String,org.apache.nifi.authorization.RequestAction)>(v, v);
return v;
}
public synchronized org.apache.nifi.authorization.AccessPolicy updateAccessPolicy(org.apache.nifi.authorization.AccessPolicy) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
java.util.concurrent.atomic.AtomicReference v, v;
java.util.Map v;
org.apache.nifi.authorization.file.generated.Policy v;
java.lang.String v, v, v;
boolean v, v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
java.lang.IllegalArgumentException v;
org.apache.nifi.authorization.file.generated.Policies v;
java.util.List v;
org.apache.nifi.authorization.AccessPolicy v;
java.lang.Object v, v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AccessPolicy;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("AccessPolicy cannot be null");
throw v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: org.apache.nifi.authorization.file.generated.Authorizations getAuthorizations()>();
v = null;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
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.authorization.file.generated.Policy: java.lang.String getIdentifier()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getIdentifier()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
label:
if v != null goto label;
return null;
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void transferUsersAndGroups(org.apache.nifi.authorization.AccessPolicy,org.apache.nifi.authorization.file.generated.Policy)>(v, v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAndRefreshHolder(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: java.util.Map getPoliciesById()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getIdentifier()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public synchronized org.apache.nifi.authorization.AccessPolicy deleteAccessPolicy(org.apache.nifi.authorization.AccessPolicy) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
java.lang.IllegalArgumentException v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.nifi.authorization.file.generated.Policies v;
java.util.List v;
org.apache.nifi.authorization.AccessPolicy v;
java.lang.Object v, v;
java.lang.String v, v;
boolean v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AccessPolicy;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("AccessPolicy cannot be null");
throw v;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: org.apache.nifi.authorization.file.generated.Authorizations getAuthorizations()>();
v = 0;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
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.authorization.file.generated.Policy: java.lang.String getIdentifier()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getIdentifier()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
interfaceinvoke v.<java.util.Iterator: void remove()>();
v = 1;
label:
if v != 0 goto label;
return null;
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAndRefreshHolder(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
return v;
}
org.apache.nifi.authorization.AuthorizationsHolder getAuthorizationsHolder()
{
java.lang.Object v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
return v;
}
public void setNiFiProperties(org.apache.nifi.util.NiFiProperties)
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.apache.nifi.util.NiFiProperties v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.util.NiFiProperties;
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.util.NiFiProperties properties> = v;
return;
}
public synchronized void inheritFingerprint(java.lang.String) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
java.util.List v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.lang.String v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List parsePolicies(java.lang.String)>(v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void inheritAccessPolicies(java.util.List)>(v);
return;
}
private synchronized void inheritAccessPolicies(java.util.List)
{
java.util.List v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.util.List;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addAccessPolicies(java.util.List)>(v);
return;
}
public synchronized void forciblyInheritFingerprint(java.lang.String) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
java.lang.Throwable v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.slf4j.Logger v, v;
java.util.List v;
org.apache.nifi.authorization.exception.AuthorizationAccessException v;
java.lang.String v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List parsePolicies(java.lang.String)>(v);
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: boolean isInheritable(java.util.List)>(v);
if v == 0 goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Inheriting cluster\'s Access Policies");
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void inheritAccessPolicies(java.util.List)>(v);
goto label;
label:
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Cannot directly inherit cluster\'s Access Policies. Will create backup of existing policies and replace with proposed policies");
label:
virtualinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void backupPolicies()>();
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizationAccessException: void <init>(java.lang.String,java.lang.Throwable)>("Failed to backup existing policies so will not inherit any policies", v);
throw v;
label:
virtualinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void purgePolicies(boolean)>(0);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addAccessPolicies(java.util.List)>(v);
label:
return;
catch javax.xml.bind.JAXBException from label to label with label;
}
public void checkInheritability(java.lang.String) throws org.apache.nifi.authorization.exception.AuthorizationAccessException, org.apache.nifi.authorization.exception.UninheritableAuthorizationsException
{
java.lang.Throwable v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.List v;
org.apache.nifi.authorization.exception.UninheritableAuthorizationsException v, v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
label:
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List parsePolicies(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.UninheritableAuthorizationsException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Throwable)>(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[])>("Unable to parse the proposed fingerprint: \u0001");
specialinvoke v.<org.apache.nifi.authorization.exception.UninheritableAuthorizationsException: void <init>(java.lang.String)>(v);
throw v;
label:
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: boolean isInheritable(java.util.List)>(v);
if v != 0 goto label;
v = new org.apache.nifi.authorization.exception.UninheritableAuthorizationsException;
specialinvoke v.<org.apache.nifi.authorization.exception.UninheritableAuthorizationsException: void <init>(java.lang.String)>("Proposed fingerprint is not inheritable because the current access policies is not empty.");
throw v;
label:
return;
catch org.apache.nifi.authorization.exception.AuthorizationAccessException from label to label with label;
}
private boolean isInheritable(java.util.List)
{
java.util.List v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Set v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.util.List;
v = virtualinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.Set getAccessPolicies()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
return v;
}
public java.lang.String getFingerprint() throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
java.lang.Throwable v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
java.io.StringWriter v;
java.util.Set v;
java.util.function.Function v;
java.util.ArrayList v;
javax.xml.stream.XMLOutputFactory v;
javax.xml.stream.XMLStreamException v;
org.apache.nifi.authorization.exception.AuthorizationAccessException v;
java.lang.Object v;
javax.xml.stream.XMLStreamWriter v;
java.lang.String v;
java.util.Comparator v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = new java.util.ArrayList;
v = virtualinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.Set getAccessPolicies()>();
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
v = staticinvoke <org.apache.nifi.authorization.FileAccessPolicyProvider$getIdentifier__1: java.util.function.Function bootstrap$()>();
v = staticinvoke <java.util.Comparator: java.util.Comparator comparing(java.util.function.Function)>(v);
staticinvoke <java.util.Collections: void sort(java.util.List,java.util.Comparator)>(v, v);
v = new java.io.StringWriter;
specialinvoke v.<java.io.StringWriter: void <init>()>();
label:
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.stream.XMLOutputFactory XML_OUTPUT_FACTORY>;
v = virtualinvoke v.<javax.xml.stream.XMLOutputFactory: javax.xml.stream.XMLStreamWriter createXMLStreamWriter(java.io.Writer)>(v);
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartDocument()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartElement(java.lang.String)>("accessPolicies");
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()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void writePolicy(javax.xml.stream.XMLStreamWriter,org.apache.nifi.authorization.AccessPolicy)>(v, v);
goto label;
label:
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeEndElement()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeEndDocument()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void flush()>();
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizationAccessException: void <init>(java.lang.String,java.lang.Throwable)>("Unable to generate fingerprint", v);
throw v;
label:
v := @caughtexception;
throw v;
label:
v = virtualinvoke v.<java.io.StringWriter: java.lang.String toString()>();
return v;
catch javax.xml.stream.XMLStreamException from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private java.util.List parsePolicies(java.lang.String)
{
java.lang.Throwable v, v;
byte[] v;
java.util.ArrayList v;
java.io.ByteArrayInputStream v;
java.nio.charset.Charset v;
org.w3c.dom.Document v;
org.w3c.dom.Node v;
int v, v;
java.lang.String v;
org.apache.nifi.xml.processing.parsers.StandardDocumentProvider v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.w3c.dom.NodeList v;
org.w3c.dom.Element v;
org.apache.nifi.authorization.AccessPolicy v;
org.apache.nifi.authorization.exception.AuthorizationAccessException v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
label:
v = new java.io.ByteArrayInputStream;
specialinvoke v.<java.io.ByteArrayInputStream: void <init>(byte[])>(v);
label:
v = new org.apache.nifi.xml.processing.parsers.StandardDocumentProvider;
specialinvoke v.<org.apache.nifi.xml.processing.parsers.StandardDocumentProvider: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.xml.processing.parsers.StandardDocumentProvider: org.w3c.dom.Document parse(java.io.InputStream)>(v);
v = interfaceinvoke v.<org.w3c.dom.Document: org.w3c.dom.Element getDocumentElement()>();
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getElementsByTagName(java.lang.String)>("policy");
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.AccessPolicy parsePolicy(org.w3c.dom.Element)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
virtualinvoke v.<java.io.ByteArrayInputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizationAccessException: void <init>(java.lang.String,java.lang.Throwable)>("Unable to parse fingerprint", v);
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch org.apache.nifi.xml.processing.ProcessingException from label to label with label;
catch java.io.IOException from label to label with label;
}
private org.apache.nifi.authorization.AccessPolicy parsePolicy(org.w3c.dom.Element)
{
java.lang.IllegalStateException v;
org.w3c.dom.Node v, v;
int v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.AccessPolicy$Builder v, v, v;
boolean v, v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.w3c.dom.NodeList v, v;
org.apache.nifi.authorization.RequestAction v, v, v, v;
org.w3c.dom.Element v;
org.apache.nifi.authorization.AccessPolicy v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.w3c.dom.Element;
v = new org.apache.nifi.authorization.AccessPolicy$Builder;
specialinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: void <init>()>();
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("identifier");
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder identifier(java.lang.String)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("resource");
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder resource(java.lang.String)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("actions");
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction READ>;
v = virtualinvoke v.<org.apache.nifi.authorization.RequestAction: java.lang.String name()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction READ>;
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder action(org.apache.nifi.authorization.RequestAction)>(v);
goto label;
label:
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction WRITE>;
v = virtualinvoke v.<org.apache.nifi.authorization.RequestAction: java.lang.String name()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction WRITE>;
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder action(org.apache.nifi.authorization.RequestAction)>(v);
goto label;
label:
v = new java.lang.IllegalStateException;
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[])>("Unknown Policy Action: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getElementsByTagName(java.lang.String)>("policyUser");
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("identifier");
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder addUser(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getElementsByTagName(java.lang.String)>("policyGroup");
v = 0;
label:
v = interfaceinvoke v.<org.w3c.dom.NodeList: int getLength()>();
if v >= v goto label;
v = interfaceinvoke v.<org.w3c.dom.NodeList: org.w3c.dom.Node item(int)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("identifier");
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder addGroup(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy build()>();
return v;
}
private void writePolicy(javax.xml.stream.XMLStreamWriter, org.apache.nifi.authorization.AccessPolicy) throws javax.xml.stream.XMLStreamException
{
java.util.ArrayList v, v;
javax.xml.stream.XMLStreamWriter v;
java.lang.String v, v, v;
boolean v, v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v, v;
org.apache.nifi.authorization.RequestAction v;
java.util.Set v, v;
org.apache.nifi.authorization.AccessPolicy v;
java.lang.Object v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: javax.xml.stream.XMLStreamWriter;
v := @parameter: org.apache.nifi.authorization.AccessPolicy;
v = new java.util.ArrayList;
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.util.Set getUsers()>();
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
staticinvoke <java.util.Collections: void sort(java.util.List)>(v);
v = new java.util.ArrayList;
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.util.Set getGroups()>();
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
staticinvoke <java.util.Collections: void sort(java.util.List)>(v);
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartElement(java.lang.String)>("policy");
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getIdentifier()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("identifier", v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getResource()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("resource", v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: org.apache.nifi.authorization.RequestAction getAction()>();
v = virtualinvoke v.<org.apache.nifi.authorization.RequestAction: java.lang.String name()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("actions", v);
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()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartElement(java.lang.String)>("policyUser");
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("identifier", v);
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeEndElement()>();
goto label;
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()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartElement(java.lang.String)>("policyGroup");
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("identifier", v);
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeEndElement()>();
goto label;
label:
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeEndElement()>();
return;
}
private synchronized void load() throws javax.xml.bind.JAXBException, java.io.IOException, java.lang.IllegalStateException, org.xml.sax.SAXException
{
java.util.concurrent.atomic.AtomicReference v;
java.lang.String v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.exception.AuthorizerCreationException v;
boolean v, v, v, v, v, v, v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.slf4j.Logger v, v;
java.util.Set v;
org.apache.nifi.authorization.file.generated.Policies v, v;
org.apache.nifi.authorization.AuthorizationsHolder v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Authorizations unmarshallAuthorizations()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
if v != null goto label;
v = new org.apache.nifi.authorization.file.generated.Policies;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policies: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: void setPolicies(org.apache.nifi.authorization.file.generated.Policies)>(v);
label:
v = new org.apache.nifi.authorization.AuthorizationsHolder;
specialinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: void <init>(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: java.util.Set getAllPolicies()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String initialAdminIdentity>;
if v == null goto label;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String initialAdminIdentity>;
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String legacyAuthorizedUsersFile>;
if v == null goto label;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String legacyAuthorizedUsersFile>;
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == 0 goto label;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void parseFlow()>();
if v == 0 goto label;
if v == 0 goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>("Cannot provide an Initial Admin Identity and a Legacy Authorized Users File");
throw v;
label:
if v == 0 goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String initialAdminIdentity>;
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[])>("Populating authorizations for Initial Admin: \u0001");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void populateInitialAdmin(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
goto label;
label:
if v == 0 goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String legacyAuthorizedUsersFile>;
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[])>("Converting \u to new authorizations model");
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>(v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void convertLegacyAuthorizedUsers(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void populateNodes(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAndRefreshHolder(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
goto label;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
label:
return;
}
private void saveAuthorizations(org.apache.nifi.authorization.file.generated.Authorizations) throws javax.xml.bind.JAXBException
{
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.io.File v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAuthorizations(org.apache.nifi.authorization.file.generated.Authorizations,java.io.File)>(v, v);
return;
}
private void saveAuthorizations(org.apache.nifi.authorization.file.generated.Authorizations, java.io.File) throws javax.xml.bind.JAXBException
{
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
javax.xml.bind.Marshaller v;
java.lang.Boolean v;
java.io.File v;
javax.xml.bind.JAXBContext v;
javax.xml.validation.Schema v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v := @parameter: java.io.File;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext JAXB_AUTHORIZATIONS_CONTEXT>;
v = virtualinvoke v.<javax.xml.bind.JAXBContext: javax.xml.bind.Marshaller createMarshaller()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.validation.Schema authorizationsSchema>;
interfaceinvoke v.<javax.xml.bind.Marshaller: void setSchema(javax.xml.validation.Schema)>(v);
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
interfaceinvoke v.<javax.xml.bind.Marshaller: void setProperty(java.lang.String,java.lang.Object)>("jaxb.formatted.output", v);
interfaceinvoke v.<javax.xml.bind.Marshaller: void marshal(java.lang.Object,java.io.File)>(v, v);
return;
}
private org.apache.nifi.authorization.file.generated.Authorizations unmarshallAuthorizations() throws javax.xml.bind.JAXBException
{
java.lang.Throwable v;
javax.xml.bind.Unmarshaller v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.slf4j.Logger v;
javax.xml.bind.JAXBElement v;
javax.xml.transform.stream.StreamSource v;
org.apache.nifi.xml.processing.stream.StandardXMLStreamReaderProvider v;
javax.xml.bind.JAXBException v;
java.io.File v;
javax.xml.validation.Schema v;
javax.xml.stream.XMLStreamReader v;
java.lang.Object v;
javax.xml.bind.JAXBContext v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
label:
v = new org.apache.nifi.xml.processing.stream.StandardXMLStreamReaderProvider;
specialinvoke v.<org.apache.nifi.xml.processing.stream.StandardXMLStreamReaderProvider: void <init>()>();
v = new javax.xml.transform.stream.StreamSource;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.io.File authorizationsFile>;
specialinvoke v.<javax.xml.transform.stream.StreamSource: void <init>(java.io.File)>(v);
v = interfaceinvoke v.<org.apache.nifi.xml.processing.stream.XMLStreamReaderProvider: javax.xml.stream.XMLStreamReader getStreamReader(javax.xml.transform.stream.StreamSource)>(v);
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext JAXB_AUTHORIZATIONS_CONTEXT>;
v = virtualinvoke v.<javax.xml.bind.JAXBContext: javax.xml.bind.Unmarshaller createUnmarshaller()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.validation.Schema authorizationsSchema>;
interfaceinvoke v.<javax.xml.bind.Unmarshaller: void setSchema(javax.xml.validation.Schema)>(v);
v = interfaceinvoke v.<javax.xml.bind.Unmarshaller: javax.xml.bind.JAXBElement unmarshal(javax.xml.stream.XMLStreamReader,java.lang.Class)>(v, class "Lorg/apache/nifi/authorization/file/generated/Authorizations;");
v = virtualinvoke v.<javax.xml.bind.JAXBElement: java.lang.Object getValue()>();
label:
return v;
label:
v := @caughtexception;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Encountered an error reading authorizations file: ", v);
v = new javax.xml.bind.JAXBException;
specialinvoke v.<javax.xml.bind.JAXBException: void <init>(java.lang.String,java.lang.Throwable)>("Error reading authorizations file", v);
throw v;
catch org.apache.nifi.xml.processing.ProcessingException from label to label with label;
}
private void parseFlow() throws org.xml.sax.SAXException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.io.File v, v;
java.util.ArrayList v;
java.util.List v, v;
org.apache.nifi.util.NiFiProperties v, v;
org.apache.nifi.util.FlowParser v;
java.lang.String v;
org.apache.nifi.util.FlowInfo v;
boolean v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v = new org.apache.nifi.util.FlowParser;
specialinvoke v.<org.apache.nifi.util.FlowParser: void <init>()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.util.NiFiProperties properties>;
v = virtualinvoke v.<org.apache.nifi.util.NiFiProperties: java.io.File getFlowConfigurationJsonFile()>();
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = v;
goto label;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.util.NiFiProperties properties>;
v = virtualinvoke v.<org.apache.nifi.util.NiFiProperties: java.io.File getFlowConfigurationFile()>();
label:
v = virtualinvoke v.<org.apache.nifi.util.FlowParser: org.apache.nifi.util.FlowInfo parse(java.io.File)>(v);
if v == null goto label;
v = virtualinvoke v.<org.apache.nifi.util.FlowInfo: java.lang.String getRootGroupId()>();
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId> = v;
v = virtualinvoke v.<org.apache.nifi.util.FlowInfo: java.util.List getPorts()>();
if v != null goto label;
v = new java.util.ArrayList;
v = v;
specialinvoke v.<java.util.ArrayList: void <init>()>();
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.util.FlowInfo: java.util.List getPorts()>();
label:
v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List ports> = v;
label:
return;
}
private void populateInitialAdmin(org.apache.nifi.authorization.file.generated.Authorizations)
{
org.apache.nifi.authorization.resource.ResourceType v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.UserGroupProvider v;
org.apache.nifi.authorization.exception.AuthorizerCreationException v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.apache.nifi.authorization.User v;
java.lang.String 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 := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String initialAdminIdentity>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: org.apache.nifi.authorization.User getUserByIdentity(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String initialAdminIdentity>;
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[])>("Unable to locate initial admin \u to seed policies");
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Flow>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
if v == null goto label;
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Data>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001/\u0001");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Data>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001/\u0001");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
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[])>("\u0001/\u0001");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
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[])>("\u0001/\u0001");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
label:
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType RestrictedComponents>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Tenant>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Tenant>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Policy>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Policy>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Controller>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Controller>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
return;
}
private void populateNodes(org.apache.nifi.authorization.file.generated.Authorizations)
{
org.apache.nifi.authorization.resource.ResourceType v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.UserGroupProvider v, v;
org.apache.nifi.authorization.exception.AuthorizerCreationException v;
boolean v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Set v;
org.apache.nifi.authorization.User v;
org.apache.nifi.authorization.Group v;
java.lang.String 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;
org.slf4j.Logger v, v;
java.util.Iterator v;
java.lang.Object v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.Set nodeIdentities>;
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 = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: org.apache.nifi.authorization.User getUserByIdentity(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
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[])>("Unable to locate node \u to seed policies.");
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentity()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Populating default authorizations for node \'{}\' ({})", v, v);
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Proxy>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
if v == null goto label;
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Data>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001/\u0001");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Data>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001/\u0001");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
goto label;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
if v == null goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: org.apache.nifi.authorization.Group getGroup(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.Group: java.lang.String getName()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Populating default authorizations for group \'{}\' ({})", v, v);
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Proxy>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addGroupToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
if v == null goto label;
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Data>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001/\u0001");
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addGroupToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "R");
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType Data>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType ProcessGroup>;
v = virtualinvoke v.<org.apache.nifi.authorization.resource.ResourceType: java.lang.String getValue()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001/\u0001");
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String nodeGroupIdentifier>;
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addGroupToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
label:
return;
}
private void convertLegacyAuthorizedUsers(org.apache.nifi.authorization.file.generated.Authorizations) throws org.apache.nifi.authorization.exception.AuthorizerCreationException, javax.xml.bind.JAXBException
{
org.apache.nifi.authorization.UserGroupProvider v, v, v;
java.util.Map v;
org.apache.nifi.authorization.file.generated.Authorizations v;
java.util.Set v, v, v, v, v;
org.apache.nifi.authorization.Resource v, v, v;
java.lang.Throwable v;
java.lang.Object[] v, v;
javax.xml.transform.stream.StreamSource v;
javax.xml.validation.Schema v;
java.util.ArrayList v, v;
org.apache.nifi.authorization.file.generated.Policy 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, v, v, v, v, v, v, v;
javax.xml.bind.JAXBElement v;
org.apache.nifi.xml.processing.stream.StandardXMLStreamReaderProvider v;
org.apache.nifi.authorization.Role v;
java.io.File v;
org.apache.nifi.authorization.file.generated.Policies v;
org.apache.nifi.authorization.resource.ResourceType v, v;
javax.xml.stream.XMLStreamReader v;
org.apache.nifi.authorization.exception.AuthorizerCreationException v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
javax.xml.bind.JAXBException v;
org.apache.nifi.authorization.User v, v;
java.util.List v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.authorization.Group v;
javax.xml.bind.JAXBContext v;
javax.xml.bind.Unmarshaller v;
org.slf4j.Logger v, v, v, v;
java.util.Iterator v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v = new java.io.File;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String legacyAuthorizedUsersFile>;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v != 0 goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String legacyAuthorizedUsersFile>;
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[])>("Legacy Authorized Users File \'\u0001\' does not exists");
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext JAXB_USERS_CONTEXT>;
v = virtualinvoke v.<javax.xml.bind.JAXBContext: javax.xml.bind.Unmarshaller createUnmarshaller()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.validation.Schema usersSchema>;
interfaceinvoke v.<javax.xml.bind.Unmarshaller: void setSchema(javax.xml.validation.Schema)>(v);
label:
v = new org.apache.nifi.xml.processing.stream.StandardXMLStreamReaderProvider;
specialinvoke v.<org.apache.nifi.xml.processing.stream.StandardXMLStreamReaderProvider: void <init>()>();
v = new javax.xml.transform.stream.StreamSource;
specialinvoke v.<javax.xml.transform.stream.StreamSource: void <init>(java.io.File)>(v);
v = interfaceinvoke v.<org.apache.nifi.xml.processing.stream.XMLStreamReaderProvider: javax.xml.stream.XMLStreamReader getStreamReader(javax.xml.transform.stream.StreamSource)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Encountered an error reading authorized users file: ", v);
v = new javax.xml.bind.JAXBException;
specialinvoke v.<javax.xml.bind.JAXBException: void <init>(java.lang.String,java.lang.Throwable)>("Error reading authorized users file", v);
throw v;
label:
v = interfaceinvoke v.<javax.xml.bind.Unmarshaller: javax.xml.bind.JAXBElement unmarshal(javax.xml.stream.XMLStreamReader,java.lang.Class)>(v, class "Lorg/apache/nifi/user/generated/Users;");
v = virtualinvoke v.<javax.xml.bind.JAXBElement: java.lang.Object getValue()>();
v = virtualinvoke v.<org.apache.nifi.user.generated.Users: java.util.List getUser()>();
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v == 0 goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("Legacy Authorized Users File contained no users, nothing to convert");
return;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.user.generated.Users: java.util.List getUser()>();
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.user.generated.User: java.lang.String getDn()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List identityMappings>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.lang.String mapIdentity(java.lang.String,java.util.List)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
staticinvoke <java.util.Collections: void sort(java.util.List)>(v);
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.lang.String rootGroupId>;
v = staticinvoke <org.apache.nifi.authorization.RoleAccessPolicy: java.util.Map getMappings(java.lang.String)>(v);
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.user.generated.Users: java.util.List getUser()>();
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.user.generated.User: java.lang.String getDn()>();
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List identityMappings>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.lang.String mapIdentity(java.lang.String,java.util.List)>(v, v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: org.apache.nifi.authorization.User getUserByIdentity(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.nifi.authorization.exception.AuthorizerCreationException;
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[])>("Unable to locate legacy user \u to seed policies.");
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizerCreationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.nifi.user.generated.User: java.util.List getRole()>();
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.user.generated.Role: java.lang.String getName()>();
v = staticinvoke <org.apache.nifi.authorization.Role: org.apache.nifi.authorization.Role valueOf(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
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 = virtualinvoke v.<org.apache.nifi.authorization.RoleAccessPolicy: java.lang.String getResource()>();
v = virtualinvoke v.<org.apache.nifi.authorization.RoleAccessPolicy: java.lang.String getAction()>();
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Policy getOrCreatePolicy(java.util.List,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, v);
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToPolicy(java.lang.String,org.apache.nifi.authorization.file.generated.Policy)>(v, v);
goto label;
label:
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List ports>;
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.web.api.dto.PortDTO: java.lang.String getType()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.lang.String getType()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("inputPort");
if v == 0 goto label;
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType InputPort>;
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.lang.String getId()>();
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.lang.String getName()>();
v = staticinvoke <org.apache.nifi.authorization.resource.ResourceFactory: org.apache.nifi.authorization.Resource getComponentResource(org.apache.nifi.authorization.resource.ResourceType,java.lang.String,java.lang.String)>(v, v, v);
v = staticinvoke <org.apache.nifi.authorization.resource.ResourceFactory: org.apache.nifi.authorization.Resource getDataTransferResource(org.apache.nifi.authorization.Resource)>(v);
goto label;
label:
v = <org.apache.nifi.authorization.resource.ResourceType: org.apache.nifi.authorization.resource.ResourceType OutputPort>;
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.lang.String getId()>();
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.lang.String getName()>();
v = staticinvoke <org.apache.nifi.authorization.resource.ResourceFactory: org.apache.nifi.authorization.Resource getComponentResource(org.apache.nifi.authorization.resource.ResourceType,java.lang.String,java.lang.String)>(v, v, v);
v = staticinvoke <org.apache.nifi.authorization.resource.ResourceFactory: org.apache.nifi.authorization.Resource getDataTransferResource(org.apache.nifi.authorization.Resource)>(v);
label:
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.util.Set getUserAccessControl()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.util.Set getUserAccessControl()>();
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 = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List identityMappings>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.lang.String mapIdentity(java.lang.String,java.util.List)>(v, v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: org.apache.nifi.authorization.User getUserByIdentity(java.lang.String)>(v);
if v != null goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = newarray (java.lang.Object)[1];
v[0] = v;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object[])>("Found port with user access control for {} but no user exists with this identity, skipping...", v);
goto label;
label:
v = interfaceinvoke v.<org.apache.nifi.authorization.Resource: java.lang.String getIdentifier()>();
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Policy getOrCreatePolicy(java.util.List,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = virtualinvoke v.<org.apache.nifi.authorization.User: java.lang.String getIdentifier()>();
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addUserToPolicy(java.lang.String,org.apache.nifi.authorization.file.generated.Policy)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.util.Set getGroupAccessControl()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.nifi.web.api.dto.PortDTO: java.util.Set getGroupAccessControl()>();
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 = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.List groupMappings>;
v = staticinvoke <org.apache.nifi.authorization.util.IdentityMappingUtil: java.lang.String mapIdentity(java.lang.String,java.util.List)>(v, v);
v = null;
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.UserGroupProvider userGroupProvider>;
v = interfaceinvoke v.<org.apache.nifi.authorization.UserGroupProvider: java.util.Set getGroups()>();
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 = virtualinvoke v.<org.apache.nifi.authorization.Group: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
label:
if v != null goto label;
v = <org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger>;
v = newarray (java.lang.Object)[1];
v[0] = v;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object[])>("Found port with group access control for {} but no group exists with this name, skipping...", v);
goto label;
label:
v = interfaceinvoke v.<org.apache.nifi.authorization.Resource: java.lang.String getIdentifier()>();
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Policy getOrCreatePolicy(java.util.List,java.lang.String,java.lang.String,java.lang.String)>(v, v, v, "W");
v = staticinvoke <org.apache.nifi.authorization.IdentifierUtil: java.lang.String getIdentifier(java.lang.String)>(v);
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void addGroupToPolicy(java.lang.String,org.apache.nifi.authorization.file.generated.Policy)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
return;
catch org.apache.nifi.xml.processing.ProcessingException from label to label with label;
}
private void addUserToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations, java.lang.String, java.lang.String, java.lang.String)
{
java.lang.IllegalStateException v;
boolean v, v, v, v, v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.List v, v, v;
org.apache.nifi.authorization.file.generated.Policy v, v;
java.lang.String v, v, v, v, v, v, v;
org.apache.nifi.authorization.AccessPolicy$Builder v, v, v, v;
org.apache.nifi.authorization.file.generated.Policy$User v;
java.util.Iterator v;
org.apache.nifi.authorization.RequestAction v, v;
org.apache.nifi.authorization.file.generated.Policies v, v;
org.apache.nifi.authorization.AccessPolicy v;
java.lang.Object v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = null;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
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.authorization.file.generated.Policy: java.lang.String getResource()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.lang.String getAction()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
label:
if v != null goto label;
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[])>("\u0001\u0001");
v = new org.apache.nifi.authorization.AccessPolicy$Builder;
specialinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder identifierGenerateFromSeed(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder resource(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder addUser(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("R");
if v == 0 goto label;
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction READ>;
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder action(org.apache.nifi.authorization.RequestAction)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("W");
if v == 0 goto label;
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction WRITE>;
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder action(org.apache.nifi.authorization.RequestAction)>(v);
goto label;
label:
v = new java.lang.IllegalStateException;
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[])>("Unknown Policy Action: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy build()>();
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Policy createJAXBPolicy(org.apache.nifi.authorization.AccessPolicy)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new org.apache.nifi.authorization.file.generated.Policy$User;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy$User: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy$User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
private void addGroupToAccessPolicy(org.apache.nifi.authorization.file.generated.Authorizations, java.lang.String, java.lang.String, java.lang.String)
{
java.lang.IllegalStateException v;
org.apache.nifi.authorization.file.generated.Policy$Group v;
boolean v, v, v, v, v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.List v, v, v;
org.apache.nifi.authorization.file.generated.Policy v, v;
java.lang.String v, v, v, v, v, v, v;
org.apache.nifi.authorization.AccessPolicy$Builder v, v, v, v;
java.util.Iterator v;
org.apache.nifi.authorization.RequestAction v, v;
org.apache.nifi.authorization.file.generated.Policies v, v;
org.apache.nifi.authorization.AccessPolicy v;
java.lang.Object v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = null;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
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.authorization.file.generated.Policy: java.lang.String getResource()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.lang.String getAction()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
label:
if v != null goto label;
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[])>("\u0001\u0001");
v = new org.apache.nifi.authorization.AccessPolicy$Builder;
specialinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder identifierGenerateFromSeed(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder resource(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder addGroup(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("R");
if v == 0 goto label;
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction READ>;
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder action(org.apache.nifi.authorization.RequestAction)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("W");
if v == 0 goto label;
v = <org.apache.nifi.authorization.RequestAction: org.apache.nifi.authorization.RequestAction WRITE>;
virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy$Builder action(org.apache.nifi.authorization.RequestAction)>(v);
goto label;
label:
v = new java.lang.IllegalStateException;
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[])>("Unknown Policy Action: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy$Builder: org.apache.nifi.authorization.AccessPolicy build()>();
v = specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: org.apache.nifi.authorization.file.generated.Policy createJAXBPolicy(org.apache.nifi.authorization.AccessPolicy)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Authorizations: org.apache.nifi.authorization.file.generated.Policies getPolicies()>();
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policies: java.util.List getPolicy()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new org.apache.nifi.authorization.file.generated.Policy$Group;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy$Group: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy$Group: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getGroup()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
private org.apache.nifi.authorization.file.generated.Policy createJAXBPolicy(org.apache.nifi.authorization.AccessPolicy)
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.apache.nifi.authorization.RequestAction v;
int[] v;
org.apache.nifi.authorization.AccessPolicy v;
int v, v;
org.apache.nifi.authorization.file.generated.Policy v;
java.lang.String v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AccessPolicy;
v = new org.apache.nifi.authorization.file.generated.Policy;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getIdentifier()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.lang.String getResource()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setResource(java.lang.String)>(v);
v = <org.apache.nifi.authorization.FileAccessPolicyProvider$1: int[] $SwitchMap$org$apache$nifi$authorization$RequestAction>;
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: org.apache.nifi.authorization.RequestAction getAction()>();
v = virtualinvoke v.<org.apache.nifi.authorization.RequestAction: int ordinal()>();
v = v[v];
lookupswitch(v)
{
case 1: goto label;
case 2: goto label;
default: goto label;
};
label:
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setAction(java.lang.String)>("R");
goto label;
label:
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setAction(java.lang.String)>("W");
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void transferUsersAndGroups(org.apache.nifi.authorization.AccessPolicy,org.apache.nifi.authorization.file.generated.Policy)>(v, v);
return v;
}
private void transferUsersAndGroups(org.apache.nifi.authorization.AccessPolicy, org.apache.nifi.authorization.file.generated.Policy)
{
org.apache.nifi.authorization.file.generated.Policy$Group v;
org.apache.nifi.authorization.file.generated.Policy v;
org.apache.nifi.authorization.file.generated.Policy$User v;
boolean v, v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v, v;
java.util.Set v, v;
java.util.List v, v, v, v;
org.apache.nifi.authorization.AccessPolicy v;
java.lang.Object v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.AccessPolicy;
v := @parameter: org.apache.nifi.authorization.file.generated.Policy;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: void clear()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.util.Set getUsers()>();
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 = new org.apache.nifi.authorization.file.generated.Policy$User;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy$User: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy$User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getGroup()>();
interfaceinvoke v.<java.util.List: void clear()>();
v = virtualinvoke v.<org.apache.nifi.authorization.AccessPolicy: java.util.Set getGroups()>();
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 = new org.apache.nifi.authorization.file.generated.Policy$Group;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy$Group: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy$Group: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getGroup()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
return;
}
private void addUserToPolicy(java.lang.String, org.apache.nifi.authorization.file.generated.Policy)
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
java.util.List v, v;
java.lang.Object v;
org.apache.nifi.authorization.file.generated.Policy v;
java.lang.String v, v;
org.apache.nifi.authorization.file.generated.Policy$User v;
boolean v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
v := @parameter: org.apache.nifi.authorization.file.generated.Policy;
v = 0;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getUser()>();
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.authorization.file.generated.Policy$User: java.lang.String getIdentifier()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
label:
if v != 0 goto label;
v = new org.apache.nifi.authorization.file.generated.Policy$User;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy$User: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy$User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
private void addGroupToPolicy(java.lang.String, org.apache.nifi.authorization.file.generated.Policy)
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
org.apache.nifi.authorization.file.generated.Policy$Group v;
java.util.List v, v;
java.lang.Object v;
org.apache.nifi.authorization.file.generated.Policy v;
java.lang.String v, v;
boolean v, v, v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.lang.String;
v := @parameter: org.apache.nifi.authorization.file.generated.Policy;
v = 0;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getGroup()>();
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.authorization.file.generated.Policy$Group: java.lang.String getIdentifier()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = 1;
label:
if v != 0 goto label;
v = new org.apache.nifi.authorization.file.generated.Policy$Group;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy$Group: void <init>()>();
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy$Group: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.util.List getGroup()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return;
}
private org.apache.nifi.authorization.file.generated.Policy getOrCreatePolicy(java.util.List, java.lang.String, java.lang.String, java.lang.String)
{
org.apache.nifi.authorization.file.generated.Policy v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
java.util.Iterator v;
java.util.List v;
java.lang.Object v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: java.util.List;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v = null;
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.authorization.file.generated.Policy: java.lang.String getResource()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: java.lang.String getAction()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v;
label:
if v != null goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u0001\u0001\u0001");
v = staticinvoke <org.apache.nifi.authorization.IdentifierUtil: java.lang.String getIdentifier(java.lang.String)>(v);
v = new org.apache.nifi.authorization.file.generated.Policy;
specialinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void <init>()>();
v = v;
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setIdentifier(java.lang.String)>(v);
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setResource(java.lang.String)>(v);
virtualinvoke v.<org.apache.nifi.authorization.file.generated.Policy: void setAction(java.lang.String)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return v;
}
private synchronized void saveAndRefreshHolder(org.apache.nifi.authorization.file.generated.Authorizations) throws org.apache.nifi.authorization.exception.AuthorizationAccessException
{
java.lang.Throwable v;
org.apache.nifi.authorization.file.generated.Authorizations v;
org.apache.nifi.authorization.AuthorizationsHolder v;
org.apache.nifi.authorization.FileAccessPolicyProvider v;
org.apache.nifi.authorization.exception.AuthorizationAccessException v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
v := @parameter: org.apache.nifi.authorization.file.generated.Authorizations;
label:
specialinvoke v.<org.apache.nifi.authorization.FileAccessPolicyProvider: void saveAuthorizations(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
v = v.<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.concurrent.atomic.AtomicReference authorizationsHolder>;
v = new org.apache.nifi.authorization.AuthorizationsHolder;
specialinvoke v.<org.apache.nifi.authorization.AuthorizationsHolder: void <init>(org.apache.nifi.authorization.file.generated.Authorizations)>(v);
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.authorization.exception.AuthorizationAccessException: void <init>(java.lang.String,java.lang.Throwable)>("Unable to save Authorizations", v);
throw v;
label:
return;
catch javax.xml.bind.JAXBException from label to label with label;
}
public void preDestruction() throws org.apache.nifi.authorization.exception.AuthorizerDestructionException
{
org.apache.nifi.authorization.FileAccessPolicyProvider v;
v := @this: org.apache.nifi.authorization.FileAccessPolicyProvider;
return;
}
static void <clinit>()
{
javax.xml.stream.XMLOutputFactory v;
org.slf4j.Logger v;
java.util.regex.Pattern v;
javax.xml.bind.JAXBContext v, v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/nifi/authorization/FileAccessPolicyProvider;");
<org.apache.nifi.authorization.FileAccessPolicyProvider: org.slf4j.Logger logger> = v;
v = staticinvoke <org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext initializeJaxbContext(java.lang.String)>("org.apache.nifi.authorization.file.generated");
<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext JAXB_AUTHORIZATIONS_CONTEXT> = v;
v = staticinvoke <org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext initializeJaxbContext(java.lang.String)>("org.apache.nifi.user.generated");
<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.bind.JAXBContext JAXB_USERS_CONTEXT> = v;
v = staticinvoke <javax.xml.stream.XMLOutputFactory: javax.xml.stream.XMLOutputFactory newInstance()>();
<org.apache.nifi.authorization.FileAccessPolicyProvider: javax.xml.stream.XMLOutputFactory XML_OUTPUT_FACTORY> = v;
v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("Node Identity \\S+");
<org.apache.nifi.authorization.FileAccessPolicyProvider: java.util.regex.Pattern NODE_IDENTITY_PATTERN> = v;
return;
}
}