Package org.glassfish.tyrus.core
Class DefaultComponentProvider
- java.lang.Object
-
- org.glassfish.tyrus.core.ComponentProvider
-
- org.glassfish.tyrus.core.DefaultComponentProvider
-
public class DefaultComponentProvider extends ComponentProvider
Provides instances using reflection.- Author:
- Stepan Kopriva
-
-
Constructor Summary
Constructors Constructor Description DefaultComponentProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> java.lang.Object
create(java.lang.Class<T> toLoad)
Create new instance.boolean
destroy(java.lang.Object o)
Destroys the given managed instance.java.lang.reflect.Method
getInvocableMethod(java.lang.reflect.Method method)
Get the method which should be invoked instead provided one.boolean
isApplicable(java.lang.Class<?> c)
Checks whether this component provider is able to provide an instance of givenClass
.
-
-
-
Method Detail
-
isApplicable
public boolean isApplicable(java.lang.Class<?> c)
Description copied from class:ComponentProvider
Checks whether this component provider is able to provide an instance of givenClass
.- Specified by:
isApplicable
in classComponentProvider
- Parameters:
c
-Class
to be checked.- Returns:
true
iff thisComponentProvider
is able to create an instance of the givenClass
.
-
create
public <T> java.lang.Object create(java.lang.Class<T> toLoad)
Description copied from class:ComponentProvider
Create new instance.- Specified by:
create
in classComponentProvider
- Type Parameters:
T
- type of the created object.- Parameters:
toLoad
-Class
to be created.- Returns:
- instance, iff found,
null
otherwise.
-
destroy
public boolean destroy(java.lang.Object o)
Description copied from class:ComponentProvider
Destroys the given managed instance.- Specified by:
destroy
in classComponentProvider
- Parameters:
o
- instance to be destroyed.- Returns:
true
iff the instance was coupled to thisComponentProvider
, false otherwise.
-
getInvocableMethod
public java.lang.reflect.Method getInvocableMethod(java.lang.reflect.Method method)
Description copied from class:ComponentProvider
Get the method which should be invoked instead provided one.Useful mainly for EJB container support, where methods from endpoint class cannot be invoked directly - Tyrus needs to use method declared on remote interface.
Default implementation returns method provided as parameter.
- Overrides:
getInvocableMethod
in classComponentProvider
- Parameters:
method
- method from endpoint class.- Returns:
- method which should be invoked.
-
-