org.glassfish.jersey.server.model.Resource.getChildResources()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(11.0k)|赞(0)|评价(0)|浏览(91)

本文整理了Java中org.glassfish.jersey.server.model.Resource.getChildResources方法的一些代码示例,展示了Resource.getChildResources的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Resource.getChildResources方法的具体详情如下:
包路径:org.glassfish.jersey.server.model.Resource
类名称:Resource
方法名:getChildResources

Resource.getChildResources介绍

[英]Returns the list of child resources available on this resource.
[中]返回此资源上可用的子资源列表。

代码示例

代码示例来源:origin: Graylog2/graylog2-server

private List<Resource> findChildResources(Resource parentResource) {
  final List<Resource> childResources = new ArrayList<>();
  for (Resource resource : parentResource.getChildResources()) {
    childResources.add(resource);
    childResources.addAll(findChildResources(resource));
  }
  return childResources;
}

代码示例来源:origin: jersey/jersey

@Override
  public List<? extends ResourceModelComponent> getComponents() {
    List<ResourceModelComponent> components = new LinkedList<>();

    components.addAll(getChildResources());
    components.addAll(getResourceMethods());

    final ResourceMethod resourceLocator = getResourceLocator();
    if (resourceLocator != null) {
      components.add(resourceLocator);
    }
    return components;
  }
}

代码示例来源:origin: jersey/jersey

@Override
  public List<? extends ResourceModelComponent> getComponents() {
    List<ResourceModelComponent> components = new LinkedList<>();

    components.addAll(getChildResources());
    components.addAll(getResourceMethods());

    final ResourceMethod resourceLocator = getResourceLocator();
    if (resourceLocator != null) {
      components.add(resourceLocator);
    }
    return components;
  }
}

代码示例来源:origin: dropwizard/dropwizard

private List<EndpointLogLine> logResourceLines(Resource resource, String contextPath) {
  final List<EndpointLogLine> resourceLines = new ArrayList<>();
  for (Resource child : resource.getChildResources()) {
    resourceLines.addAll(logResourceLines(child, cleanUpPath(contextPath + Strings.nullToEmpty(resource.getPath()))));
  }
  resourceLines.addAll(logMethodLines(resource, contextPath));
  return resourceLines;
}

代码示例来源:origin: jersey/jersey

private List<RuntimeResource.Builder> getRuntimeResources(List<Resource> resources) {
  Map<String, List<Resource>> regexMap = new HashMap<>();
  for (Resource resource : resources) {
    String path = resource.getPath();
    String regex = null;
    if (path != null) {
      if (path.endsWith("/")) {
        path = path.substring(0, path.length() - 1);
      }
      regex = new PathTemplate(path).getPattern().getRegex();
    }
    List<Resource> listFromMap = regexMap.get(regex);
    if (listFromMap == null) {
      listFromMap = new ArrayList<>();
      regexMap.put(regex, listFromMap);
    }
    listFromMap.add(resource);
  }
  List<RuntimeResource.Builder> runtimeResources = new ArrayList<>();
  for (Map.Entry<String, List<Resource>> entry : regexMap.entrySet()) {
    final List<Resource> resourcesWithSameRegex = entry.getValue();
    List<Resource> childResources = new ArrayList<>();
    for (final Resource res : resourcesWithSameRegex) {
      childResources.addAll(res.getChildResources());
    }
    List<RuntimeResource.Builder> childRuntimeResources = getRuntimeResources(childResources);
    runtimeResources.add(new RuntimeResource.Builder(resourcesWithSameRegex, childRuntimeResources, entry.getKey()));
  }
  return runtimeResources;
}

代码示例来源:origin: jersey/jersey

private List<RuntimeResource.Builder> getRuntimeResources(List<Resource> resources) {
  Map<String, List<Resource>> regexMap = new HashMap<>();
  for (Resource resource : resources) {
    String path = resource.getPath();
    String regex = null;
    if (path != null) {
      if (path.endsWith("/")) {
        path = path.substring(0, path.length() - 1);
      }
      regex = new PathTemplate(path).getPattern().getRegex();
    }
    List<Resource> listFromMap = regexMap.get(regex);
    if (listFromMap == null) {
      listFromMap = new ArrayList<>();
      regexMap.put(regex, listFromMap);
    }
    listFromMap.add(resource);
  }
  List<RuntimeResource.Builder> runtimeResources = new ArrayList<>();
  for (Map.Entry<String, List<Resource>> entry : regexMap.entrySet()) {
    final List<Resource> resourcesWithSameRegex = entry.getValue();
    List<Resource> childResources = new ArrayList<>();
    for (final Resource res : resourcesWithSameRegex) {
      childResources.addAll(res.getChildResources());
    }
    List<RuntimeResource.Builder> childRuntimeResources = getRuntimeResources(childResources);
    runtimeResources.add(new RuntimeResource.Builder(resourcesWithSameRegex, childRuntimeResources, entry.getKey()));
  }
  return runtimeResources;
}

代码示例来源:origin: Graylog2/graylog2-server

checkResources(resource.getChildResources());

代码示例来源:origin: jersey/jersey

/**
 * Create a new builder and initialize it from resource model.
 *
 * @param resourceModel resource model.
 */
Builder(final ResourceModel resourceModel) {
  this();
  for (final Resource resource : resourceModel.getRootResources()) {
    processResource(resource, "");
    for (final Resource child : resource.getChildResources()) {
      final String path = resource.getPath();
      processResource(child, path.startsWith("/") ? path : "/" + path);
    }
  }
}

代码示例来源:origin: jersey/jersey

/**
 * Create a new builder and initialize it from resource model.
 *
 * @param resourceModel resource model.
 */
Builder(final ResourceModel resourceModel) {
  this();
  for (final Resource resource : resourceModel.getRootResources()) {
    processResource(resource, "");
    for (final Resource child : resource.getChildResources()) {
      final String path = resource.getPath();
      processResource(child, path.startsWith("/") ? path : "/" + path);
    }
  }
}

代码示例来源:origin: jersey/jersey

private void checkResource(final Resource resource) {
  if (!resource.getResourceMethods().isEmpty() && resource.getResourceLocator() != null) {
    Errors.warning(resource, LocalizationMessages.RESOURCE_CONTAINS_RES_METHODS_AND_LOCATOR(resource,
        resource.getPath()));
  }
  if (resource.getPath() != null
      && resource.getResourceMethods().isEmpty()
      && resource.getChildResources().isEmpty()
      && resource.getResourceLocator() == null) {
    Errors.warning(resource, LocalizationMessages.RESOURCE_EMPTY(resource, resource.getPath()));
  }
}

代码示例来源:origin: jersey/jersey

private void checkResource(final Resource resource) {
  if (!resource.getResourceMethods().isEmpty() && resource.getResourceLocator() != null) {
    Errors.warning(resource, LocalizationMessages.RESOURCE_CONTAINS_RES_METHODS_AND_LOCATOR(resource,
        resource.getPath()));
  }
  if (resource.getPath() != null
      && resource.getResourceMethods().isEmpty()
      && resource.getChildResources().isEmpty()
      && resource.getResourceLocator() == null) {
    Errors.warning(resource, LocalizationMessages.RESOURCE_EMPTY(resource, resource.getPath()));
  }
}

代码示例来源:origin: jersey/jersey

Map<String, Map<String, Param>> wadlSubResourcesParams = new HashMap<>();
for (org.glassfish.jersey.server.model.Resource childResource : resource.getChildResources()) {
  Resource childWadlResource = generateResource(childResource, childResource.getPath(),
      visitedResources);

代码示例来源:origin: jersey/jersey

private Resource processResource(Resource resource) {
  Resource.Builder resourceBuilder = Resource.builder(resource.getPath());
  for (ResourceMethod resourceMethod : resource.getResourceMethods()) {
    ResourceMethod.Builder builder = resourceBuilder.addMethod(resourceMethod);
    if (resourceMethod.getInvocable().getHandlingMethod().isAnnotationPresent(Template.class)) {
      builder.routingResponseType(Viewable.class);
    }
  }
  if (resource.getResourceLocator() != null) {
    resourceBuilder.addMethod(resource.getResourceLocator());
  }
  for (Resource child : resource.getChildResources()) {
    resourceBuilder.addChildResource(processResource(child));
  }
  return resourceBuilder.build();
}

代码示例来源:origin: jersey/jersey

Map<String, Map<String, Param>> wadlSubResourcesParams = new HashMap<>();
for (org.glassfish.jersey.server.model.Resource childResource : resource.getChildResources()) {
  Resource childWadlResource = generateResource(childResource, childResource.getPath(),
      visitedResources);

代码示例来源:origin: org.glassfish.jersey.core/jersey-server

@Override
  public List<? extends ResourceModelComponent> getComponents() {
    List<ResourceModelComponent> components = new LinkedList<>();

    components.addAll(getChildResources());
    components.addAll(getResourceMethods());

    final ResourceMethod resourceLocator = getResourceLocator();
    if (resourceLocator != null) {
      components.add(resourceLocator);
    }
    return components;
  }
}

代码示例来源:origin: org.glassfish.jersey.core/jersey-server

private List<RuntimeResource.Builder> getRuntimeResources(List<Resource> resources) {
  Map<String, List<Resource>> regexMap = new HashMap<>();
  for (Resource resource : resources) {
    String path = resource.getPath();
    String regex = null;
    if (path != null) {
      if (path.endsWith("/")) {
        path = path.substring(0, path.length() - 1);
      }
      regex = new PathTemplate(path).getPattern().getRegex();
    }
    List<Resource> listFromMap = regexMap.get(regex);
    if (listFromMap == null) {
      listFromMap = new ArrayList<>();
      regexMap.put(regex, listFromMap);
    }
    listFromMap.add(resource);
  }
  List<RuntimeResource.Builder> runtimeResources = new ArrayList<>();
  for (Map.Entry<String, List<Resource>> entry : regexMap.entrySet()) {
    final List<Resource> resourcesWithSameRegex = entry.getValue();
    List<Resource> childResources = new ArrayList<>();
    for (final Resource res : resourcesWithSameRegex) {
      childResources.addAll(res.getChildResources());
    }
    List<RuntimeResource.Builder> childRuntimeResources = getRuntimeResources(childResources);
    runtimeResources.add(new RuntimeResource.Builder(resourcesWithSameRegex, childRuntimeResources, entry.getKey()));
  }
  return runtimeResources;
}

代码示例来源:origin: org.glassfish.jersey.core/jersey-server

/**
 * Create a new builder and initialize it from resource model.
 *
 * @param resourceModel resource model.
 */
Builder(final ResourceModel resourceModel) {
  this();
  for (final Resource resource : resourceModel.getRootResources()) {
    processResource(resource, "");
    for (final Resource child : resource.getChildResources()) {
      final String path = resource.getPath();
      processResource(child, path.startsWith("/") ? path : "/" + path);
    }
  }
}

代码示例来源:origin: org.glassfish.jersey.core/jersey-server

private void checkResource(final Resource resource) {
  if (!resource.getResourceMethods().isEmpty() && resource.getResourceLocator() != null) {
    Errors.warning(resource, LocalizationMessages.RESOURCE_CONTAINS_RES_METHODS_AND_LOCATOR(resource,
        resource.getPath()));
  }
  if (resource.getPath() != null
      && resource.getResourceMethods().isEmpty()
      && resource.getChildResources().isEmpty()
      && resource.getResourceLocator() == null) {
    Errors.warning(resource, LocalizationMessages.RESOURCE_EMPTY(resource, resource.getPath()));
  }
}

代码示例来源:origin: org.glassfish.jersey.core/jersey-server

Map<String, Map<String, Param>> wadlSubResourcesParams = new HashMap<>();
for (org.glassfish.jersey.server.model.Resource childResource : resource.getChildResources()) {
  Resource childWadlResource = generateResource(childResource, childResource.getPath(),
      visitedResources);

代码示例来源:origin: org.glassfish.jersey.bundles/jaxrs-ri

@Override
  public List<? extends ResourceModelComponent> getComponents() {
    List<ResourceModelComponent> components = new LinkedList<>();

    components.addAll(getChildResources());
    components.addAll(getResourceMethods());

    final ResourceMethod resourceLocator = getResourceLocator();
    if (resourceLocator != null) {
      components.add(resourceLocator);
    }
    return components;
  }
}

相关文章