public final class com.netflix.concurrency.limits.servlet.ServletLimiterBuilder extends com.netflix.concurrency.limits.limiter.AbstractPartitionedLimiter$Builder<com.netflix.concurrency.limits.servlet.ServletLimiterBuilder, javax.servlet.http.HttpServletRequest>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.netflix.concurrency.limits.servlet.ServletLimiterBuilder
super_class: com.netflix.concurrency.limits.limiter.AbstractPartitionedLimiter$Builder
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.netflix.concurrency.limits.limiter.AbstractPartitionedLimiter$Builder.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
public com.netflix.concurrency.limits.servlet.ServletLimiterBuilder (java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic apply(Ljava/lang/String;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/netflix/concurrency/limits/servlet/ServletLimiterBuilder.lambda$0(Ljava/lang/String;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String; (6)
(Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
invokevirtual com.netflix.concurrency.limits.servlet.ServletLimiterBuilder.partitionResolver:(Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/limiter/AbstractLimiter$Builder;
checkcast com.netflix.concurrency.limits.servlet.ServletLimiterBuilder
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public com.netflix.concurrency.limits.servlet.ServletLimiterBuilder partitionByUserPrincipal(java.util.function.Function<java.security.Principal, java.lang.String>);
descriptor: (Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic apply(Ljava/util/function/Function;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/netflix/concurrency/limits/servlet/ServletLimiterBuilder.lambda$1(Ljava/util/function/Function;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String; (6)
(Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
invokevirtual com.netflix.concurrency.limits.servlet.ServletLimiterBuilder.partitionResolver:(Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/limiter/AbstractLimiter$Builder;
checkcast com.netflix.concurrency.limits.servlet.ServletLimiterBuilder
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
0 1 1 principalToGroup Ljava/util/function/Function<Ljava/security/Principal;Ljava/lang/String;>;
Signature: (Ljava/util/function/Function<Ljava/security/Principal;Ljava/lang/String;>;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
MethodParameters:
Name Flags
principalToGroup
public com.netflix.concurrency.limits.servlet.ServletLimiterBuilder partitionByAttribute(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic apply(Ljava/lang/String;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/netflix/concurrency/limits/servlet/ServletLimiterBuilder.lambda$2(Ljava/lang/String;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String; (6)
(Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
invokevirtual com.netflix.concurrency.limits.servlet.ServletLimiterBuilder.partitionResolver:(Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/limiter/AbstractLimiter$Builder;
checkcast com.netflix.concurrency.limits.servlet.ServletLimiterBuilder
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public com.netflix.concurrency.limits.servlet.ServletLimiterBuilder partitionByParameter(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic apply(Ljava/lang/String;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/netflix/concurrency/limits/servlet/ServletLimiterBuilder.lambda$4(Ljava/lang/String;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String; (6)
(Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
invokevirtual com.netflix.concurrency.limits.servlet.ServletLimiterBuilder.partitionResolver:(Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/limiter/AbstractLimiter$Builder;
checkcast com.netflix.concurrency.limits.servlet.ServletLimiterBuilder
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
0 1 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public com.netflix.concurrency.limits.servlet.ServletLimiterBuilder partitionByPathInfo(java.util.function.Function<java.lang.String, java.lang.String>);
descriptor: (Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic apply(Ljava/util/function/Function;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
com/netflix/concurrency/limits/servlet/ServletLimiterBuilder.lambda$5(Ljava/util/function/Function;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String; (6)
(Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
invokevirtual com.netflix.concurrency.limits.servlet.ServletLimiterBuilder.partitionResolver:(Ljava/util/function/Function;)Lcom/netflix/concurrency/limits/limiter/AbstractLimiter$Builder;
checkcast com.netflix.concurrency.limits.servlet.ServletLimiterBuilder
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
0 1 1 pathToGroup Ljava/util/function/Function<Ljava/lang/String;Ljava/lang/String;>;
Signature: (Ljava/util/function/Function<Ljava/lang/String;Ljava/lang/String;>;)Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
MethodParameters:
Name Flags
pathToGroup
protected com.netflix.concurrency.limits.servlet.ServletLimiterBuilder self();
descriptor: ()Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
protected com.netflix.concurrency.limits.limiter.AbstractLimiter$Builder self();
descriptor: ()Lcom/netflix/concurrency/limits/limiter/AbstractLimiter$Builder;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual com.netflix.concurrency.limits.servlet.ServletLimiterBuilder.self:()Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.String lambda$0(java.lang.String, javax.servlet.http.HttpServletRequest);
descriptor: (Ljava/lang/String;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
aload 0
invokeinterface javax.servlet.http.HttpServletRequest.getHeader:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
private static java.lang.String lambda$1(java.util.function.Function, javax.servlet.http.HttpServletRequest);
descriptor: (Ljava/util/function/Function;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getUserPrincipal:()Ljava/security/Principal;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
aload 0
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
private static java.lang.String lambda$2(java.lang.String, javax.servlet.http.HttpServletRequest);
descriptor: (Ljava/lang/String;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
aload 0
invokeinterface javax.servlet.http.HttpServletRequest.getAttribute:(Ljava/lang/String;)Ljava/lang/Object;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
java/lang/Object.toString()Ljava/lang/String; (5)
(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
private static java.lang.String lambda$4(java.lang.String, javax.servlet.http.HttpServletRequest);
descriptor: (Ljava/lang/String;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
aload 0
invokeinterface javax.servlet.http.HttpServletRequest.getParameter:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
private static java.lang.String lambda$5(java.util.function.Function, javax.servlet.http.HttpServletRequest);
descriptor: (Ljava/util/function/Function;Ljavax/servlet/http/HttpServletRequest;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
invokeinterface javax.servlet.http.HttpServletRequest.getPathInfo:()Ljava/lang/String;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
aload 0
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 request Ljavax/servlet/http/HttpServletRequest;
}
Signature: Lcom/netflix/concurrency/limits/limiter/AbstractPartitionedLimiter$Builder<Lcom/netflix/concurrency/limits/servlet/ServletLimiterBuilder;Ljavax/servlet/http/HttpServletRequest;>;
SourceFile: "ServletLimiterBuilder.java"
InnerClasses:
public abstract Builder = com.netflix.concurrency.limits.limiter.AbstractLimiter$Builder of com.netflix.concurrency.limits.limiter.AbstractLimiter
public abstract Builder = com.netflix.concurrency.limits.limiter.AbstractPartitionedLimiter$Builder of com.netflix.concurrency.limits.limiter.AbstractPartitionedLimiter
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles