📄 introspectiondocument.java
字号:
package com.jeffhanson.atompub.introspect;
import java.io.File;
import java.io.OutputStream;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import com.jeffhanson.atompub.DOMDataSource;
import com.jeffhanson.atompub.DOMUtils;
import com.jeffhanson.rest.core.Representation;
public class IntrospectionDocument extends Representation
{
public static final String MEDIA_TYPE = "application/atomserv+xml";
public static final String CONTENT_TYPE = MEDIA_TYPE + "; charset=utf-8";
public static IntrospectionDocument parse(File serviceDocFile)
throws ServiceDocumentException
{
try
{
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
org.w3c.dom.Document doc = builder.parse(serviceDocFile);
doc.normalize();
return new IntrospectionDocument(doc);
}
catch (Exception e)
{
e.printStackTrace();
throw new ServiceDocumentException(e);
}
}
private Document doc = null;
private ServiceNode service = null;
public IntrospectionDocument(Document doc)
{
super(new DOMDataSource(IntrospectionDocument.class.getName(),
doc,
CONTENT_TYPE));
this.doc = doc;
Node node = DOMUtils.getChildNode(doc, "service");
if (node != null)
{
service = new ServiceNode(node);
}
}
public ServiceNode getService()
{
return service;
}
public void write(OutputStream out)
throws ServiceDocumentException
{
DOMUtils.write(doc, out);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -