Class ResourceStatisticsImpl.Builder
- java.lang.Object
-
- org.glassfish.jersey.server.internal.monitoring.ResourceStatisticsImpl.Builder
-
- Enclosing class:
- ResourceStatisticsImpl
static class ResourceStatisticsImpl.Builder extends java.lang.Object
Builder of resource statistics instances. Must be thread-safe.
-
-
Field Summary
Fields Modifier and Type Field Description private ResourceStatisticsImpl
cached
private ResourceMethodStatisticsImpl.Factory
methodFactory
private java.util.concurrent.ConcurrentMap<ResourceMethodStatisticsImpl.Builder,java.lang.Boolean>
methodsBuilders
private java.util.concurrent.atomic.AtomicReference<ExecutionStatisticsImpl.Builder>
requestExecutionStatisticsBuilder
private java.util.concurrent.atomic.AtomicReference<ExecutionStatisticsImpl.Builder>
resourceExecutionStatisticsBuilder
-
Constructor Summary
Constructors Constructor Description Builder(ResourceMethodStatisticsImpl.Factory methodFactory)
Create a new builder.Builder(Resource resource, ResourceMethodStatisticsImpl.Factory methodFactory)
Create a new builder.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
addExecution(ResourceMethod resourceMethod, long methodStartTime, long methodDuration, long requestStartTime, long requestDuration)
Add execution of a resource method in the resource.(package private) void
addMethod(ResourceMethod resourceMethod)
Add a resource method to the statistics.(package private) ResourceStatisticsImpl
build()
Build a new instance ofResourceStatisticsImpl
.private ResourceMethodStatisticsImpl.Builder
getOrCreate(ResourceMethod resourceMethod)
-
-
-
Field Detail
-
methodsBuilders
private final java.util.concurrent.ConcurrentMap<ResourceMethodStatisticsImpl.Builder,java.lang.Boolean> methodsBuilders
-
methodFactory
private final ResourceMethodStatisticsImpl.Factory methodFactory
-
resourceExecutionStatisticsBuilder
private final java.util.concurrent.atomic.AtomicReference<ExecutionStatisticsImpl.Builder> resourceExecutionStatisticsBuilder
-
requestExecutionStatisticsBuilder
private final java.util.concurrent.atomic.AtomicReference<ExecutionStatisticsImpl.Builder> requestExecutionStatisticsBuilder
-
cached
private volatile ResourceStatisticsImpl cached
-
-
Constructor Detail
-
Builder
Builder(Resource resource, ResourceMethodStatisticsImpl.Factory methodFactory)
Create a new builder.- Parameters:
resource
- Resource for which the instance is created.
-
Builder
Builder(ResourceMethodStatisticsImpl.Factory methodFactory)
Create a new builder.
-
-
Method Detail
-
build
ResourceStatisticsImpl build()
Build a new instance ofResourceStatisticsImpl
. Note that this build method is called from various different threads.- Returns:
- New instance of resource statistics.
-
addExecution
void addExecution(ResourceMethod resourceMethod, long methodStartTime, long methodDuration, long requestStartTime, long requestDuration)
Add execution of a resource method in the resource.- Parameters:
resourceMethod
- Resource method executed.methodStartTime
- Time of execution of the resource method.methodDuration
- Time spent on execution of resource method itself.requestStartTime
- Time when the request matching to the executed resource method has been received by Jersey.requestDuration
- Time of whole request processing (from receiving the request until writing the response).
-
addMethod
void addMethod(ResourceMethod resourceMethod)
Add a resource method to the statistics.- Parameters:
resourceMethod
- Resource method.
-
getOrCreate
private ResourceMethodStatisticsImpl.Builder getOrCreate(ResourceMethod resourceMethod)
-
-