package org.itscool.commons.document;

import java.io.InputStream;
import java.net.URL;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;

/**
 * HTTPリクエストの結果をXMLドキュメントで受ける為のクラスです。
 * @author kanou
 *
 */
public class RequestToXmlDocument {
    private Document document;
    
    public RequestToXmlDocument(String requestUrl) throws Exception{
        URL rss=new URL(requestUrl);
        
        //ドキュメントビルダーファクトリを生成
        DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
        // ドキュメントビルダーを生成
        DocumentBuilder builder = dbfactory.newDocumentBuilder();
        // パースを実行してDocumentオブジェクトを取得
        InputStream in = rss.openConnection().getInputStream();
        document = builder.parse(in);
        
    }
    
    public String parseText(String encoding) throws Exception{
        XmlDocument xmlDocument = new XmlDocument(document);
        return xmlDocument.parseText(encoding);
    }
    
    public Document getDocument() {
        return document;
    }
}
