xdi2.core.io.XDIWriterRegistry.forMimeType()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(6.2k)|赞(0)|评价(0)|浏览(139)

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

XDIWriterRegistry.forMimeType介绍

[英]Returns an XDIWriter for the specified mime type, e.g.

  • application/xdi+json
  • text/xdi
    [中]返回指定mime类型的XDIWriter,例如。
    *application/xdi+json
    *文本/xdi

代码示例

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

  1. @Override
  2. public String toString(MimeType mimeType) {
  3. if (mimeType == null) throw new NullPointerException();
  4. XDIWriter writer = XDIWriterRegistry.forMimeType(mimeType);
  5. if (writer == null) throw new Xdi2RuntimeException("Unknown MIME type for XDI serialization: " + mimeType);
  6. StringWriter buffer = new StringWriter();
  7. try {
  8. writer.write(this, buffer);
  9. } catch (IOException ex) {
  10. return "[Exception: " + ex.getMessage() + "]";
  11. }
  12. return buffer.toString();
  13. }

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

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

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

  1. @Override
  2. public WrapperStore openWrapper(String identifier) throws IOException {
  3. // initialize graph
  4. XDIReader xdiReader = XDIReaderRegistry.forMimeType(this.mimeType == null ? null : new MimeType(this.mimeType));
  5. XDIWriter xdiWriter = XDIWriterRegistry.forMimeType(this.mimeType == null ? null : new MimeType(this.mimeType));
  6. return new URLWrapperStore(this.url, this.mimeType, xdiReader, xdiWriter);
  7. }

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

  1. @Override
  2. public WrapperStore openWrapper(String identifier) throws IOException {
  3. // initialize graph
  4. XDIReader xdiReader = XDIReaderRegistry.forMimeType(this.mimeType == null ? null : new MimeType(this.mimeType));
  5. XDIWriter xdiWriter = XDIWriterRegistry.forMimeType(this.mimeType == null ? null : new MimeType(this.mimeType));
  6. return new ClasspathWrapperStore(this.classpath, this.mimeType, xdiReader, xdiWriter);
  7. }

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

  1. private void sendOk(HttpTransportRequest request, HttpTransportResponse response, TransportMessagingResponse messagingResponse) throws IOException {
  2. response.setStatus(HttpTransportResponse.SC_OK);
  3. Map<String, String> headers = new HashMap<String, String> ();
  4. headers.putAll(this.getHeaders());
  5. if (HttpTransportRequest.METHOD_GET.equals(request.getMethod())) headers.putAll(this.getHeadersGet());
  6. if (HttpTransportRequest.METHOD_POST.equals(request.getMethod())) headers.putAll(this.getHeadersPost());
  7. if (HttpTransportRequest.METHOD_PUT.equals(request.getMethod())) headers.putAll(this.getHeadersPut());
  8. if (HttpTransportRequest.METHOD_DELETE.equals(request.getMethod())) headers.putAll(this.getHeadersDelete());
  9. if (HttpTransportRequest.METHOD_OPTIONS.equals(request.getMethod())) headers.putAll(this.getHeadersOptions());
  10. for (Map.Entry<String, String> header : headers.entrySet()) {
  11. response.setHeader(header.getKey(), header.getValue());
  12. }
  13. if (messagingResponse != null) {
  14. // find a suitable writer based on accept headers
  15. if (log.isDebugEnabled()) log.debug("Accept: " + request.getHeader("Accept"));
  16. XDIWriter writer = null;
  17. String acceptHeader = request.getHeader("Accept");
  18. MimeType sendMimeType = acceptHeader != null ? AcceptHeader.parse(acceptHeader).bestMimeType(false, true) : null;
  19. writer = sendMimeType != null ? XDIWriterRegistry.forMimeType(sendMimeType) : null;
  20. if (writer == null) writer = XDIWriterRegistry.getDefault();
  21. // send out the message result
  22. if (log.isDebugEnabled()) log.debug("Sending result in " + sendMimeType + " with writer " + writer.getClass().getSimpleName() + ".");
  23. ByteArrayOutputStream buffer = new ByteArrayOutputStream();
  24. writer.write(messagingResponse.getGraph(), buffer);
  25. response.setContentType(writer.getMimeType().toString());
  26. response.setContentLength(buffer.size());
  27. response.writeBody(buffer.toByteArray(), true);
  28. }
  29. if (log.isDebugEnabled()) log.debug("Output complete.");
  30. }

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

  1. @Override
  2. public WrapperStore openWrapper(String identifier) throws IOException {
  3. // check identifier
  4. String path = this.getPath();
  5. if (path == null) {
  6. path = FILE_PREFIX + identifier + FILE_SUFFIX;
  7. }
  8. // initialize graph
  9. XDIReader xdiReader = XDIReaderRegistry.forMimeType(this.mimeType == null ? null : new MimeType(this.mimeType));
  10. XDIWriter xdiWriter = XDIWriterRegistry.forMimeType(this.mimeType == null ? null : new MimeType(this.mimeType));
  11. return new FileWrapperStore(path, this.mimeType, xdiReader, xdiWriter);
  12. }

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

  1. XDIWriter writer = XDIWriterRegistry.forMimeType(sendMimeType);
  2. writer = XDIWriterRegistry.forMimeType(sendMimeType);

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

  1. XDIWriter writer = XDIWriterRegistry.forMimeType(sendMimeType);
  2. writer = XDIWriterRegistry.forMimeType(sendMimeType);

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

  1. public void testWriters() throws Exception {
  2. String[] formats = new String[] { "XDI/JSON", "XDI DISPLAY", "KEYVALUE" };
  3. String[] fileExtensions = new String[] { "json", "xdi" };
  4. 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") };
  5. for (String format : formats) assertTrue(XDIWriterRegistry.forFormat(format, null).supportsFormat(format));
  6. for (String fileExtension : fileExtensions) assertTrue(XDIWriterRegistry.forFileExtension(fileExtension, null).supportsFileExtension(fileExtension));
  7. for (MimeType mimeType : mimeTypes) assertTrue(XDIWriterRegistry.forMimeType(mimeType).supportsMimeType(mimeType));
  8. }
  9. }

相关文章