gpt4 book ai didi

xdi2.core.io.XDIWriter类的使用及代码示例

转载 作者:知者 更新时间:2024-03-24 02:31:05 35 4
gpt4 key购买 nike

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

XDIWriter介绍

[英]Provides methods for writing an XDI graph.
[中]提供用于编写XDI图的方法。

代码示例

代码示例来源:origin: projectdanube/xdi2

@Override
public void save(MemoryGraph memoryGraph) {
  try {
    File file = new File(this.path);
    if (! file.exists()) {
      if (log.isDebugEnabled()) log.debug("File " + file.getAbsolutePath() + " does not exist. Creating file.");
      file.createNewFile();
    }
    if (log.isDebugEnabled()) log.debug("Saving file " + file.getAbsolutePath());
    Writer writer = new FileWriter(this.path);
    this.xdiWriter.write(memoryGraph, writer);
    writer.close();
  } catch (Exception ex) {
    throw new Xdi2RuntimeException("Cannot save file at " + this.path, ex);
  }
}

代码示例来源:origin: projectdanube/xdi2

@Override
public String toString(String format, Properties parameters) {
  if (format == null) format = XDIWriterRegistry.getDefault().getFormat();
  XDIWriter writer = XDIWriterRegistry.forFormat(format, parameters);
  if (writer == null) throw new Xdi2RuntimeException("Unknown format for XDI serialization: " + format);
  StringWriter buffer = new StringWriter();
  try {
    writer.write(this, buffer);
  } catch (IOException ex) {
    return "[Exception: " + ex.getMessage() + "]";
  }
  return buffer.toString();
}

代码示例来源:origin: projectdanube/xdi2

public static void addWriter(Class<? extends XDIWriter> writerClass) {
  XDIWriter writer;
  try {
    Constructor<? extends XDIWriter> constructor = writerClass.getConstructor(Properties.class);
    writer = constructor.newInstance((Properties) null);
  } catch (Exception ex) {
    throw new RuntimeException(ex);
  }
  String format = writer.getFormat();
  String fileExtension = writer.getFileExtension();
  MimeType mimeType = writer.getMimeType();
  if (format != null) writerClassesByFormat.put(format, writerClass);
  if (fileExtension != null) writerClassesByFileExtension.put(fileExtension, writerClass);
  if (mimeType != null) writerClassesByMimeType.put(mimeType, writerClass);
}

代码示例来源:origin: projectdanube/xdi2

private void sendOk(HttpTransportRequest request, HttpTransportResponse response, TransportMessagingResponse messagingResponse) throws IOException {
  response.setStatus(HttpTransportResponse.SC_OK);
  Map<String, String> headers = new HashMap<String, String> ();
  headers.putAll(this.getHeaders());
  if (HttpTransportRequest.METHOD_GET.equals(request.getMethod())) headers.putAll(this.getHeadersGet());
  if (HttpTransportRequest.METHOD_POST.equals(request.getMethod())) headers.putAll(this.getHeadersPost());
  if (HttpTransportRequest.METHOD_PUT.equals(request.getMethod())) headers.putAll(this.getHeadersPut());
  if (HttpTransportRequest.METHOD_DELETE.equals(request.getMethod())) headers.putAll(this.getHeadersDelete());
  if (HttpTransportRequest.METHOD_OPTIONS.equals(request.getMethod())) headers.putAll(this.getHeadersOptions());
  for (Map.Entry<String, String> header : headers.entrySet()) {
    response.setHeader(header.getKey(), header.getValue());
  }
  if (messagingResponse != null) {
    // find a suitable writer based on accept headers
    if (log.isDebugEnabled()) log.debug("Accept: " + request.getHeader("Accept"));
    XDIWriter writer = null;
    String acceptHeader = request.getHeader("Accept");
    MimeType sendMimeType = acceptHeader != null ? AcceptHeader.parse(acceptHeader).bestMimeType(false, true) : null;
    writer = sendMimeType != null ? XDIWriterRegistry.forMimeType(sendMimeType) : null;
    if (writer == null) writer = XDIWriterRegistry.getDefault();
    // send out the message result
    if (log.isDebugEnabled()) log.debug("Sending result in " + sendMimeType + " with writer " + writer.getClass().getSimpleName() + ".");
    ByteArrayOutputStream buffer = new ByteArrayOutputStream();
    writer.write(messagingResponse.getGraph(), buffer);
    response.setContentType(writer.getMimeType().toString());
    response.setContentLength(buffer.size());
    response.writeBody(buffer.toByteArray(), true);
  }
  if (log.isDebugEnabled()) log.debug("Output complete.");
}

代码示例来源:origin: projectdanube/xdi2

public void testWriters() throws Exception {

    String[] formats = new String[] { "XDI/JSON", "XDI DISPLAY", "KEYVALUE" };
    String[] fileExtensions = new String[] { "json", "xdi" };
    MimeType[] mimeTypes = new MimeType[] { new MimeType("application/xdi+json"), new MimeType("application/xdi+json;contexts=0"), new MimeType("application/xdi+json;contexts=1"), new MimeType("text/xdi"), new MimeType("text/xdi;contexts=0"), new MimeType("text/xdi;contexts=1") };

    for (String format : formats) assertTrue(XDIWriterRegistry.forFormat(format, null).supportsFormat(format));
    for (String fileExtension : fileExtensions) assertTrue(XDIWriterRegistry.forFileExtension(fileExtension, null).supportsFileExtension(fileExtension));
    for (MimeType mimeType : mimeTypes) assertTrue(XDIWriterRegistry.forMimeType(mimeType).supportsMimeType(mimeType));
  }
}

代码示例来源:origin: projectdanube/xdi2

private void readGraph(ExecutionContext executionContext) throws Xdi2MessagingException {
  XDIReader xdiReader = XDIReaderRegistry.forFormat(this.mimeType, null);
  if (xdiReader == null) throw new Xdi2MessagingException("Cannot read this format: " + this.mimeType, null, executionContext);
  Graph graph = this.getGraph();
  graph.clear();
  FileReader reader = null;
  try {
    File file = new File(this.path);
    reader = new FileReader(file);
    xdiReader.read(graph, reader);
    reader.close();
  } catch (FileNotFoundException ex) {
  } catch (Exception ex) {
    throw new Xdi2MessagingException("Cannot read file: " + ex.getMessage(), ex, executionContext);
  } finally {
    if (reader != null) {
      try {
        reader.close();
      } catch (Exception ex) { }
    }
  }
  if (xdiReader instanceof AutoReader) this.mimeType = ((AutoReader) xdiReader).getLastSuccessfulReader().getFormat();
  if (this.mimeType == null) this.mimeType = XDIWriterRegistry.getDefault().getFormat();
}

代码示例来源:origin: projectdanube/xdi2

@Override
public String toString(MimeType mimeType) {
  if (mimeType == null) throw new NullPointerException();
  XDIWriter writer = XDIWriterRegistry.forMimeType(mimeType);
  if (writer == null) throw new Xdi2RuntimeException("Unknown MIME type for XDI serialization: " + mimeType);
  StringWriter buffer = new StringWriter();
  try {
    writer.write(this, buffer);
  } catch (IOException ex) {
    return "[Exception: " + ex.getMessage() + "]";
  }
  return buffer.toString();
}

代码示例来源:origin: projectdanube/xdi2

private void writeGraph(ExecutionContext executionContext) throws Xdi2MessagingException {
  XDIWriter xdiWriter = XDIWriterRegistry.forFormat(this.mimeType, null);
  if (xdiWriter == null) throw new Xdi2MessagingException("Cannot write this format: " + this.mimeType, null, executionContext);
  Graph graph = this.getGraph();
  
  FileWriter writer = null;
  try {
    File file = new File(this.path);
    file.createNewFile();
    writer = new FileWriter(file);
    xdiWriter.write(graph, writer);
    writer.close();
  } catch (Exception ex) {
    throw new Xdi2MessagingException("Cannot write file: " + ex.getMessage(), ex, executionContext);
  } finally {
    if (writer != null) try { writer.close(); } catch (Exception ex) { }
  }
  graph.close();
}

代码示例来源:origin: projectdanube/xdi2

private static void sendText(WebSocketTransportRequest request, WebSocketTransportResponse response, TransportMessagingResponse messagingResponse) throws IOException {
  // use default writer
  XDIWriter writer = null;
  MimeType sendMimeType = null;
  writer = sendMimeType != null ? XDIWriterRegistry.forMimeType(sendMimeType) : null;
  if (writer == null) writer = XDIWriterRegistry.getDefault();
  // send out the message result
  if (log.isDebugEnabled()) log.debug("Sending result in " + sendMimeType + " with writer " + writer.getClass().getSimpleName() + ".");
  StringWriter buffer = new StringWriter();
  writer.write(messagingResponse.getGraph(), buffer);
  // TODO figure out if we can use .getAsync() and avoid concurrency problems
  if (buffer.getBuffer().length() > 0) {
    synchronized (response.getBasic()) {
      response.getBasic().sendText(buffer.getBuffer().toString());
    }
  }
  if (log.isDebugEnabled()) log.debug("Output complete.");
}

代码示例来源:origin: projectdanube/xdi2

@Override
public InterceptorResult before(MessageEnvelope messageEnvelope, ExecutionContext executionContext, ExecutionResult executionResult) throws Xdi2MessagingException {
  if (this.isEnableMessageEnvelope()) {
    StringWriter stringWriter = new StringWriter();
    try {
      XDIWriterRegistry.getDefault().write(messageEnvelope.getGraph(), stringWriter);
    } catch (IOException ex) {
      throw new Xdi2MessagingException("Cannot write graph: " + ex.getMessage(), ex, executionContext);
    }
    String param = stringWriter.getBuffer().toString();
    this.executeCommandLine(param, executionContext);
  }
  return InterceptorResult.DEFAULT;
}

代码示例来源:origin: projectdanube/xdi2

/**
 * Returns the normalized serialization string of a context node, to be used
 * e.g. for signatures and encryptions.
 */
public static String serialize(ContextNode contextNode, CopyStrategy copyStrategy) {
  Graph tempGraph;
  tempGraph = MemoryGraphFactory.getInstance().openGraph();
  CopyUtil.copyContextNode(contextNode, tempGraph, copyStrategy);
  StringWriter buffer = new StringWriter();
  String string;
  try {
    XDIWRITER.write(tempGraph, buffer);
    string = buffer.toString();
  } catch (IOException ex) {
    throw new Xdi2RuntimeException("Cannot serialize " + contextNode + ": " + ex.getMessage(), ex);
  } finally {
    try { buffer.close(); } catch (Exception ex) { }
    tempGraph.close();
  }
  if (log.isDebugEnabled()) log.debug("Normalized context node " + contextNode.getXDIAddress() + ": " + string);
  return string;
}

代码示例来源:origin: projectdanube/xdi2

StringWriter stringWriter = new StringWriter();
  writer.write(messageEnvelope.getGraph(), stringWriter);
  async.sendText(stringWriter.getBuffer().toString());
} catch (Exception ex) {

代码示例来源:origin: projectdanube/xdi2

writer.write(messageEnvelope.getGraph(), outputStream);
outputStream.flush();
outputStream.close();

代码示例来源:origin: projectdanube/xdi2

xdiWriter.write(graph, xdiStringWriter);
graphstring = xdiStringWriter.getBuffer().toString();
xdiWriter.write(graph, xdiStringWriter);
graphstring = xdiStringWriter.getBuffer().toString();
  xdiWriter.write(resultGraph, stringWriter);
  resultstring = stringWriter.getBuffer().toString();
} else {

代码示例来源:origin: projectdanube/xdi2

public void testReadWriteFormats() throws Exception {
  String[] formats = new String[] { "XDI/JSON", "XDI DISPLAY" };
  for (int i=0; i<formats.length; i++) {
    File file = new File("xdi.out");
    Graph graph4 = this.getGraphFactory().openGraph(this.getClass().getName() + "-graph-4" + "-" + i);
    Graph graph5 = this.getGraphFactory().openGraph(this.getClass().getName() + "-graph-5" + "-" + i);
    XDIWriter writer = XDIWriterRegistry.forFormat(formats[i], null);
    XDIReader reader = XDIReaderRegistry.forFormat(formats[i], null);
    FileWriter fileWriter = new FileWriter(file);
    FileReader fileReader = new FileReader(file);
    makeGraph(graph4);
    writer.write(graph4, fileWriter);
    reader.read(graph5, fileReader);
    fileWriter.close();
    fileReader.close();
    testGraph(graph5);
    testGraphsEqual(graph4, graph5);
    graph4.close();
    graph5.close();
    file.delete();
  }
}

代码示例来源:origin: projectdanube/xdi2

XDIWriterRegistry.forFormat("XDI/JSON", null).write(graph10, buffer1);
XDIWriterRegistry.forFormat("XDI DISPLAY", null).write(graph11, buffer2);
graph10.clear();
graph11.clear();

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com