public class org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel extends java.lang.Object implements org.apache.isis.applib.ViewModel
{
public static final java.lang.String LOGICAL_TYPE_NAME;
org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository applicationUserRepository;
org.apache.isis.applib.services.factory.FactoryService factory;
org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository featureRepository;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository applicationPermissionRepository;
private java.lang.String username;
private boolean viewingGranted;
private boolean changingGranted;
private org.apache.isis.applib.services.appfeat.ApplicationFeatureId featureId;
private org.apache.isis.applib.services.appfeat.ApplicationFeatureId viewingFeatureId;
private org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode viewingMode;
private org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule viewingRule;
private org.apache.isis.applib.services.appfeat.ApplicationFeatureId changingFeatureId;
private org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode changingMode;
private org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule changingRule;
private static final org.apache.isis.applib.util.ToString toString;
public static org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel newViewModel(org.apache.isis.applib.services.appfeat.ApplicationFeatureId, org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation, org.apache.isis.applib.services.factory.FactoryService)
{
org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser v;
org.apache.isis.applib.services.bookmark.Bookmark v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
java.lang.Object v;
org.apache.isis.applib.services.factory.FactoryService v;
java.lang.String v, v;
v := @parameter: org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
v := @parameter: org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v := @parameter: org.apache.isis.applib.services.factory.FactoryService;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser: java.lang.String getUsername()>();
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String asEncodedString(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,java.lang.String,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation)>(v, v, v, v);
v = staticinvoke <org.apache.isis.applib.services.bookmark.Bookmark: org.apache.isis.applib.services.bookmark.Bookmark forLogicalTypeNameAndIdentifier(java.lang.String,java.lang.String)>("isis.ext.secman.UserPermissionViewModel", v);
v = interfaceinvoke v.<org.apache.isis.applib.services.factory.FactoryService: java.lang.Object viewModel(java.lang.Class,org.apache.isis.applib.services.bookmark.Bookmark)>(class "Lorg/apache/isis/extensions/secman/applib/user/dom/mixins/perms/UserPermissionViewModel;", v);
return v;
}
public void <init>()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
specialinvoke v.<java.lang.Object: void <init>()>();
v = <org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureId NAMESPACE_DEFAULT>;
virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: void setFeatureId(org.apache.isis.applib.services.appfeat.ApplicationFeatureId)>(v);
return;
}
public java.lang.String title()
{
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v, v, v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String getVerb()>();
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()>();
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: java.lang.String getFullyQualifiedName()>();
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");
return v;
}
public java.lang.String iconName()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
return "userPermission";
}
public java.lang.String viewModelMemento()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String asEncodedString()>();
return v;
}
public void viewModelInit(java.lang.String)
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v := @parameter: java.lang.String;
specialinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: void parseEncoded(java.lang.String)>(v);
return;
}
private static java.lang.String asEncodedString(org.apache.isis.applib.services.appfeat.ApplicationFeatureId, java.lang.String, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation)
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
java.lang.String v, v, v;
v := @parameter: org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
v := @parameter: java.lang.String;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String asString(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,java.lang.String,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation)>(v, v, v, v);
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String base64UrlEncode(java.lang.String)>(v);
return v;
}
private static java.lang.String asString(org.apache.isis.applib.services.appfeat.ApplicationFeatureId, java.lang.String, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation)
{
java.lang.Object[] v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v, v, v, v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureSort v;
java.lang.Boolean v, v;
java.lang.String v, v, v, v, v;
boolean v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v, v;
java.lang.constant.Constable v, v, v, v;
java.lang.Object v, v;
v := @parameter: org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
v := @parameter: java.lang.String;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation: boolean isGranted()>();
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getCause()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()>();
goto label;
label:
v = null;
label:
v = v;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation: boolean isGranted()>();
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getCause()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()>();
goto label;
label:
v = null;
label:
v = v;
v = newarray (java.lang.Object)[13];
v[0] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[1] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureSort getSort()>();
goto label;
label:
v = "";
label:
v[2] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: java.lang.String getFullyQualifiedName()>();
goto label;
label:
v = "";
label:
v[3] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule getRule()>();
goto label;
label:
v = "";
label:
v[4] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode getMode()>();
goto label;
label:
v = "";
label:
v[5] = v;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[6] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureSort getSort()>();
goto label;
label:
v = "";
label:
v[7] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: java.lang.String getFullyQualifiedName()>();
goto label;
label:
v = "";
label:
v[8] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule getRule()>();
goto label;
label:
v = "";
label:
v[9] = v;
if v == null goto label;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode getMode()>();
goto label;
label:
v = "";
label:
v[10] = v;
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureSort getSort()>();
v[11] = v;
v = virtualinvoke v.<org.apache.isis.applib.services.appfeat.ApplicationFeatureId: java.lang.String getFullyQualifiedName()>();
v[12] = v;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String join(java.lang.Object[])>(v);
return v;
}
private static transient java.lang.String join(java.lang.Object[])
{
java.lang.Object[] v;
java.util.stream.Stream v, v;
java.lang.Object v;
java.util.stream.Collector v;
java.util.function.Function v;
v := @parameter: java.lang.Object[];
v = staticinvoke <org.apache.isis.commons.internal.base._NullSafe: java.util.stream.Stream stream(java.lang.Object[])>(v);
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel$lambda_join_0__85: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream map(java.util.function.Function)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector joining(java.lang.CharSequence)>(":");
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
return v;
}
private void parseEncoded(java.lang.String)
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v, v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String base64UrlDecode(java.lang.String)>(v);
specialinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: void parse(java.lang.String)>(v);
return;
}
private void parse(java.lang.String)
{
java.util.ListIterator v;
java.util.stream.Collector v;
boolean v, v, v, v, v, v, v, v;
java.util.stream.Stream v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v, v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureSort v, v, v;
java.lang.String v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.Object v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.isis.commons.internal.base._Strings: java.util.stream.Stream splitThenStream(java.lang.String,java.lang.String)>(v, ":");
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toList()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
v = interfaceinvoke v.<java.util.List: java.util.ListIterator listIterator()>();
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String username> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: boolean viewingGranted> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.isis.applib.services.appfeat.ApplicationFeatureSort: org.apache.isis.applib.services.appfeat.ApplicationFeatureSort valueOf(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
if v == null goto label;
v = staticinvoke <org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureId newFeature(org.apache.isis.applib.services.appfeat.ApplicationFeatureSort,java.lang.String)>(v, v);
goto label;
label:
v = null;
label:
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId viewingFeatureId> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule valueOf(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule viewingRule> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode valueOf(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode viewingMode> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: boolean changingGranted> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.isis.applib.services.appfeat.ApplicationFeatureSort: org.apache.isis.applib.services.appfeat.ApplicationFeatureSort valueOf(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
if v == null goto label;
v = staticinvoke <org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureId newFeature(org.apache.isis.applib.services.appfeat.ApplicationFeatureSort,java.lang.String)>(v, v);
goto label;
label:
v = null;
label:
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId changingFeatureId> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule valueOf(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule changingRule> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode valueOf(java.lang.String)>(v);
goto label;
label:
v = null;
label:
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode changingMode> = v;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.apache.isis.applib.services.appfeat.ApplicationFeatureSort: org.apache.isis.applib.services.appfeat.ApplicationFeatureSort valueOf(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.apache.isis.applib.services.appfeat.ApplicationFeatureId: org.apache.isis.applib.services.appfeat.ApplicationFeatureId newFeature(org.apache.isis.applib.services.appfeat.ApplicationFeatureSort,java.lang.String)>(v, v);
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId featureId> = v;
return;
}
public java.lang.String asEncodedString()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation v, v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v, v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode v, v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()>();
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String getUsername()>();
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: boolean viewingGranted>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId viewingFeatureId>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule viewingRule>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode viewingMode>;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation newEvaluation(boolean,org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)>(v, v, v, v);
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: boolean changingGranted>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId changingFeatureId>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule changingRule>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode changingMode>;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation newEvaluation(boolean,org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)>(v, v, v, v);
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String asEncodedString(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,java.lang.String,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation)>(v, v, v, v);
return v;
}
private static org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation newEvaluation(boolean, org.apache.isis.applib.services.appfeat.ApplicationFeatureId, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule v;
boolean v;
v := @parameter: boolean;
v := @parameter: org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
v = new org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue newPermissionValue(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)>(v, v, v);
specialinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValueSet$Evaluation: void <init>(org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue,boolean)>(v, v);
return v;
}
private static org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue newPermissionValue(org.apache.isis.applib.services.appfeat.ApplicationFeatureId, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule, org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule v;
v := @parameter: org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule;
v := @parameter: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode;
if v == null goto label;
if v == null goto label;
if v != null goto label;
label:
return null;
label:
v = new org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
specialinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: void <init>(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)>(v, v, v);
return v;
}
private static java.lang.String base64UrlDecode(java.lang.String)
{
byte[] v;
java.nio.charset.Charset v;
java.util.Base64$Decoder v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v = staticinvoke <java.util.Base64: java.util.Base64$Decoder getUrlDecoder()>();
v = virtualinvoke v.<java.util.Base64$Decoder: byte[] decode(java.lang.String)>(v);
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = staticinvoke <org.apache.isis.commons.internal.base._Strings: java.lang.String ofBytes(byte[],java.nio.charset.Charset)>(v, v);
return v;
}
private static java.lang.String base64UrlEncode(java.lang.String)
{
byte[] v;
java.nio.charset.Charset v;
java.util.Base64$Encoder v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v = <java.nio.charset.StandardCharsets: java.nio.charset.Charset UTF_8>;
v = virtualinvoke v.<java.lang.String: byte[] getBytes(java.nio.charset.Charset)>(v);
v = staticinvoke <java.util.Base64: java.util.Base64$Encoder getUrlEncoder()>();
v = virtualinvoke v.<java.util.Base64$Encoder: java.lang.String encodeToString(byte[])>(v);
return v;
}
public org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser getUser()
{
org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository applicationUserRepository>;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String getUsername()>();
v = interfaceinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.ApplicationUserRepository: org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser findOrCreateUserByUsername(java.lang.String)>(v);
return v;
}
public java.lang.String getVerb()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
boolean v, v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: boolean changingGranted>;
if v == 0 goto label;
v = "Can change";
goto label;
label:
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: boolean viewingGranted>;
if v == 0 goto label;
v = "Can view";
goto label;
label:
v = "No access to";
label:
return v;
}
public org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel getFeature()
{
org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v, v;
org.apache.isis.applib.services.factory.FactoryService v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()>();
if v != null goto label;
return null;
label:
v = virtualinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()>();
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository featureRepository>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.factory.FactoryService factory>;
v = staticinvoke <org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel: org.apache.isis.applib.services.appfeatui.ApplicationFeatureViewModel newViewModel(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.applib.services.appfeat.ApplicationFeatureRepository,org.apache.isis.applib.services.factory.FactoryService)>(v, v, v);
return v;
}
public org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission getViewingPermission()
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository v;
java.util.Optional v;
java.lang.Object v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = specialinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getViewingPermissionValue()>();
if v == null goto label;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository applicationPermissionRepository>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String username>;
v = specialinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getViewingPermissionValue()>();
v = interfaceinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository: java.util.Optional findByUserAndPermissionValue(java.lang.String,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
label:
return v;
}
private org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getViewingPermissionValue()
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId viewingFeatureId>;
if v != null goto label;
v = null;
goto label;
label:
v = new org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId viewingFeatureId>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule viewingRule>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode viewingMode>;
specialinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: void <init>(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)>(v, v, v);
label:
return v;
}
public org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermission getChangingPermission()
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository v;
java.util.Optional v;
java.lang.Object v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = specialinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getChangingPermissionValue()>();
if v == null goto label;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository applicationPermissionRepository>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String username>;
v = specialinvoke v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getChangingPermissionValue()>();
v = interfaceinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRepository: java.util.Optional findByUserAndPermissionValue(java.lang.String,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue)>(v, v);
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(null);
label:
return v;
}
private org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue getChangingPermissionValue()
{
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v, v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode v;
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId changingFeatureId>;
if v != null goto label;
v = null;
goto label;
label:
v = new org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId changingFeatureId>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule changingRule>;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode changingMode>;
specialinvoke v.<org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionValue: void <init>(org.apache.isis.applib.services.appfeat.ApplicationFeatureId,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionRule,org.apache.isis.extensions.secman.applib.permission.dom.ApplicationPermissionMode)>(v, v, v);
label:
return v;
}
public java.lang.String toString()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
org.apache.isis.applib.util.ToString v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.util.ToString toString>;
v = virtualinvoke v.<org.apache.isis.applib.util.ToString: java.lang.String toString(java.lang.Object)>(v);
return v;
}
public static java.util.function.Function asViewModel(org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser, org.apache.isis.applib.services.factory.FactoryService)
{
org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser v;
org.apache.isis.applib.services.factory.FactoryService v;
java.util.function.Function v;
v := @parameter: org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser;
v := @parameter: org.apache.isis.applib.services.factory.FactoryService;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel$lambda_asViewModel_1__86: java.util.function.Function bootstrap$(org.apache.isis.extensions.secman.applib.user.dom.ApplicationUser,org.apache.isis.applib.services.factory.FactoryService)>(v, v);
return v;
}
public java.lang.String getUsername()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
java.lang.String v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: java.lang.String username>;
return v;
}
public org.apache.isis.applib.services.appfeat.ApplicationFeatureId getFeatureId()
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v = v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId featureId>;
return v;
}
public void setFeatureId(org.apache.isis.applib.services.appfeat.ApplicationFeatureId)
{
org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel v;
org.apache.isis.applib.services.appfeat.ApplicationFeatureId v;
v := @this: org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel;
v := @parameter: org.apache.isis.applib.services.appfeat.ApplicationFeatureId;
v.<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.services.appfeat.ApplicationFeatureId featureId> = v;
return;
}
static void <clinit>()
{
org.apache.isis.applib.util.ToString v, v;
java.util.function.Function v, v;
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel$getUser__87: java.util.function.Function bootstrap$()>();
v = staticinvoke <org.apache.isis.applib.util.ObjectContracts: org.apache.isis.applib.util.ToString toString(java.lang.String,java.util.function.Function)>("user", v);
v = staticinvoke <org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel$getFeatureId__88: java.util.function.Function bootstrap$()>();
v = virtualinvoke v.<org.apache.isis.applib.util.ToString: org.apache.isis.applib.util.ToString thenToString(java.lang.String,java.util.function.Function)>("featureId", v);
<org.apache.isis.extensions.secman.applib.user.dom.mixins.perms.UserPermissionViewModel: org.apache.isis.applib.util.ToString toString> = v;
return;
}
}