org.apache.sling.api.resource.Resource.getResourceSuperType()方法的使用及代码示例

x33g5p2x  于2022-01-28 转载在 其他  
字(7.4k)|赞(0)|评价(0)|浏览(132)

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

Resource.getResourceSuperType介绍

[英]Returns the super type of the resource if the resource defines its own super type. Otherwise null is returned. A resource might return a resource super type to overwrite the resource type hierarchy. If a client is interested in the effective resource super type of a resource, it should call ResourceResolver#getParentResourceType(Resource).
[中]如果资源定义了自己的超级类型,则返回资源的超级类型。否则返回null。资源可能会返回资源超级类型以覆盖资源类型层次结构。如果客户机对资源的有效资源超类型感兴趣,它应该调用ResourceResolver#getParentResourceType(资源)。

代码示例

代码示例来源:origin: heervisscher/htl-examples

@Override
public String getResourceSuperType() {
  return resource.getResourceSuperType();
}

代码示例来源:origin: org.apache.sling/org.apache.sling.scripting.javascript

public String jsFunction_getResourceSuperType() {
  return resource.getResourceSuperType();
}

代码示例来源:origin: org.apache.sling/org.apache.sling.api

/**
 * Returns the value of calling <code>getResourceSuperType</code> on the
 * {@link #getResource() wrapped resource}.
 */
@Override
public String getResourceSuperType() {
  return getResource().getResourceSuperType();
}

代码示例来源:origin: org.apache.sling/org.apache.sling.servlets.resolver

/**
 * @see org.apache.sling.api.resource.Resource#getResourceSuperType()
 */
@Override
public String getResourceSuperType() {
  return this.getActiveResource().getResourceSuperType();
}

代码示例来源:origin: org.apache.sling/org.apache.sling.servlets.resolver

private String getResourceSuperType(final ResourceResolver resourceResolver,
                  final String resourceType) {
  // normalize resource type to a path string
  final String rtPath = ResourceUtil.resourceTypeToPath(resourceType);
  // get the resource type resource and check its super type
  String resourceSuperType = null;
  // if the path is absolute, use it directly
  if ( rtPath != null && rtPath.startsWith("/") ) {
    final String candidatePath = rtPath;
    final Resource rtResource = resourceResolver.getResource(candidatePath);
    if ( rtResource != null ) {
      resourceSuperType = rtResource.getResourceSuperType();
    }
  } else {
    // if the path is relative we use the search paths
    for(final String searchPath : this.searchPath) {
      final String candidatePath = searchPath + rtPath;
      final Resource rtResource = resourceResolver.getResource(candidatePath);
      if ( rtResource != null && rtResource.getResourceSuperType() != null ) {
        resourceSuperType = rtResource.getResourceSuperType();
        break;
      }
    }
  }
  return resourceSuperType;
}

代码示例来源:origin: com.citytechinc.aem.apps.ionic/ionic-aem-apps-core

private Resource searchForResourceSuperType(Resource currentResourceType) {
  if (StringUtils.isBlank(currentResourceType.getResourceSuperType())) {
    return null;
  }
  for (String searchPath : currentResourceType.getResourceResolver().getSearchPath()) {
    Resource potentialSuperType = currentResourceType.getResourceResolver().getResource(searchPath + "/" + currentResourceType.getResourceSuperType());
    if (potentialSuperType != null) {
      return potentialSuperType;
    }
  }
  return null;
}

代码示例来源:origin: org.apache.sling/org.apache.sling.testing.resourceresolver-mock

@Override
public String getParentResourceType(Resource resource) {
  String resourceSuperType = null;
  if ( resource != null ) {
    resourceSuperType = resource.getResourceSuperType();
    if (resourceSuperType == null) {
      resourceSuperType = this.getParentResourceType(resource.getResourceType());
    }
  }
  return resourceSuperType;
}

代码示例来源:origin: org.apache.sling/org.apache.sling.servlets.resolver

? baseResourceType
    : ServletResolverConstants.DEFAULT_RESOURCE_TYPE),
  resource.getResourceType(), resource.getResourceSuperType(),
  null, executionPaths);
this.methodName = methodName;

代码示例来源:origin: org.apache.sling/org.apache.sling.servlets.resolver

super(ServletResolverConstants.DEFAULT_RESOURCE_TYPE,
    resource.getResourceType(),
    resource.getResourceSuperType(),
    extension, executionPaths);
  this.methodName = methodName;

代码示例来源:origin: org.apache.sling/org.apache.sling.testing.resourceresolver-mock

@Override
public String getParentResourceType(String resourceType) {
  // normalize resource type to a path string
  final String rtPath = (resourceType == null ? null : ResourceUtil.resourceTypeToPath(resourceType));
  // get the resource type resource and check its super type
  String resourceSuperType = null;
  if ( rtPath != null ) {
    final Resource rtResource = getResource(rtPath);
    if (rtResource != null) {
      resourceSuperType = rtResource.getResourceSuperType();
    }
  }
  return resourceSuperType;
}

代码示例来源:origin: org.apache.sling/org.apache.sling.resourceresolver

/**
 * @see org.apache.sling.api.resource.ResourceResolver#getParentResourceType(org.apache.sling.api.resource.Resource)
 */
@Override
public String getParentResourceType(final Resource resource) {
  String resourceSuperType = null;
  if ( resource != null ) {
    resourceSuperType = resource.getResourceSuperType();
    if (resourceSuperType == null) {
      resourceSuperType = this.getParentResourceType(resource.getResourceType());
    }
  }
  return resourceSuperType;
}

代码示例来源:origin: org.apache.sling/org.apache.sling.servlets.resolver

if ( resource != null ) {
  resourceType = resource.getResourceType();
  resourceSuperType = resource.getResourceSuperType();
  baseResourceType = ServletResolverConstants.DEFAULT_RESOURCE_TYPE;
} else {

代码示例来源:origin: org.apache.sling/org.apache.sling.servlets.resolver

/**
 * Get the servlet for the resource.
 */
private Servlet getServlet(final Resource scriptResource) {
  // no resource -> no servlet
  if ( scriptResource == null ) {
    return null;
  }
  // if resource is fetched using shared resource resolver
  // or resource is a servlet resource, just adapt to servlet
  if ( scriptResource.getResourceResolver() == this.sharedScriptResolver
     || "sling/bundle/resource".equals(scriptResource.getResourceSuperType()) ) {
    return scriptResource.adaptTo(Servlet.class);
  }
  // return a resource wrapper to make sure the implementation
  // switches from the per thread resource resolver to the shared once
  // the per thread resource resolver is closed
  return new ScriptResource(scriptResource, perThreadScriptResolver, this.sharedScriptResolver).adaptTo(Servlet.class);
}

代码示例来源:origin: org.apache.sling/org.apache.sling.resourceresolver

/**
 * Get the parent resource type
 *
 * @see org.apache.sling.api.resource.ResourceResolver#getParentResourceType(java.lang.String)
 */
public String getParentResourceType(
    final ResourceResolverFactory factory,
    final ResourceResolver resolver,
    final String resourceType) {
  // normalize resource type to a path string
  final String rtPath = (resourceType == null ? null : ResourceUtil.resourceTypeToPath(resourceType));
  // get the resource type resource and check its super type
  String resourceSuperType = null;
  if ( rtPath != null ) {
    ResourceResolver adminResolver = this.getResourceTypeResourceResolver(factory, resolver);
    if ( adminResolver != null ) {
      final Resource rtResource = adminResolver.getResource(rtPath);
      if (rtResource != null) {
        resourceSuperType = rtResource.getResourceSuperType();
      }
    }
  }
  return resourceSuperType;
}

代码示例来源:origin: org.apache.sling/org.apache.sling.resourceresolver

props.put(SlingConstants.PROPERTY_RESOURCE_TYPE, resource.getResourceType());
if (resource.getResourceSuperType() != null) {
  props.put(SlingConstants.PROPERTY_RESOURCE_SUPER_TYPE, resource.getResourceSuperType());

代码示例来源:origin: unic/neba

key = new Key(
    resource.getResourceType(),
    resource.getResourceSuperType(),
    getPrimaryType(node),
    geMixinTypes(node),

代码示例来源:origin: org.apache.sling/org.apache.sling.scripting.sightly

Resource caller = ResourceResolution.getResourceForRequest(request.getResourceResolver(), request);
if (caller != null) {
  String resourceSuperType = caller.getResourceSuperType();
  StringBuilder errorMessage = new StringBuilder("Cannot find resource ");
  errorMessage.append(identifier).append(" for base path ").append(caller.getPath());

相关文章