public class org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider extends java.lang.Object implements org.apache.nifi.registry.security.authorization.ConfigurableUserGroupProvider
{
private static final org.slf4j.Logger logger;
private static final java.lang.String TENANTS_XSD;
private static final java.lang.String JAXB_TENANTS_PATH;
private static final javax.xml.bind.JAXBContext JAXB_TENANTS_CONTEXT;
private static final javax.xml.stream.XMLOutputFactory XML_OUTPUT_FACTORY;
private static final java.lang.String USER_ELEMENT;
private static final java.lang.String GROUP_USER_ELEMENT;
private static final java.lang.String GROUP_ELEMENT;
private static final java.lang.String IDENTIFIER_ATTR;
private static final java.lang.String IDENTITY_ATTR;
private static final java.lang.String NAME_ATTR;
static final java.lang.String PROP_TENANTS_FILE;
private javax.xml.validation.Schema tenantsSchema;
private java.io.File tenantsFile;
private java.util.Set initialUserIdentities;
private org.apache.nifi.registry.security.identity.IdentityMapper identityMapper;
private final java.util.concurrent.atomic.AtomicReference userGroupHolder;
public void <init>()
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new java.util.concurrent.atomic.AtomicReference;
specialinvoke v.<java.util.concurrent.atomic.AtomicReference: void <init>()>();
v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder> = 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, v;
javax.xml.bind.JAXBContext v;
v := @parameter: java.lang.String;
label:
v = class "Lorg/apache/nifi/registry/security/authorization/file/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;
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 create JAXBContext: \u0001");
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>(v);
throw v;
catch javax.xml.bind.JAXBException from label to label with label;
}
public void initialize(org.apache.nifi.registry.security.authorization.UserGroupProviderInitializationContext) throws org.apache.nifi.registry.security.exception.SecurityProviderCreationException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
javax.xml.validation.SchemaFactory v;
java.net.URL v;
org.apache.nifi.registry.security.exception.SecurityProviderCreationException v;
java.lang.Exception v;
javax.xml.validation.Schema v;
org.apache.nifi.registry.security.authorization.UserGroupProviderInitializationContext v;
java.lang.Class v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.UserGroupProviderInitializationContext;
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/registry/security/authorization/file/FileAuthorizer;";
v = virtualinvoke v.<java.lang.Class: java.net.URL getResource(java.lang.String)>("/tenants.xsd");
v = virtualinvoke v.<javax.xml.validation.SchemaFactory: javax.xml.validation.Schema newSchema(java.net.URL)>(v);
v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.validation.Schema tenantsSchema> = v;
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.registry.security.exception.SecurityProviderCreationException;
specialinvoke v.<org.apache.nifi.registry.security.exception.SecurityProviderCreationException: 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.registry.security.authorization.AuthorizerConfigurationContext) throws org.apache.nifi.registry.security.exception.SecurityProviderCreationException
{
java.lang.Throwable v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.lang.Object[] v, v;
java.util.Date v;
org.apache.nifi.registry.security.identity.IdentityMapper v;
java.lang.String v, v, v, v, v;
boolean v, v;
org.slf4j.Logger v, v;
org.apache.nifi.registry.security.exception.SecurityProviderCreationException v, v;
java.util.Set v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.io.File v, v, v;
org.apache.nifi.registry.security.authorization.AuthorizerConfigurationContext v;
org.apache.nifi.registry.util.PropertyValue v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.AuthorizerConfigurationContext;
label:
v = interfaceinvoke v.<org.apache.nifi.registry.security.authorization.AuthorizerConfigurationContext: org.apache.nifi.registry.util.PropertyValue getProperty(java.lang.String)>("Users File");
v = interfaceinvoke v.<org.apache.nifi.registry.util.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.registry.security.exception.SecurityProviderCreationException;
specialinvoke v.<org.apache.nifi.registry.security.exception.SecurityProviderCreationException: void <init>(java.lang.String)>("The users file must be specified.");
throw v;
label:
v = new java.io.File;
v = interfaceinvoke v.<org.apache.nifi.registry.util.PropertyValue: java.lang.String getValue()>();
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.io.File tenantsFile> = v;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.io.File tenantsFile>;
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v != 0 goto label;
v = <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.slf4j.Logger logger>;
v = newarray (java.lang.Object)[1];
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.io.File tenantsFile>;
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 users file at {}", v);
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: void <init>()>();
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveTenants(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.identity.IdentityMapper identityMapper>;
v = staticinvoke <org.apache.nifi.registry.security.authorization.util.UserGroupProviderUtils: java.util.Set getInitialUserIdentities(org.apache.nifi.registry.security.authorization.AuthorizerConfigurationContext,org.apache.nifi.registry.security.identity.IdentityMapper)>(v, v);
v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.Set initialUserIdentities> = v;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void load()>();
v = <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: 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[])>("Users/Groups 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.registry.security.exception.SecurityProviderCreationException;
specialinvoke v.<org.apache.nifi.registry.security.exception.SecurityProviderCreationException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return;
catch org.apache.nifi.registry.security.exception.SecurityProviderCreationException 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 java.util.Set getUsers() throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Set v;
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllUsers()>();
return v;
}
public synchronized org.apache.nifi.registry.security.authorization.User addUser(org.apache.nifi.registry.security.authorization.User) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.User v;
org.apache.nifi.registry.security.authorization.User v;
java.lang.IllegalArgumentException v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.concurrent.atomic.AtomicReference v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Users v;
java.util.List v;
java.util.Map v;
java.lang.Object v, v, v;
java.lang.String v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.User;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("User cannot be null");
throw v;
label:
v = specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.file.tenants.generated.User createJAXBUser(org.apache.nifi.registry.security.authorization.User)>(v);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants getTenants()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Users getUsers()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Users: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getUsersById()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentifier()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public org.apache.nifi.registry.security.authorization.User getUser(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider 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.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
if v != null goto label;
return null;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getUsersById()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public synchronized org.apache.nifi.registry.security.authorization.User updateUser(org.apache.nifi.registry.security.authorization.User) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.concurrent.atomic.AtomicReference v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Users v;
java.util.Map v;
java.lang.String v, v, v, v;
boolean v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.User v;
java.util.Iterator v;
org.apache.nifi.registry.security.authorization.User v;
java.lang.IllegalArgumentException v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.List v;
java.lang.Object v, v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.User;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("User cannot be null");
throw v;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants getTenants()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Users getUsers()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Users: java.util.List getUser()>();
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.registry.security.authorization.User: java.lang.String getIdentifier()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: 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:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentity()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void setIdentity(java.lang.String)>(v);
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getUsersById()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentifier()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public org.apache.nifi.registry.security.authorization.User getUserByIdentity(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider 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.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
if v != null goto label;
return null;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getUsersByIdentity()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public synchronized org.apache.nifi.registry.security.authorization.User deleteUser(org.apache.nifi.registry.security.authorization.User) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.User v, v;
java.lang.String v;
java.lang.IllegalArgumentException v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.User;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("User cannot be null");
throw v;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentifier()>();
v = specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.User deleteUser(java.lang.String)>(v);
return v;
}
private synchronized org.apache.nifi.registry.security.authorization.User deleteUser(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Users v;
java.util.Map v;
java.lang.String v, v, v;
boolean v, v, v, v, v;
java.util.Iterator v, v, v;
java.lang.IllegalArgumentException v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.List v, v, v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("User identifier cannot be null");
throw v;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getUsersById()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants getTenants()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: 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.registry.security.authorization.file.tenants.generated.Group: 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.registry.security.authorization.file.tenants.generated.Group$User: 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()>();
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Users getUsers()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.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.registry.security.authorization.file.tenants.generated.User: 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()>();
label:
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
return v;
}
public java.util.Set getGroups() throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Set v;
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllGroups()>();
return v;
}
public synchronized org.apache.nifi.registry.security.authorization.Group addGroup(org.apache.nifi.registry.security.authorization.Group) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.concurrent.atomic.AtomicReference v, v;
org.apache.nifi.registry.security.authorization.Group v;
java.util.Map v;
java.lang.String v, v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Group v;
boolean v;
java.util.Iterator v;
java.util.Set v;
java.lang.IllegalArgumentException v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.List v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Group$User v;
java.lang.Object v, v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.Group;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Group cannot be null");
throw v;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants getTenants()>();
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.Group;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getIdentifier()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getName()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void setName(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: 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.registry.security.authorization.file.tenants.generated.Group$User;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group$User: void <init>()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group$User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: java.util.List getGroup()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getGroupsById()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getIdentifier()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public org.apache.nifi.registry.security.authorization.Group getGroup(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider 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.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
if v != null goto label;
return null;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getGroupsById()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public org.apache.nifi.registry.security.authorization.UserAndGroups getUserAndGroups(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Set v;
java.lang.Object v;
org.apache.nifi.registry.security.authorization.User v;
java.lang.String v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$1 v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.User getUser(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getGroups(java.lang.String)>(v);
v = new org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$1;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$1: void <init>(org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider,org.apache.nifi.registry.security.authorization.User,java.util.Set)>(v, v, v);
return v;
}
public synchronized org.apache.nifi.registry.security.authorization.Group updateGroup(org.apache.nifi.registry.security.authorization.Group) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.concurrent.atomic.AtomicReference v, v;
org.apache.nifi.registry.security.authorization.Group v;
java.util.Map v;
java.lang.String v, v, v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Group v;
boolean v, v, v;
java.util.Iterator v, v;
java.util.Set v;
java.lang.IllegalArgumentException v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.List v, v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Group$User v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.Group;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Group cannot be null");
throw v;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants getTenants()>();
v = null;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: 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.registry.security.authorization.file.tenants.generated.Group: java.lang.String getIdentifier()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: 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:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: void clear()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: 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.registry.security.authorization.file.tenants.generated.Group$User;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group$User: void <init>()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group$User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getName()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void setName(java.lang.String)>(v);
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getGroupsById()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: 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.registry.security.authorization.Group deleteGroup(org.apache.nifi.registry.security.authorization.Group) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.Group v, v;
java.lang.String v;
java.lang.IllegalArgumentException v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.Group;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Group cannot be null");
throw v;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getIdentifier()>();
v = specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.Group deleteGroup(java.lang.String)>(v);
return v;
}
private synchronized org.apache.nifi.registry.security.authorization.Group deleteGroup(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Iterator v;
java.lang.IllegalArgumentException v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.concurrent.atomic.AtomicReference v;
java.util.List v;
java.util.Map v;
java.lang.Object v, v, v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Group identifier cannot be null");
throw v;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Map getGroupsById()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants getTenants()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: 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.registry.security.authorization.file.tenants.generated.Group: 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()>();
label:
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
return v;
}
org.apache.nifi.registry.security.authorization.file.UserGroupHolder getUserGroupHolder()
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
return v;
}
public void setIdentityMapper(org.apache.nifi.registry.security.identity.IdentityMapper)
{
org.apache.nifi.registry.security.identity.IdentityMapper v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.identity.IdentityMapper;
v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.identity.IdentityMapper identityMapper> = v;
return;
}
public synchronized void inheritFingerprint(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
java.util.function.Consumer v, v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.List v, v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups v;
java.lang.String v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
v = specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups parseUsersAndGroups(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups: java.util.List getUsers()>();
v = staticinvoke <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$lambda_inheritFingerprint_0__69: java.util.function.Consumer bootstrap$(org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider)>(v);
interfaceinvoke v.<java.util.List: void forEach(java.util.function.Consumer)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups: java.util.List getGroups()>();
v = staticinvoke <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$lambda_inheritFingerprint_1__70: java.util.function.Consumer bootstrap$(org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider)>(v);
interfaceinvoke v.<java.util.List: void forEach(java.util.function.Consumer)>(v);
return;
}
public void checkInheritability(java.lang.String) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
java.lang.Throwable v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Set v, v;
java.util.concurrent.atomic.AtomicReference v;
java.lang.Object v;
org.apache.nifi.registry.security.authorization.exception.UninheritableAuthorizationsException v, v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
label:
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups parseUsersAndGroups(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.nifi.registry.security.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.registry.security.authorization.exception.UninheritableAuthorizationsException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllUsers()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllGroups()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v != 0 goto label;
label:
v = new org.apache.nifi.registry.security.authorization.exception.UninheritableAuthorizationsException;
specialinvoke v.<org.apache.nifi.registry.security.authorization.exception.UninheritableAuthorizationsException: void <init>(java.lang.String)>("Proposed fingerprint is not inheritable because the current users and groups is not empty.");
throw v;
label:
return;
catch org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException from label to label with label;
}
public java.lang.String getFingerprint() throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
java.lang.Throwable v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.concurrent.atomic.AtomicReference v;
java.util.function.Function v, v;
java.util.ArrayList v, v;
javax.xml.stream.XMLStreamException v;
javax.xml.stream.XMLStreamWriter v;
java.lang.String v;
org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException v;
boolean v, v;
java.util.Iterator v, v;
java.io.StringWriter v;
java.util.Set v, v;
javax.xml.stream.XMLOutputFactory v;
java.lang.Object v, v, v;
java.util.Comparator v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
v = new java.util.ArrayList;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllUsers()>();
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
v = staticinvoke <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$getIdentifier__71: 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.util.ArrayList;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllGroups()>();
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
v = staticinvoke <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$getIdentifier__72: 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.registry.security.authorization.file.FileUserGroupProvider: 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)>("tenants");
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.registry.security.authorization.file.FileUserGroupProvider: void writeUser(javax.xml.stream.XMLStreamWriter,org.apache.nifi.registry.security.authorization.User)>(v, v);
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()>();
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void writeGroup(javax.xml.stream.XMLStreamWriter,org.apache.nifi.registry.security.authorization.Group)>(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.registry.security.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.registry.security.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 org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups parseUsersAndGroups(java.lang.String)
{
java.lang.Throwable v, v;
byte[] v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.ArrayList v, v;
org.apache.nifi.registry.security.authorization.Group v;
java.io.ByteArrayInputStream v;
java.nio.charset.Charset v;
org.w3c.dom.Document v;
org.w3c.dom.Node v, v;
int v, v, v, v;
java.lang.String v;
org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException v;
org.apache.nifi.xml.processing.parsers.StandardDocumentProvider v;
org.w3c.dom.NodeList v, v;
org.apache.nifi.registry.security.authorization.User v;
org.w3c.dom.Element v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: java.lang.String;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
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 = interfaceinvoke v.<org.apache.nifi.xml.processing.parsers.DocumentProvider: 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)>("user");
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.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.User parseUser(org.w3c.dom.Element)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getElementsByTagName(java.lang.String)>("group");
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.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.Group parseGroup(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.registry.security.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException: void <init>(java.lang.String,java.lang.Throwable)>("Unable to parse fingerprint", v);
throw v;
label:
v = new org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider$UsersAndGroups: void <init>(java.util.List,java.util.List)>(v, v);
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.registry.security.authorization.User parseUser(org.w3c.dom.Element)
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.User v;
org.apache.nifi.registry.security.authorization.User$Builder v, v, v;
org.w3c.dom.Element v;
java.lang.String v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.w3c.dom.Element;
v = new org.apache.nifi.registry.security.authorization.User$Builder;
specialinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: void <init>()>();
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("identifier");
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: org.apache.nifi.registry.security.authorization.User$Builder identifier(java.lang.String)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("identity");
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: org.apache.nifi.registry.security.authorization.User$Builder identity(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: org.apache.nifi.registry.security.authorization.User build()>();
return v;
}
private org.apache.nifi.registry.security.authorization.Group parseGroup(org.w3c.dom.Element)
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.w3c.dom.NodeList v;
org.apache.nifi.registry.security.authorization.Group v;
org.w3c.dom.Element v;
org.w3c.dom.Node v;
int v, v;
java.lang.String v, v, v;
org.apache.nifi.registry.security.authorization.Group$Builder v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.w3c.dom.Element;
v = new org.apache.nifi.registry.security.authorization.Group$Builder;
specialinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: void <init>()>();
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("identifier");
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group$Builder identifier(java.lang.String)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: java.lang.String getAttribute(java.lang.String)>("name");
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group$Builder name(java.lang.String)>(v);
v = interfaceinvoke v.<org.w3c.dom.Element: org.w3c.dom.NodeList getElementsByTagName(java.lang.String)>("groupUser");
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.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group$Builder addUser(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group build()>();
return v;
}
private void writeUser(javax.xml.stream.XMLStreamWriter, org.apache.nifi.registry.security.authorization.User) throws javax.xml.stream.XMLStreamException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
javax.xml.stream.XMLStreamWriter v;
org.apache.nifi.registry.security.authorization.User v;
java.lang.String v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: javax.xml.stream.XMLStreamWriter;
v := @parameter: org.apache.nifi.registry.security.authorization.User;
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartElement(java.lang.String)>("user");
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: 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.registry.security.authorization.User: java.lang.String getIdentity()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("identity", v);
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeEndElement()>();
return;
}
private void writeGroup(javax.xml.stream.XMLStreamWriter, org.apache.nifi.registry.security.authorization.Group) throws javax.xml.stream.XMLStreamException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Iterator v;
java.util.Set v;
java.util.ArrayList v;
org.apache.nifi.registry.security.authorization.Group v;
java.lang.Object v;
javax.xml.stream.XMLStreamWriter v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: javax.xml.stream.XMLStreamWriter;
v := @parameter: org.apache.nifi.registry.security.authorization.Group;
v = new java.util.ArrayList;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: 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);
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeStartElement(java.lang.String)>("group");
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: 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.registry.security.authorization.Group: java.lang.String getName()>();
interfaceinvoke v.<javax.xml.stream.XMLStreamWriter: void writeAttribute(java.lang.String,java.lang.String)>("name", 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)>("groupUser");
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 org.apache.nifi.registry.security.authorization.file.tenants.generated.User createJAXBUser(org.apache.nifi.registry.security.authorization.User)
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.User v;
org.apache.nifi.registry.security.authorization.User v;
java.lang.String v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.User;
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.User;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentifier()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentity()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void setIdentity(java.lang.String)>(v);
return v;
}
private synchronized void load() throws javax.xml.bind.JAXBException, java.lang.IllegalStateException, org.xml.sax.SAXException
{
org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups v, v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.file.UserGroupHolder v;
java.util.Set v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Users v, v;
boolean v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v = specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants unmarshallTenants()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Users getUsers()>();
if v != null goto label;
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.Users;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Users: void <init>()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: void setUsers(org.apache.nifi.registry.security.authorization.file.tenants.generated.Users)>(v);
label:
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
if v != null goto label;
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: void <init>()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: void setGroups(org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups)>(v);
label:
v = new org.apache.nifi.registry.security.authorization.file.UserGroupHolder;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: void <init>(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllUsers()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: java.util.Set getAllGroups()>();
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v == 0 goto label;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void populateInitialUsers(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
goto label;
label:
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: void set(java.lang.Object)>(v);
label:
return;
}
private void saveTenants(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants) throws javax.xml.bind.JAXBException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
javax.xml.bind.Marshaller v;
java.lang.Boolean v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.io.File v;
javax.xml.bind.JAXBContext v;
javax.xml.validation.Schema v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants;
v = <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.bind.JAXBContext JAXB_TENANTS_CONTEXT>;
v = virtualinvoke v.<javax.xml.bind.JAXBContext: javax.xml.bind.Marshaller createMarshaller()>();
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.validation.Schema tenantsSchema>;
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);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.io.File tenantsFile>;
interfaceinvoke v.<javax.xml.bind.Marshaller: void marshal(java.lang.Object,java.io.File)>(v, v);
return;
}
private org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants unmarshallTenants() throws javax.xml.bind.JAXBException
{
javax.xml.bind.Unmarshaller v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
javax.xml.bind.JAXBElement v;
javax.xml.transform.stream.StreamSource v;
java.io.File v;
javax.xml.validation.Schema v;
java.lang.Object v;
javax.xml.bind.JAXBContext v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v = <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.bind.JAXBContext JAXB_TENANTS_CONTEXT>;
v = virtualinvoke v.<javax.xml.bind.JAXBContext: javax.xml.bind.Unmarshaller createUnmarshaller()>();
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.validation.Schema tenantsSchema>;
interfaceinvoke v.<javax.xml.bind.Unmarshaller: void setSchema(javax.xml.validation.Schema)>(v);
v = new javax.xml.transform.stream.StreamSource;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.io.File tenantsFile>;
specialinvoke v.<javax.xml.transform.stream.StreamSource: void <init>(java.io.File)>(v);
v = interfaceinvoke v.<javax.xml.bind.Unmarshaller: javax.xml.bind.JAXBElement unmarshal(javax.xml.transform.Source,java.lang.Class)>(v, class "Lorg/apache/nifi/registry/security/authorization/file/tenants/generated/Tenants;");
v = virtualinvoke v.<javax.xml.bind.JAXBElement: java.lang.Object getValue()>();
return v;
}
private void populateInitialUsers(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
java.util.Iterator v;
java.util.Set v;
java.lang.Object v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
boolean v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants;
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.Set initialUserIdentities>;
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()>();
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.apache.nifi.registry.security.authorization.file.tenants.generated.User getOrCreateUser(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants,java.lang.String)>(v, v);
goto label;
label:
return;
}
private org.apache.nifi.registry.security.authorization.file.tenants.generated.User getOrCreateUser(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants, java.lang.String)
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Users v, v;
java.lang.String v, v, v, v;
boolean v, v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.User v, v;
java.util.Iterator v;
org.apache.nifi.registry.security.authorization.User v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
org.apache.nifi.registry.security.authorization.User$Builder v, v, v;
java.util.List v, v;
java.lang.Object v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v == 0 goto label;
return null;
label:
v = null;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Users getUsers()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.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.registry.security.authorization.file.tenants.generated.User: java.lang.String getIdentity()>();
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 = new org.apache.nifi.registry.security.authorization.User$Builder;
specialinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: org.apache.nifi.registry.security.authorization.User$Builder identifierGenerateFromSeed(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: org.apache.nifi.registry.security.authorization.User$Builder identity(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User$Builder: org.apache.nifi.registry.security.authorization.User build()>();
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.User;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void <init>()>();
v = v;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentifier()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.User: java.lang.String getIdentity()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.User: void setIdentity(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Users getUsers()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Users: java.util.List getUser()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return v;
}
private org.apache.nifi.registry.security.authorization.file.tenants.generated.Group getOrCreateGroup(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants, java.lang.String)
{
org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups v, v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.Group v;
java.lang.String v, v, v, v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Group v, v;
boolean v, v, v;
java.util.Iterator v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.List v, v;
java.lang.Object v;
org.apache.nifi.registry.security.authorization.Group$Builder v, v, v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.commons.lang.StringUtils: boolean isBlank(java.lang.CharSequence)>(v);
if v == 0 goto label;
return null;
label:
v = null;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: 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.registry.security.authorization.file.tenants.generated.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 = new org.apache.nifi.registry.security.authorization.Group$Builder;
specialinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group$Builder identifierGenerateFromSeed(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group$Builder name(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group$Builder: org.apache.nifi.registry.security.authorization.Group build()>();
v = new org.apache.nifi.registry.security.authorization.file.tenants.generated.Group;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void <init>()>();
v = v;
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getIdentifier()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void setIdentifier(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.Group: java.lang.String getName()>();
virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Group: void setName(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants: org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups getGroups()>();
v = virtualinvoke v.<org.apache.nifi.registry.security.authorization.file.tenants.generated.Groups: java.util.List getGroup()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
return v;
}
private synchronized void saveAndRefreshHolder(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants) throws org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException
{
java.lang.Throwable v;
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
org.apache.nifi.registry.security.authorization.file.UserGroupHolder v;
org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants v;
java.util.concurrent.atomic.AtomicReference v;
org.apache.nifi.registry.security.authorization.exception.AuthorizationAccessException v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
v := @parameter: org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants;
label:
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: void saveTenants(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(v);
v = v.<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: java.util.concurrent.atomic.AtomicReference userGroupHolder>;
v = new org.apache.nifi.registry.security.authorization.file.UserGroupHolder;
specialinvoke v.<org.apache.nifi.registry.security.authorization.file.UserGroupHolder: void <init>(org.apache.nifi.registry.security.authorization.file.tenants.generated.Tenants)>(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.registry.security.authorization.exception.AuthorizationAccessException;
specialinvoke v.<org.apache.nifi.registry.security.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.registry.security.exception.SecurityProviderDestructionException
{
org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider v;
v := @this: org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider;
return;
}
static void <clinit>()
{
javax.xml.stream.XMLOutputFactory v;
org.slf4j.Logger v;
javax.xml.bind.JAXBContext v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/nifi/registry/security/authorization/file/FileUserGroupProvider;");
<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: org.slf4j.Logger logger> = v;
v = staticinvoke <org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.bind.JAXBContext initializeJaxbContext(java.lang.String)>("org.apache.nifi.registry.security.authorization.file.tenants.generated");
<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.bind.JAXBContext JAXB_TENANTS_CONTEXT> = v;
v = staticinvoke <javax.xml.stream.XMLOutputFactory: javax.xml.stream.XMLOutputFactory newInstance()>();
<org.apache.nifi.registry.security.authorization.file.FileUserGroupProvider: javax.xml.stream.XMLOutputFactory XML_OUTPUT_FACTORY> = v;
return;
}
}