public abstract class org.apache.shiro.guice.web.ShiroWebModule extends org.apache.shiro.guice.ShiroModule
{
public static final com.google.inject.Key ANON;
public static final com.google.inject.Key AUTHC;
public static final com.google.inject.Key AUTHC_BASIC;
public static final com.google.inject.Key AUTHC_BEARER;
public static final com.google.inject.Key NO_SESSION_CREATION;
public static final com.google.inject.Key LOGOUT;
public static final com.google.inject.Key PERMS;
public static final com.google.inject.Key PORT;
public static final com.google.inject.Key REST;
public static final com.google.inject.Key ROLES;
public static final com.google.inject.Key SSL;
public static final com.google.inject.Key USER;
public static final com.google.inject.Key INVALID_REQUEST;
static final java.lang.String NAME;
private final java.util.Map filterChains;
private final javax.servlet.ServletContext servletContext;
public void <init>(javax.servlet.ServletContext)
{
java.util.LinkedHashMap v;
javax.servlet.ServletContext v;
org.apache.shiro.guice.web.ShiroWebModule v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: javax.servlet.ServletContext;
specialinvoke v.<org.apache.shiro.guice.ShiroModule: void <init>()>();
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.Map filterChains> = v;
v.<org.apache.shiro.guice.web.ShiroWebModule: javax.servlet.ServletContext servletContext> = v;
return;
}
public static void bindGuiceFilter(com.google.inject.Binder)
{
com.google.inject.Binder v;
com.google.inject.servlet.ServletModule v;
v := @parameter: com.google.inject.Binder;
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.servlet.ServletModule guiceFilterModule()>();
interfaceinvoke v.<com.google.inject.Binder: void install(com.google.inject.Module)>(v);
return;
}
public static void bindGuiceFilter(java.lang.String, com.google.inject.Binder)
{
java.lang.String v;
com.google.inject.Binder v;
com.google.inject.servlet.ServletModule v;
v := @parameter: java.lang.String;
v := @parameter: com.google.inject.Binder;
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.servlet.ServletModule guiceFilterModule(java.lang.String)>(v);
interfaceinvoke v.<com.google.inject.Binder: void install(com.google.inject.Module)>(v);
return;
}
public static com.google.inject.servlet.ServletModule guiceFilterModule()
{
com.google.inject.servlet.ServletModule v;
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.servlet.ServletModule guiceFilterModule(java.lang.String)>("/*");
return v;
}
public static com.google.inject.servlet.ServletModule guiceFilterModule(java.lang.String)
{
java.lang.String v;
org.apache.shiro.guice.web.ShiroWebModule$1 v;
v := @parameter: java.lang.String;
v = new org.apache.shiro.guice.web.ShiroWebModule$1;
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$1: void <init>(java.lang.String)>(v);
return v;
}
public java.util.List globalFilters()
{
java.util.List v;
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.Key v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v = <org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key INVALID_REQUEST>;
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.Key)>(v);
v = staticinvoke <java.util.Collections: java.util.List singletonList(java.lang.Object)>(v);
return v;
}
protected final void configureShiro()
{
com.google.inject.Key v, v;
org.apache.shiro.guice.web.FilterChainResolverProvider v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[] v;
com.google.inject.binder.AnnotatedBindingBuilder v, v, v, v, v;
java.util.Map v, v;
boolean v;
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.binder.LinkedBindingBuilder v;
com.google.inject.name.Named v, v;
javax.servlet.ServletContext v;
com.google.inject.TypeLiteral v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v = staticinvoke <com.google.inject.TypeLiteral: com.google.inject.TypeLiteral get(java.lang.Class)>(class "Ljavax/servlet/ServletContext;");
v = staticinvoke <com.google.inject.name.Names: com.google.inject.name.Named named(java.lang.String)>("SHIRO");
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class,java.lang.'annotation'.Annotation)>(class "Ljavax/servlet/ServletContext;", v);
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void bindBeanType(com.google.inject.TypeLiteral,com.google.inject.Key)>(v, v);
v = staticinvoke <com.google.inject.name.Names: com.google.inject.name.Named named(java.lang.String)>("SHIRO");
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class,java.lang.'annotation'.Annotation)>(class "Ljavax/servlet/ServletContext;", v);
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.LinkedBindingBuilder bind(com.google.inject.Key)>(v);
v = v.<org.apache.shiro.guice.web.ShiroWebModule: javax.servlet.ServletContext servletContext>;
interfaceinvoke v.<com.google.inject.binder.LinkedBindingBuilder: void toInstance(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.AnnotatedBindingBuilder bind(java.lang.Class)>(class "Lorg/apache/shiro/web/mgt/WebSecurityManager;");
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void bindWebSecurityManager(com.google.inject.binder.AnnotatedBindingBuilder)>(v);
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.AnnotatedBindingBuilder bind(java.lang.Class)>(class "Lorg/apache/shiro/web/config/ShiroFilterConfiguration;");
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void bindShiroFilterConfiguration(com.google.inject.binder.AnnotatedBindingBuilder)>(v);
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.AnnotatedBindingBuilder bind(java.lang.Class)>(class "Lorg/apache/shiro/web/env/WebEnvironment;");
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void bindWebEnvironment(com.google.inject.binder.AnnotatedBindingBuilder)>(v);
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.AnnotatedBindingBuilder bind(java.lang.Class)>(class "Lorg/apache/shiro/guice/web/GuiceShiroFilter;");
interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: void asEagerSingleton()>();
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.AnnotatedElementBuilder expose(java.lang.Class)>(class "Lorg/apache/shiro/guice/web/GuiceShiroFilter;");
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void configureShiroWeb()>();
v = v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.Map filterChains>;
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>("/**");
if v != 0 goto label;
v = newarray (org.apache.shiro.guice.web.ShiroWebModule$FilterConfig)[0];
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void addFilterChain(java.lang.String,org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[])>("/**", v);
label:
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.AnnotatedBindingBuilder bind(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/mgt/FilterChainResolver;");
v = new org.apache.shiro.guice.web.FilterChainResolverProvider;
v = specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.Map setupFilterChainConfigs()>();
specialinvoke v.<org.apache.shiro.guice.web.FilterChainResolverProvider: void <init>(java.util.Map)>(v);
interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder toProvider(com.google.inject.Provider)>(v);
return;
}
private java.util.Map setupFilterChainConfigs()
{
com.google.inject.Key v, v;
org.apache.shiro.config.ConfigurationException v;
java.util.Map v;
boolean v, v, v, v, v, v;
java.util.Set v, v;
java.util.List v, v;
com.google.inject.TypeLiteral v, v, v;
java.lang.Object[] v;
java.util.HashMap v;
java.util.ArrayList v, v;
java.util.LinkedHashMap v, v;
int v, v, v, v;
java.lang.String v, v;
java.util.Iterator v, v, v;
org.apache.shiro.guice.web.ShiroWebModule v;
java.lang.Class v, v, v, v, v;
java.lang.Object v, v, v, v, v, v, v, v;
com.google.inject.Key[] v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
v = v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.Map filterChains>;
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.List globalFilters()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = new java.util.ArrayList;
v = interfaceinvoke v.<java.util.List: int size()>();
v = lengthof v;
v = v + v;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(v);
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(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()>();
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: com.google.inject.Key getKey()>();
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: java.lang.String getConfigValue()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = staticinvoke <org.apache.shiro.util.StringUtils: boolean hasText(java.lang.String)>(v);
if v == 0 goto label;
v = class "Lorg/apache/shiro/web/filter/PathMatchingFilter;";
v = virtualinvoke v.<com.google.inject.Key: com.google.inject.TypeLiteral getTypeLiteral()>();
v = virtualinvoke v.<com.google.inject.TypeLiteral: java.lang.Class getRawType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = new org.apache.shiro.config.ConfigurationException;
v = virtualinvoke v.<com.google.inject.Key: com.google.inject.TypeLiteral getTypeLiteral()>();
v = virtualinvoke v.<com.google.inject.TypeLiteral: java.lang.Class getRawType()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class)>(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[])>("Config information requires a PathMatchingFilter - can\'t apply to \u0001");
specialinvoke v.<org.apache.shiro.config.ConfigurationException: void <init>(java.lang.String)>(v);
throw v;
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
v = newarray (com.google.inject.Key)[v];
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray(java.lang.Object[])>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
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 = class "Lorg/apache/shiro/web/filter/PathMatchingFilter;";
v = virtualinvoke v.<com.google.inject.Key: com.google.inject.TypeLiteral getTypeLiteral()>();
v = virtualinvoke v.<com.google.inject.TypeLiteral: java.lang.Class getRawType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key castToPathMatching(com.google.inject.Key)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void bindPathMatchingFilter(com.google.inject.Key,java.util.Map)>(v, v);
goto label;
label:
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.LinkedBindingBuilder bind(com.google.inject.Key)>(v);
goto label;
label:
return v;
}
private void bindPathMatchingFilter(com.google.inject.Key, java.util.Map)
{
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.binder.LinkedBindingBuilder v;
org.apache.shiro.guice.web.PathMatchingFilterProvider v;
java.util.Map v;
com.google.inject.Key v;
com.google.inject.binder.ScopedBindingBuilder v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.Key;
v := @parameter: java.util.Map;
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.binder.LinkedBindingBuilder bind(com.google.inject.Key)>(v);
v = new org.apache.shiro.guice.web.PathMatchingFilterProvider;
specialinvoke v.<org.apache.shiro.guice.web.PathMatchingFilterProvider: void <init>(com.google.inject.Key,java.util.Map)>(v, v);
v = interfaceinvoke v.<com.google.inject.binder.LinkedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder toProvider(com.google.inject.Provider)>(v);
interfaceinvoke v.<com.google.inject.binder.ScopedBindingBuilder: void asEagerSingleton()>();
return;
}
private com.google.inject.Key castToPathMatching(com.google.inject.Key)
{
com.google.inject.Key v;
org.apache.shiro.guice.web.ShiroWebModule v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.Key;
return v;
}
protected abstract void configureShiroWeb();
protected final void bindSecurityManager(com.google.inject.binder.AnnotatedBindingBuilder)
{
com.google.inject.binder.AnnotatedBindingBuilder v;
org.apache.shiro.guice.web.ShiroWebModule v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.binder.AnnotatedBindingBuilder;
interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder 'to'(java.lang.Class)>(class "Lorg/apache/shiro/web/mgt/WebSecurityManager;");
return;
}
protected void bindWebSecurityManager(com.google.inject.binder.AnnotatedBindingBuilder)
{
org.apache.shiro.guice.web.ShiroWebModule v;
java.lang.NoSuchMethodException v;
java.lang.Class[] v;
java.lang.reflect.Constructor v;
com.google.inject.binder.ScopedBindingBuilder v;
com.google.inject.binder.AnnotatedBindingBuilder v;
org.apache.shiro.config.ConfigurationException v;
java.lang.Class v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.binder.AnnotatedBindingBuilder;
label:
v = class "Lorg/apache/shiro/web/mgt/DefaultWebSecurityManager;";
v = newarray (java.lang.Class)[1];
v[0] = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Constructor getConstructor(java.lang.Class[])>(v);
v = interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder toConstructor(java.lang.reflect.Constructor)>(v);
interfaceinvoke v.<com.google.inject.binder.ScopedBindingBuilder: void asEagerSingleton()>();
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.shiro.config.ConfigurationException;
specialinvoke v.<org.apache.shiro.config.ConfigurationException: void <init>(java.lang.String,java.lang.Throwable)>("This really shouldn\'t happen.  Either something has changed in Shiro, or there\'s a bug in ShiroModule.", v);
throw v;
label:
return;
catch java.lang.NoSuchMethodException from label to label with label;
}
protected void bindShiroFilterConfiguration(com.google.inject.binder.AnnotatedBindingBuilder)
{
com.google.inject.binder.AnnotatedBindingBuilder v;
org.apache.shiro.guice.web.ShiroWebModule v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.binder.AnnotatedBindingBuilder;
interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: void asEagerSingleton()>();
return;
}
protected void bindSessionManager(com.google.inject.binder.AnnotatedBindingBuilder)
{
com.google.inject.binder.AnnotatedBindingBuilder v;
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.binder.ScopedBindingBuilder v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.binder.AnnotatedBindingBuilder;
v = interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder 'to'(java.lang.Class)>(class "Lorg/apache/shiro/web/session/mgt/ServletContainerSessionManager;");
interfaceinvoke v.<com.google.inject.binder.ScopedBindingBuilder: void asEagerSingleton()>();
return;
}
protected final void bindEnvironment(com.google.inject.binder.AnnotatedBindingBuilder)
{
com.google.inject.binder.AnnotatedBindingBuilder v;
org.apache.shiro.guice.web.ShiroWebModule v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.binder.AnnotatedBindingBuilder;
interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder 'to'(java.lang.Class)>(class "Lorg/apache/shiro/web/env/WebEnvironment;");
return;
}
protected void bindWebEnvironment(com.google.inject.binder.AnnotatedBindingBuilder)
{
com.google.inject.binder.AnnotatedBindingBuilder v;
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.binder.ScopedBindingBuilder v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: com.google.inject.binder.AnnotatedBindingBuilder;
v = interfaceinvoke v.<com.google.inject.binder.AnnotatedBindingBuilder: com.google.inject.binder.ScopedBindingBuilder 'to'(java.lang.Class)>(class "Lorg/apache/shiro/guice/web/WebGuiceEnvironment;");
interfaceinvoke v.<com.google.inject.binder.ScopedBindingBuilder: void asEagerSingleton()>();
return;
}
protected final void addFilterChain(java.lang.String, com.google.inject.Key)
{
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.Key v;
java.lang.String v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[] v;
boolean v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: java.lang.String;
v := @parameter: com.google.inject.Key;
v = v instanceof org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey;
if v == 0 goto label;
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void addLegacyFilterChain(java.lang.String,org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey)>(v, v);
goto label;
label:
v = newarray (org.apache.shiro.guice.web.ShiroWebModule$FilterConfig)[1];
v = new org.apache.shiro.guice.web.ShiroWebModule$FilterConfig;
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: void <init>(com.google.inject.Key,java.lang.String)>(v, "");
v[0] = v;
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void addFilterChain(java.lang.String,org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[])>(v, v);
label:
return;
}
protected final transient void addFilterChain(java.lang.String, org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[])
{
org.apache.shiro.guice.web.ShiroWebModule v;
java.util.Map v;
java.lang.String v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[] v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: java.lang.String;
v := @parameter: org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[];
v = v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.Map filterChains>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
protected static org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.Key, java.lang.String)
{
com.google.inject.Key v;
java.lang.String v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
v := @parameter: com.google.inject.Key;
v := @parameter: java.lang.String;
v = new org.apache.shiro.guice.web.ShiroWebModule$FilterConfig;
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: void <init>(com.google.inject.Key,java.lang.String)>(v, v);
return v;
}
protected static org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.Key)
{
com.google.inject.Key v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
v := @parameter: com.google.inject.Key;
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.Key,java.lang.String)>(v, "");
return v;
}
protected static org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.TypeLiteral, java.lang.String)
{
com.google.inject.Key v;
java.lang.String v;
com.google.inject.TypeLiteral v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
v := @parameter: com.google.inject.TypeLiteral;
v := @parameter: java.lang.String;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(com.google.inject.TypeLiteral)>(v);
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.Key,java.lang.String)>(v, v);
return v;
}
protected static org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(java.lang.Class, java.lang.String)
{
com.google.inject.Key v;
java.lang.Class v;
java.lang.String v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(v);
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: org.apache.shiro.guice.web.ShiroWebModule$FilterConfig filterConfig(com.google.inject.Key,java.lang.String)>(v, v);
return v;
}
static boolean isGuiceVersion3()
{
java.lang.ClassNotFoundException v;
label:
staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("com.google.inject.multibindings.MapKey");
label:
return 0;
label:
v := @caughtexception;
return 1;
catch java.lang.ClassNotFoundException from label to label with label;
}
private void addLegacyFilterChain(java.lang.String, org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey)
{
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.Key v;
java.lang.String v, v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[] v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: java.lang.String;
v := @parameter: org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey;
v = new org.apache.shiro.guice.web.ShiroWebModule$FilterConfig;
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey: com.google.inject.Key getKey()>();
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey: java.lang.String getConfigValue()>();
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: void <init>(com.google.inject.Key,java.lang.String)>(v, v);
v = newarray (org.apache.shiro.guice.web.ShiroWebModule$FilterConfig)[1];
v[0] = v;
virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule: void addFilterChain(java.lang.String,org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[])>(v, v);
return;
}
protected final transient void addFilterChain(java.lang.String, com.google.inject.Key[])
{
org.apache.shiro.guice.web.ShiroWebModule v;
com.google.inject.Key v, v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig[] v;
java.util.Map v;
int v, v, v;
com.google.inject.Key[] v;
java.lang.String v, v;
boolean v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfig v, v;
v := @this: org.apache.shiro.guice.web.ShiroWebModule;
v := @parameter: java.lang.String;
v := @parameter: com.google.inject.Key[];
v = lengthof v;
v = newarray (org.apache.shiro.guice.web.ShiroWebModule$FilterConfig)[v];
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v instanceof org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey;
if v == 0 goto label;
v = new org.apache.shiro.guice.web.ShiroWebModule$FilterConfig;
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey: com.google.inject.Key getKey()>();
v = virtualinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey: java.lang.String getConfigValue()>();
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: void <init>(com.google.inject.Key,java.lang.String)>(v, v);
v[v] = v;
goto label;
label:
v = new org.apache.shiro.guice.web.ShiroWebModule$FilterConfig;
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfig: void <init>(com.google.inject.Key,java.lang.String)>(v, "");
v[v] = v;
label:
v = v + 1;
goto label;
label:
v = v.<org.apache.shiro.guice.web.ShiroWebModule: java.util.Map filterChains>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
protected static com.google.inject.Key config(com.google.inject.Key, java.lang.String)
{
org.apache.shiro.config.ConfigurationException v;
com.google.inject.Key v;
java.lang.String v;
boolean v;
org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey v;
v := @parameter: com.google.inject.Key;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: boolean isGuiceVersion3()>();
if v != 0 goto label;
v = new org.apache.shiro.config.ConfigurationException;
specialinvoke v.<org.apache.shiro.config.ConfigurationException: void <init>(java.lang.String)>("Method ShiroWebModule.config(Key<? extends PathMatchingFilter>, String configValue), is not supported when using Guice 4+");
throw v;
label:
v = new org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey;
specialinvoke v.<org.apache.shiro.guice.web.ShiroWebModule$FilterConfigKey: void <init>(com.google.inject.Key,java.lang.String)>(v, v);
return v;
}
protected static com.google.inject.Key config(com.google.inject.TypeLiteral, java.lang.String)
{
com.google.inject.Key v, v;
java.lang.String v;
com.google.inject.TypeLiteral v;
v := @parameter: com.google.inject.TypeLiteral;
v := @parameter: java.lang.String;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(com.google.inject.TypeLiteral)>(v);
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key config(com.google.inject.Key,java.lang.String)>(v, v);
return v;
}
protected static com.google.inject.Key config(java.lang.Class, java.lang.String)
{
com.google.inject.Key v, v;
java.lang.Class v;
java.lang.String v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(v);
v = staticinvoke <org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key config(com.google.inject.Key,java.lang.String)>(v, v);
return v;
}
static void <clinit>()
{
com.google.inject.Key v, v, v, v, v, v, v, v, v, v, v, v, v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authc/AnonymousFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key ANON> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authc/FormAuthenticationFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key AUTHC> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authc/BasicHttpAuthenticationFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key AUTHC_BASIC> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authc/BearerHttpAuthenticationFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key AUTHC_BEARER> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/session/NoSessionCreationFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key NO_SESSION_CREATION> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authc/LogoutFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key LOGOUT> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authz/PermissionsAuthorizationFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key PERMS> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authz/PortFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key PORT> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authz/HttpMethodPermissionFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key REST> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authz/RolesAuthorizationFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key ROLES> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authz/SslFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key SSL> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/authc/UserFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key USER> = v;
v = staticinvoke <com.google.inject.Key: com.google.inject.Key get(java.lang.Class)>(class "Lorg/apache/shiro/web/filter/InvalidRequestFilter;");
<org.apache.shiro.guice.web.ShiroWebModule: com.google.inject.Key INVALID_REQUEST> = v;
return;
}
}