public class ResourceConfig extends Application implements Configurable<ResourceConfig>, ServerConfig
Constructor and Description |
---|
ResourceConfig()
Create a new resource configuration without any custom properties or
resource and provider classes.
|
ResourceConfig(Class<?>... classes)
Create a new resource configuration initialized with a given set of
resource/provider classes.
|
ResourceConfig(ResourceConfig original)
Create a defensive resource configuration copy initialized with a given
ResourceConfig . |
ResourceConfig(Set<Class<?>> classes)
Create a new resource configuration initialized with a given set of
resource/provider classes.
|
Modifier and Type | Method and Description |
---|---|
ResourceConfig |
addProperties(Map<String,Object> properties)
Add properties to
ResourceConfig . |
ResourceConfig |
files(boolean recursive,
String... files)
Adds array of file and directory names to scan for components.
|
ResourceConfig |
files(String... files)
Adds array of file and directory names to scan for components.
|
static ResourceConfig |
forApplication(Application application)
Returns a
ResourceConfig instance for the supplied application. |
static ResourceConfig |
forApplicationClass(Class<? extends Application> applicationClass)
Returns a
ResourceConfig instance wrapping the application of the supplied class. |
static ResourceConfig |
forApplicationClass(Class<? extends Application> applicationClass,
Set<Class<?>> defaultClasses)
Returns a
ResourceConfig instance wrapping the application of the supplied class. |
Application |
getApplication()
Returns JAX-RS application corresponding with this ResourceConfig.
|
String |
getApplicationName()
Get the name of the Jersey application.
|
Set<Class<?>> |
getClasses() |
ClassLoader |
getClassLoader()
Get resource and provider class loader.
|
ServerConfig |
getConfiguration() |
Map<Class<?>,Integer> |
getContracts(Class<?> componentClass) |
Set<Object> |
getInstances() |
Map<String,Object> |
getProperties() |
Object |
getProperty(String name) |
Collection<String> |
getPropertyNames() |
Set<Resource> |
getResources()
Get programmatically modeled resources.
|
RuntimeType |
getRuntimeType() |
Set<Object> |
getSingletons() |
boolean |
isEnabled(Class<? extends Feature> featureClass) |
boolean |
isEnabled(Feature feature) |
boolean |
isProperty(String name)
Get the value of the property with a given name converted to
boolean . |
boolean |
isRegistered(Class<?> componentClass) |
boolean |
isRegistered(Object component) |
ResourceConfig |
packages(boolean recursive,
ClassLoader classLoader,
String... packages)
Adds array of package names which will be used to scan for components.
|
ResourceConfig |
packages(boolean recursive,
String... packages)
Adds array of package names which will be used to scan for components.
|
ResourceConfig |
packages(String... packages)
Adds array of package names which will be used to scan for components.
|
ResourceConfig |
property(String name,
Object value) |
ResourceConfig |
register(Class<?> componentClass) |
ResourceConfig |
register(Class<?> componentClass,
Class<?>... contracts) |
ResourceConfig |
register(Class<?> componentClass,
int bindingPriority) |
ResourceConfig |
register(Class<?> componentClass,
Map<Class<?>,Integer> contracts) |
ResourceConfig |
register(Object component) |
ResourceConfig |
register(Object component,
Class<?>... contracts) |
ResourceConfig |
register(Object component,
int bindingPriority) |
ResourceConfig |
register(Object component,
Map<Class<?>,Integer> contracts) |
ResourceConfig |
registerClasses(Class<?>... classes)
Register annotated JAX-RS resource, JAX-RS or Jersey contract provider or JAX-RS feature
in the
ResourceConfig . |
ResourceConfig |
registerClasses(Set<Class<?>> classes)
Register annotated JAX-RS resource, JAX-RS or Jersey contract provider or JAX-RS feature
in the
ResourceConfig . |
ResourceConfig |
registerFinder(ResourceFinder resourceFinder)
Add a
ResourceFinder to ResourceConfig . |
ResourceConfig |
registerInstances(Object... instances)
Register annotated JAX-RS resource, JAX-RS or Jersey contract provider, JAX-RS feature,
Jersey Binder instances (singletons) in the ResourceConfig . |
ResourceConfig |
registerInstances(Set<Object> instances)
Register annotated JAX-RS resource, JAX-RS or Jersey contract provider, JAX-RS feature
Jersey Binder instances (singletons) in the ResourceConfig . |
ResourceConfig |
registerResources(Resource... resources)
Register new programmatic resource models in the
ResourceConfig . |
ResourceConfig |
registerResources(Set<Resource> resources)
Register new resource models in the
ResourceConfig . |
ResourceConfig |
setApplicationName(String applicationName)
Set the name of the application.
|
ResourceConfig |
setClassLoader(ClassLoader classLoader)
Set
ClassLoader which will be used for resource discovery. |
ResourceConfig |
setProperties(Map<String,?> properties)
Set new configuration properties replacing all previously set properties.
|
public ResourceConfig()
public ResourceConfig(Set<Class<?>> classes)
classes
- application-specific resource and/or provider classes.public ResourceConfig(Class<?>... classes)
classes
- application-specific resource and/or provider classes.public ResourceConfig(ResourceConfig original)
ResourceConfig
.original
- resource configuration to createAndInitialize a defensive copy from.public static ResourceConfig forApplication(Application application)
ResourceConfig
instance for the supplied application.
If the application is an instance of ResourceConfig
the method returns defensive copy of the resource config.
Otherwise it creates a new ResourceConfig
from the application.application
- Application to provide the ResourceConfig
instance for.public static ResourceConfig forApplicationClass(Class<? extends Application> applicationClass)
ResourceConfig
instance wrapping the application of the supplied class.applicationClass
- Class representing a JAX-RS application.public static ResourceConfig forApplicationClass(Class<? extends Application> applicationClass, Set<Class<?>> defaultClasses)
ResourceConfig
instance wrapping the application of the supplied class.
This method provides an option of supplying the set of classes that should be returned from getClasses()
method if the application defined by the supplied application class returns empty sets from
Application.getClasses()
and Application.getSingletons()
methods.applicationClass
- Class representing a JAX-RS application.defaultClasses
- Default set of classes that should be returned from getClasses()
if the underlying
application does not provide any classes and singletons.public final ResourceConfig addProperties(Map<String,Object> properties)
ResourceConfig
.
If any of the added properties exists already, old values of existing
properties will be replaced by new values.properties
- properties to add.public ResourceConfig setProperties(Map<String,?> properties)
properties
- new set of configuration properties. The content of
the map will replace any existing properties set on the configuration
instance.public ResourceConfig property(String name, Object value)
property
in interface Configurable<ResourceConfig>
public ResourceConfig register(Class<?> componentClass)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Class<?> componentClass, int bindingPriority)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Class<?> componentClass, Class<?>... contracts)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Class<?> componentClass, Map<Class<?>,Integer> contracts)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Object component)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Object component, int bindingPriority)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Object component, Class<?>... contracts)
register
in interface Configurable<ResourceConfig>
public ResourceConfig register(Object component, Map<Class<?>,Integer> contracts)
register
in interface Configurable<ResourceConfig>
public final ResourceConfig registerClasses(Set<Class<?>> classes)
ResourceConfig
.
Note that registered JAX-RS features are used to initialize and configure
the Jersey runtime InjectionManager
instance during application deployment, but are
otherwise ignored by server-side runtime, unless they implement also another contract
recognized by Jersey runtime.
Also note that registration of binder
classes is note supported. Binders
must be registered as instances
.
classes
- classes to register.public final ResourceConfig registerClasses(Class<?>... classes)
ResourceConfig
.
Note that registered JAX-RS features are used to initialize and configure
the Jersey runtime InjectionManager
instance during application deployment, but are
otherwise ignored by server-side runtime, unless they implement also another contract
recognized by Jersey runtime.
Also note that registration of binder
classes is note supported. Binders
must be registered as instances
.
classes
- classes to register.public final ResourceConfig registerInstances(Set<Object> instances)
Jersey Binder
instances (singletons) in the ResourceConfig
.
Note that registered binders and JAX-RS features are used to initialize and configure
the Jersey runtime InjectionManager
instance during application deployment, but are
otherwise ignored by server-side runtime, unless they implement also another contract
recognized by Jersey runtime.
instances
- instances to register.public final ResourceConfig registerInstances(Object... instances)
Jersey Binder
instances (singletons) in the ResourceConfig
.
Note that registered binders and JAX-RS features are used to initialize and configure
the Jersey runtime InjectionManager
instance during application deployment, but are
otherwise ignored by server-side runtime, unless they implement also another contract
recognized by Jersey runtime.
instances
- instances to register.public final ResourceConfig registerResources(Resource... resources)
ResourceConfig
.resources
- resource models to register.public final ResourceConfig registerResources(Set<Resource> resources)
ResourceConfig
.resources
- resource models to register.public final ResourceConfig registerFinder(ResourceFinder resourceFinder)
ResourceFinder
to ResourceConfig
.resourceFinder
- ResourceFinder
public final ResourceConfig setApplicationName(String applicationName)
applicationName
- Unique application name.public final ResourceConfig setClassLoader(ClassLoader classLoader)
ClassLoader
which will be used for resource discovery.classLoader
- provided ClassLoader
.public final ResourceConfig packages(String... packages)
Path
annotation
on parent classes and interfaces will be ignored.
Packages will be scanned recursively, including all nested packages.packages
- array of package names.packages(boolean, String...)
public final ResourceConfig packages(boolean recursive, String... packages)
Path
annotation
on parent classes and interfaces will be ignored.
recursive
- defines whether any nested packages in the collection of specified
package names should be recursively scanned (value of true
)
as part of the package scanning or not (value of false
).packages
- array of package names.packages(String...)
public final ResourceConfig packages(boolean recursive, ClassLoader classLoader, String... packages)
Path
annotation
on parent classes and interfaces will be ignored.
recursive
- defines whether any nested packages in the collection of specified
package names should be recursively scanned (value of true
)
as part of the package scanning or not (value of false
).classLoader
- defines the classloader used for scanning the packages and loading the classes.packages
- array of package names.packages(String...)
public final ResourceConfig files(String... files)
files
- array of file and directory names.public final ResourceConfig files(boolean recursive, String... files)
recursive
- defines whether any sub-directories of the directories specified
in the collection of file names should be recursively scanned (value of true
)
as part of the file scanning or not (value of false
).files
- array of file and directory names.public final ServerConfig getConfiguration()
getConfiguration
in interface Configurable<ResourceConfig>
public final Map<String,Object> getProperties()
getProperties
in interface Configuration
getProperties
in class Application
public final Object getProperty(String name)
getProperty
in interface Configuration
public Collection<String> getPropertyNames()
getPropertyNames
in interface Configuration
public final boolean isProperty(String name)
ExtendedConfig
boolean
.
Returns false
if the value is not convertible.isProperty
in interface ExtendedConfig
name
- property name.boolean
property value or false
if the property is not
convertible.public final Set<Class<?>> getClasses()
getClasses
in interface Configuration
getClasses
in class Application
public final Set<Object> getInstances()
getInstances
in interface Configuration
public final Set<Object> getSingletons()
getSingletons
in class Application
public RuntimeType getRuntimeType()
getRuntimeType
in interface Configuration
public boolean isEnabled(Feature feature)
isEnabled
in interface Configuration
public boolean isEnabled(Class<? extends Feature> featureClass)
isEnabled
in interface Configuration
public boolean isRegistered(Object component)
isRegistered
in interface Configuration
public boolean isRegistered(Class<?> componentClass)
isRegistered
in interface Configuration
public Map<Class<?>,Integer> getContracts(Class<?> componentClass)
getContracts
in interface Configuration
public final Set<Resource> getResources()
ServerConfig
getResources
in interface ServerConfig
public final ClassLoader getClassLoader()
public final Application getApplication()
public String getApplicationName()
setApplicationName(String)
Copyright © 2007-2024, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.