org.elasticsearch.env.Environment.resolveRepoURL()方法的使用及代码示例

x33g5p2x  于2022-01-19 转载在 其他  
字(4.3k)|赞(0)|评价(0)|浏览(98)

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

Environment.resolveRepoURL介绍

[英]Checks if the specified URL is pointing to the local file system and if it does, resolves the specified url against the list of configured repository roots If the specified url doesn't match any of the roots, returns null.
[中]检查指定的URL是否指向本地文件系统,如果指向,则根据配置的存储库根列表解析指定的URL。如果指定的URL与任何根不匹配,则返回null。

代码示例

代码示例来源:origin: org.elasticsearch/elasticsearch

String filePath = file.substring(0, pos);
URL internalUrl = new URL(filePath);
URL normalizedUrl = resolveRepoURL(internalUrl);
if (normalizedUrl == null) {
  return null;

代码示例来源:origin: harbby/presto-connectors

String filePath = file.substring(0, pos);
URL internalUrl = new URL(filePath);
URL normalizedUrl = resolveRepoURL(internalUrl);
if (normalizedUrl == null) {
  return null;

代码示例来源:origin: com.strapdata.elasticsearch/elasticsearch

String filePath = file.substring(0, pos);
URL internalUrl = new URL(filePath);
URL normalizedUrl = resolveRepoURL(internalUrl);
if (normalizedUrl == null) {
  return null;

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.elasticsearch

String filePath = file.substring(0, pos);
URL internalUrl = new URL(filePath);
URL normalizedUrl = resolveRepoURL(internalUrl);
if (normalizedUrl == null) {
  return null;

代码示例来源:origin: apache/servicemix-bundles

String filePath = file.substring(0, pos);
URL internalUrl = new URL(filePath);
URL normalizedUrl = resolveRepoURL(internalUrl);
if (normalizedUrl == null) {
  return null;

代码示例来源:origin: harbby/presto-connectors

/**
 * Makes sure that the url is white listed or if it points to the local file system it matches one on of the root path in path.repo
 */
private URL checkURL(URL url) {
  String protocol = url.getProtocol();
  if (protocol == null) {
    throw new RepositoryException(repositoryName, "unknown url protocol from URL [" + url + "]");
  }
  for (String supportedProtocol : supportedProtocols) {
    if (supportedProtocol.equals(protocol)) {
      try {
        if (URIPattern.match(urlWhiteList, url.toURI())) {
          // URL matches white list - no additional processing is needed
          return url;
        }
      } catch (URISyntaxException ex) {
        logger.warn("cannot parse the specified url [{}]", url);
        throw new RepositoryException(repositoryName, "cannot parse the specified url [" + url + "]");
      }
      // We didn't match white list - try to resolve against path.repo
      URL normalizedUrl = environment.resolveRepoURL(url);
      if (normalizedUrl == null) {
        logger.warn("The specified url [{}] doesn't start with any repository paths specified by the path.repo setting: [{}] or by repositories.url.allowed_urls setting: [{}] ", url, environment.repoFiles());
        throw new RepositoryException(repositoryName, "file url [" + url + "] doesn't match any of the locations specified by path.repo or repositories.url.allowed_urls");
      }
      return normalizedUrl;
    }
  }
  throw new RepositoryException(repositoryName, "unsupported url protocol [" + protocol + "] from URL [" + url + "]");
}

代码示例来源:origin: com.strapdata.elasticsearch/elasticsearch

/**
 * Makes sure that the url is white listed or if it points to the local file system it matches one on of the root path in path.repo
 */
private URL checkURL(URL url) {
  String protocol = url.getProtocol();
  if (protocol == null) {
    throw new RepositoryException(getMetadata().name(), "unknown url protocol from URL [" + url + "]");
  }
  for (String supportedProtocol : supportedProtocols) {
    if (supportedProtocol.equals(protocol)) {
      try {
        if (URIPattern.match(urlWhiteList, url.toURI())) {
          // URL matches white list - no additional processing is needed
          return url;
        }
      } catch (URISyntaxException ex) {
        logger.warn("cannot parse the specified url [{}]", url);
        throw new RepositoryException(getMetadata().name(), "cannot parse the specified url [" + url + "]");
      }
      // We didn't match white list - try to resolve against path.repo
      URL normalizedUrl = environment.resolveRepoURL(url);
      if (normalizedUrl == null) {
        logger.warn("The specified url [{}] doesn't start with any repository paths specified by the path.repo setting or by {} setting: [{}] ", url, ALLOWED_URLS_SETTING.getKey(), environment.repoFiles());
        throw new RepositoryException(getMetadata().name(), "file url [" + url + "] doesn't match any of the locations specified by path.repo or " + ALLOWED_URLS_SETTING.getKey());
      }
      return normalizedUrl;
    }
  }
  throw new RepositoryException(getMetadata().name(), "unsupported url protocol [" + protocol + "] from URL [" + url + "]");
}

相关文章