org.geoserver.platform.resource.Resource.out()方法的使用及代码示例

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

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

Resource.out介绍

[英]Steam access to resource contents.
[中]蒸汽获取资源内容。

代码示例

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

@Override
public OutputStream out() {
  return delegate.out();
}

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

/**
 * Write the contents of a stream into a resource
 *
 * @param data data to write
 * @param destination resource to write to
 * @throws IOException If data could not be copied to destination
 */
public static void copy(InputStream data, Resource destination) throws IOException {
  try (OutputStream out = destination.out()) {
    IOUtils.copy(data, out);
  }
}

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

/**
   * Writes a resource contents as a byte array. Usage is suggested only if the resource is known
   * to be small (e.g. a configuration file).
   *
   * @param byteArray
   * @throws IOException
   */
  default void setContents(byte[] byteArray) throws IOException {
    try (OutputStream os = out()) {
      IOUtils.write(byteArray, os);
    }
  }
}

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

/**
 * Safe write on styleFile the passed inputStream
 *
 * @param in the new stream to write to styleFile
 * @param styleFile file to update
 * @throws IOException
 */
public static void writeStyle(final InputStream in, final Resource styleFile)
    throws IOException {
  try (BufferedOutputStream out = new BufferedOutputStream(styleFile.out())) {
    IOUtils.copy(in, out);
    out.flush();
  }
}

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

/** Helper method which uses xstream to persist an object as xml on disk. */
void persist(XStreamPersister xp, Object obj, Resource f) throws Exception {
  BufferedOutputStream out = new BufferedOutputStream(f.out());
  xp.save(obj, out);
  out.flush();
  out.close();
}

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

@Override
protected void loadProperties(Properties props) throws IOException {
  try {
    super.loadProperties(props);
  } catch (FileNotFoundException e) {
    // location was not found, create
    if (configFile != null && copyOutTemplate) {
      try (OutputStream fout = configFile.out()) {
        props.store(fout, comments);
        fout.flush();
      }
    }
  }
}

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

/**
   * Performs serialization with an {@link XStreamPersister} in a safe manner in which a temp file
   * is used for the serialization so that the true destination file is not partially written in
   * the case of an error.
   *
   * @param r The resource to write to, only modified if the temp file serialization was error
   *     free.
   * @param obj The object to serialize.
   * @param xp The persister.
   */
  public static void xStreamPersist(Resource r, Object obj, XStreamPersister xp)
      throws IOException {

    try (OutputStream out = r.out()) {
      xp.save(obj, out);
      out.flush();
    }
  }
}

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

static OutputStream output(URL url, Resource configDir) throws IOException {
  // check for file url
  if ("file".equalsIgnoreCase(url.getProtocol())) {
    File f = URLs.urlToFile(url);
    if (!f.isAbsolute()) {
      // make relative to config dir
      return configDir.get(f.getPath()).out();
    } else {
      return new FileOutputStream(f);
    }
  } else {
    URLConnection cx = url.openConnection();
    cx.setDoOutput(true);
    return cx.getOutputStream();
  }
}

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

void saveMasterPasswordDigest(String masterPasswdDigest) throws IOException {
  OutputStream fout = security().get(MASTER_PASSWD_DIGEST_FILENAME).out();
  try {
    IOUtils.write(masterPasswdDigest, fout);
  } finally {
    fout.close();
  }
}

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

private void writeCurrentVersion() throws IOException {
  Resource security = security();
  security.dir();
  Resource properties = security.get(VERSION_PROPERTIES);
  Properties p = new Properties();
  p.put(VERSION, CURR_VERSION.toString());
  try (OutputStream os = properties.out()) {
    p.store(
        os,
        "Current version of the security directory. Do not remove or alter this file");
  }
}

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

private void copyResToDir(Resource r, Resource newDir) throws IOException {
    Resource newR = newDir.get(r.name());
    try (InputStream in = r.in();
        OutputStream out = newR.out()) {
      IOUtils.copy(in, out);
    }
  }
}

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

@Override
public void storeKeyStore() throws IOException {
  // store away the keystore
  assertActivatedKeyStore();
  try (OutputStream fos = getResource().out()) {
    char[] passwd = securityManager.getMasterPassword();
    try {
      ks.store(fos, passwd);
    } catch (Exception e) {
      throw new IOException(e);
    } finally {
      securityManager.disposePassword(passwd);
    }
  }
}

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

@Theory
public void theoryDoubleClose(String path) throws Exception {
  final Resource res = getResource(path);
  assumeThat(res, is(resource()));
  OutputStream os = res.out();
  os.close();
  os.close();
}

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

public final void save(T service, GeoServer gs, Resource directory) throws Exception {
  String filename = getFilename();
  Resource resource =
      directory == null ? resourceLoader.get(filename) : directory.get(filename);
  // using resource output stream makes sure we write on a temp file and them move
  try (OutputStream out = resource.out()) {
    XStreamPersister xp = xpf.createXMLPersister();
    initXStreamPersister(xp, gs);
    xp.save(service, out);
  }
}

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

@Theory
public void theoryNonDirectoriesHaveFileWithSameContents(String path) throws Exception {
  Resource res = getResource(path);
  assumeThat(res, not(directory()));
  byte[] test = {42, 29, 32, 120, 69, 0, 1};
  try (OutputStream ostream = res.out()) {
    ostream.write(test);
  }
  byte[] result = new byte[test.length];
  try (InputStream istream = new FileInputStream(res.file())) {
    istream.read(result);
    assertThat(istream.read(), is(-1));
  }
  assertThat(result, equalTo(test));
}

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

@Theory
public void theoryLeavesHaveOstream(String path) throws Exception {
  Resource res = getResource(path);
  assumeThat(res, is(resource()));
  try (OutputStream result = res.out()) {
    assertThat(result, notNullValue());
  }
}

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

@Theory
public void theoryNonDirectoriesPersistData(String path) throws Exception {
  Resource res = getResource(path);
  assumeThat(res, not(directory()));
  byte[] test = {42, 29, 32, 120, 69, 0, 1};
  try (OutputStream ostream = res.out()) {
    ostream.write(test);
  }
  byte[] result = new byte[test.length];
  try (InputStream istream = res.in()) {
    istream.read(result);
    assertThat(istream.read(), is(-1));
  }
  assertThat(result, equalTo(test));
}

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

@Theory
public void theoryDirectoriesHaveNoOstream(String path) throws Exception {
  Resource res = getResource(path);
  assumeThat(res, is(directory()));
  exception.expect(IllegalStateException.class);
  res.out().close();
}

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

@Theory
public void theoryUndefinedHaveOstreamAndBecomeResource(String path) throws Exception {
  Resource res = getResource(path);
  assumeThat(res, is(undefined()));
  try (OutputStream result = res.out()) {
    assertThat(result, notNullValue());
    assertThat(res, is(resource()));
  }
}

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

@Override
protected void onSetUp(SystemTestData testData) throws Exception {
  super.onSetUp(testData);
  LayerInfo li = getCatalog().getLayerByName(getLayerId(SystemTestData.BUILDINGS));
  Resource resource = getDataDirectory().config(li);
  Document dom;
  try (InputStream is = resource.in()) {
    dom = dom(resource.in());
  }
  Element defaultStyle = (Element) dom.getElementsByTagName("defaultStyle").item(0);
  Element defaultStyleId = (Element) defaultStyle.getElementsByTagName("id").item(0);
  defaultStyleId.setTextContent("danglingReference");
  try (OutputStream os = resource.out()) {
    print(dom, os);
  }
  getGeoServer().reload();
}

相关文章