本文整理了Java中org.glassfish.jersey.server.model.Resource.getHandlerClasses
方法的一些代码示例,展示了Resource.getHandlerClasses
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Resource.getHandlerClasses
方法的具体详情如下:
包路径:org.glassfish.jersey.server.model.Resource
类名称:Resource
方法名:getHandlerClasses
[英]Get the method handler classes for the resource methods registered on the resource.
[中]获取资源上注册的资源方法的方法处理程序类。
代码示例来源:origin: jersey/jersey
/**
* Register a new programmatically created resource model.
*
* @param resourceModel programmatically created resource model.
*/
void registerProgrammaticResource(Resource resourceModel) {
registerModel(resourceModel);
classes.addAll(resourceModel.getHandlerClasses());
instances.addAll(resourceModel.getHandlerInstances());
}
代码示例来源:origin: jersey/jersey
/**
* Register a new programmatically created resource model.
*
* @param resourceModel programmatically created resource model.
*/
void registerProgrammaticResource(Resource resourceModel) {
registerModel(resourceModel);
classes.addAll(resourceModel.getHandlerClasses());
instances.addAll(resourceModel.getHandlerInstances());
}
代码示例来源:origin: jersey/jersey
/**
* @param ar abstract resource
* @param path resources path
* @return resource
* @see org.glassfish.jersey.server.wadl.WadlGenerator#createResource(org.glassfish.jersey.server.model.Resource, String)
*/
public Resource createResource(final org.glassfish.jersey.server.model.Resource ar, final String path) {
for (final Class<?> resClass : ar.getHandlerClasses()) {
final XmlSeeAlso seeAlso = resClass.getAnnotation(XmlSeeAlso.class);
if (seeAlso != null) {
Collections.addAll(seeAlsoClasses, seeAlso.value());
}
}
return wadlGeneratorDelegate.createResource(ar, path);
}
代码示例来源:origin: jersey/jersey
/**
* @param ar abstract resource
* @param path resources path
* @return resource
* @see org.glassfish.jersey.server.wadl.WadlGenerator#createResource(org.glassfish.jersey.server.model.Resource, String)
*/
public Resource createResource(final org.glassfish.jersey.server.model.Resource ar, final String path) {
for (final Class<?> resClass : ar.getHandlerClasses()) {
final XmlSeeAlso seeAlso = resClass.getAnnotation(XmlSeeAlso.class);
if (seeAlso != null) {
Collections.addAll(seeAlsoClasses, seeAlso.value());
}
}
return wadlGeneratorDelegate.createResource(ar, path);
}
代码示例来源:origin: jersey/jersey
/**
* Determines whether the given methods can enhance the resource.
*
* @param resource resource to add the methods to.
* @param methods methods to add.
* @return {@code true} if methods can enhance the resource, {@code false} otherwise.
*/
private static boolean methodsSuitableForResource(final Resource resource, final List<Method> methods) {
if (!resource.getResourceMethods().isEmpty()) {
return true;
}
// If there are no handler classes/instances we want to add only non-HEAD / non-OPTIONS methods.
if (resource.getHandlerInstances().isEmpty() && resource.getHandlerClasses().isEmpty()) {
for (final Method method : methods) {
if (!HttpMethod.HEAD.equals(method.httpMethod) && !HttpMethod.OPTIONS.equals(method.httpMethod)) {
return true;
}
}
}
return false;
}
}
代码示例来源:origin: jersey/jersey
/**
* Determines whether the given methods can enhance the resource.
*
* @param resource resource to add the methods to.
* @param methods methods to add.
* @return {@code true} if methods can enhance the resource, {@code false} otherwise.
*/
private static boolean methodsSuitableForResource(final Resource resource, final List<Method> methods) {
if (!resource.getResourceMethods().isEmpty()) {
return true;
}
// If there are no handler classes/instances we want to add only non-HEAD / non-OPTIONS methods.
if (resource.getHandlerInstances().isEmpty() && resource.getHandlerClasses().isEmpty()) {
for (final Method method : methods) {
if (!HttpMethod.HEAD.equals(method.httpMethod) && !HttpMethod.OPTIONS.equals(method.httpMethod)) {
return true;
}
}
}
return false;
}
}
代码示例来源:origin: Graylog2/graylog2-server
private void logResources(List<Resource> resources) {
final List<ResourceDescription> resourceDescriptions = new ArrayList<>();
for (Resource resource : resources) {
for (ResourceMethod resourceMethod : resource.getAllMethods()) {
final String path = RestTools.getPathFromResource(resource);
resourceDescriptions.add(new ResourceDescription(resourceMethod.getHttpMethod(), path, resource.getHandlerClasses()));
}
}
Collections.sort(resourceDescriptions);
for (ResourceDescription resource : resourceDescriptions) {
LOG.debug(resource.toString());
}
}
代码示例来源:origin: jersey/jersey
private void bindEnhancingResourceClasses(
InjectionManager injectionManager,
ServerBootstrapBag bootstrapBag,
ResourceModel resourceModel,
ResourceBag resourceBag,
ResourceConfig runtimeConfig) {
Set<Class<?>> newClasses = new HashSet<>();
Set<Object> newInstances = new HashSet<>();
for (final Resource res : resourceModel.getRootResources()) {
newClasses.addAll(res.getHandlerClasses());
newInstances.addAll(res.getHandlerInstances());
}
newClasses.removeAll(resourceBag.classes);
newInstances.removeAll(resourceBag.instances);
ComponentBag emptyComponentBag = ComponentBag.newInstance(input -> false);
bindProvidersAndResources(injectionManager, bootstrapBag, emptyComponentBag, newClasses, newInstances, runtimeConfig);
}
代码示例来源:origin: jersey/jersey
private void bindEnhancingResourceClasses(
InjectionManager injectionManager,
ServerBootstrapBag bootstrapBag,
ResourceModel resourceModel,
ResourceBag resourceBag,
ResourceConfig runtimeConfig) {
Set<Class<?>> newClasses = new HashSet<>();
Set<Object> newInstances = new HashSet<>();
for (final Resource res : resourceModel.getRootResources()) {
newClasses.addAll(res.getHandlerClasses());
newInstances.addAll(res.getHandlerInstances());
}
newClasses.removeAll(resourceBag.classes);
newInstances.removeAll(resourceBag.instances);
ComponentBag emptyComponentBag = ComponentBag.newInstance(input -> false);
bindProvidersAndResources(injectionManager, bootstrapBag, emptyComponentBag, newClasses, newInstances, runtimeConfig);
}
代码示例来源:origin: jersey/jersey
@Override
public Void call() {
for (final Object handlerInstance : resource.getHandlerInstances()) {
final Class<?> handlerInstanceClass = handlerInstance.getClass();
if (!resource.getHandlerClasses().contains(handlerInstanceClass)) {
createEnhancingMethods(handlerInstanceClass, handlerInstance, newMethods);
} else {
Errors.warning(resource,
LocalizationMessages.TEMPLATE_HANDLER_ALREADY_ENHANCED(handlerInstanceClass));
}
}
return null;
}
});
代码示例来源:origin: jersey/jersey
private void visitResourceIntl(final Resource resource, final boolean isRoot) {
try {
stack.addLast(resource.getPathPattern());
processComponents(resource);
if (isRoot) {
Class likelyToBeRoot = null;
for (final Class next : resource.getHandlerClasses()) {
if (!(Inflector.class.isAssignableFrom(next))) {
likelyToBeRoot = next;
}
}
if (likelyToBeRoot != null) {
mappings.put(likelyToBeRoot, getMapping(getTemplate()));
}
}
} finally {
stack.removeLast();
}
}
代码示例来源:origin: Graylog2/graylog2-server
@Override
public ResourceModel processResourceModel(ResourceModel model, Configuration config) {
// Create new resource model.
final ResourceModel.Builder resourceModelBuilder = new ResourceModel.Builder(false);
for (final Resource resource : model.getResources()) {
for (Class handlerClass : resource.getHandlerClasses()) {
final String packageName = handlerClass.getPackage().getName();
final Optional<String> packagePrefix = packagePrefixes.entrySet().stream()
.filter(entry -> packageName.startsWith(entry.getKey()))
.sorted((o1, o2) -> -o1.getKey().compareTo(o2.getKey()))
.map(Map.Entry::getValue)
.findFirst();
if (packagePrefix.isPresent()) {
final String prefixedPath = prefixPath(packagePrefix.get(), resource.getPath());
final Resource newResource = Resource.builder(resource)
.path(prefixedPath)
.build();
resourceModelBuilder.addResource(newResource);
} else {
resourceModelBuilder.addResource(resource);
}
}
}
return resourceModelBuilder.build();
}
代码示例来源:origin: jersey/jersey
for (final Class<?> handlerClass : resource.getHandlerClasses()) {
createEnhancingMethods(handlerClass, null, newMethods);
if (resource.getHandlerClasses().isEmpty() && resource.getHandlerInstances().isEmpty()) {
for (String resourceName : resource.getNames()) {
final Class<Object> resourceClass = AccessController
代码示例来源:origin: jersey/jersey
/**
* @param r Jersey resource component for which the WADL reource is to be created.
* @param path path where the resource is exposed.
* @return the enhanced {@link com.sun.research.ws.wadl.Resource}.
* @see org.glassfish.jersey.server.wadl.WadlGenerator#createResource(org.glassfish.jersey.server.model.Resource, String)
*/
public Resource createResource(final org.glassfish.jersey.server.model.Resource r, final String path) {
final Resource result = delegate.createResource(r, path);
for (final Class<?> resourceClass : r.getHandlerClasses()) {
final ClassDocType classDoc = resourceDoc.getClassDoc(resourceClass);
if (classDoc != null && !isEmpty(classDoc.getCommentText())) {
final Doc doc = new Doc();
doc.getContent().add(classDoc.getCommentText());
result.getDoc().add(doc);
}
}
return result;
}
代码示例来源:origin: jersey/jersey
/**
* @param r Jersey resource component for which the WADL reource is to be created.
* @param path path where the resource is exposed.
* @return the enhanced {@link com.sun.research.ws.wadl.Resource}.
* @see org.glassfish.jersey.server.wadl.WadlGenerator#createResource(org.glassfish.jersey.server.model.Resource, String)
*/
public Resource createResource(final org.glassfish.jersey.server.model.Resource r, final String path) {
final Resource result = delegate.createResource(r, path);
for (final Class<?> resourceClass : r.getHandlerClasses()) {
final ClassDocType classDoc = resourceDoc.getClassDoc(resourceClass);
if (classDoc != null && !isEmpty(classDoc.getCommentText())) {
final Doc doc = new Doc();
doc.getContent().add(classDoc.getCommentText());
result.getDoc().add(doc);
}
}
return result;
}
代码示例来源:origin: jersey/jersey
sb.append(LocalizationMessages.LOGGING_ROOT_RESOURCE_CLASSES()).append(":");
for (final Resource r : rootResourceClasses) {
for (final Class clazz : r.getHandlerClasses()) {
sb.append('\n').append(" ").append(clazz.getName());
代码示例来源:origin: jersey/jersey
sb.append(LocalizationMessages.LOGGING_ROOT_RESOURCE_CLASSES()).append(":");
for (final Resource r : rootResourceClasses) {
for (final Class clazz : r.getHandlerClasses()) {
sb.append('\n').append(" ").append(clazz.getName());
代码示例来源:origin: jersey/jersey
private LocatorRouting buildRouting(final Resource subResource) {
final ResourceModel model = new ResourceModel.Builder(true).addResource(subResource).build();
final ResourceModel enhancedModel = enhance(model);
if (!disableValidation) {
validateResource(enhancedModel);
}
final Resource enhancedLocator = enhancedModel.getResources().get(0);
for (final Class<?> handlerClass : enhancedLocator.getHandlerClasses()) {
resourceContext.bindResource(handlerClass);
}
return new LocatorRouting(enhancedModel,
runtimeModelBuilder.buildModel(enhancedModel.getRuntimeResourceModel(), true));
}
代码示例来源:origin: jersey/jersey
private LocatorRouting buildRouting(final Resource subResource) {
final ResourceModel model = new ResourceModel.Builder(true).addResource(subResource).build();
final ResourceModel enhancedModel = enhance(model);
if (!disableValidation) {
validateResource(enhancedModel);
}
final Resource enhancedLocator = enhancedModel.getResources().get(0);
for (final Class<?> handlerClass : enhancedLocator.getHandlerClasses()) {
resourceContext.bindResource(handlerClass);
}
return new LocatorRouting(enhancedModel,
runtimeModelBuilder.buildModel(enhancedModel.getRuntimeResourceModel(), true));
}
代码示例来源:origin: org.glassfish.jersey.core/jersey-server
/**
* Register a new programmatically created resource model.
*
* @param resourceModel programmatically created resource model.
*/
void registerProgrammaticResource(Resource resourceModel) {
registerModel(resourceModel);
classes.addAll(resourceModel.getHandlerClasses());
instances.addAll(resourceModel.getHandlerInstances());
}
内容来源于网络,如有侵权,请联系作者删除!