view src/de/mpiwg/itgroup/eSciDoc/harvesting/ECHO_ESCIDOC_init.java @ 0:c6929e63b0b8

first import
author dwinter
date Wed, 24 Nov 2010 16:52:07 +0100
parents
children
line wrap: on
line source

package de.mpiwg.itgroup.eSciDoc.harvesting;

import java.io.IOException;
import java.io.InputStream;



import org.apache.http.HttpResponse;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.jdom.Attribute;
import org.jdom.Document;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.xpath.XPath;

import de.mpiwg.itgroup.eSciDoc.Tools.EScidocBasicHandler;
import de.mpiwg.itgroup.eSciDoc.Tools.EScidocTools;
import de.mpiwg.itgroup.eSciDoc.utils.eSciDocXmlObject;

public class ECHO_ESCIDOC_init {

	private EScidocBasicHandler connector;

	public ECHO_ESCIDOC_init(EScidocBasicHandler connector) {
		this.connector = connector;
	}

	public String createResourceCM() throws IOException, IllegalStateException, JDOMException{
		InputStream str = getClass().getResourceAsStream("/de/mpiwg/itgroup/eSciDoc/xmlTemplates/ECHOResource_content-model.xml");
		HttpResponse result = connector.eScidocPut("/cmm/content-model", str);
		
	Document doc = new SAXBuilder().build(result.getEntity().getContent());
		
		
		XPath xp = EScidocTools.getESciDocXpath("//escidocContentModel:content-model/@xlink:href");
		Attribute href = (Attribute) xp.selectSingleNode(doc);
		
		
		return href.getValue();
	}
	
	public String createCollectionCM() throws IOException, IllegalStateException, JDOMException{
		InputStream str = getClass().getResourceAsStream("/de/mpiwg/itgroup/eSciDoc/xmlTemplates/ECHOCollection_content-model.xml");
		HttpResponse result = connector.eScidocPut("/cmm/content-model", str);
		Document doc = new SAXBuilder().build(result.getEntity().getContent());
		
		
		XPath xp = EScidocTools.getESciDocXpath("//escidocContentModel:content-model/@xlink:href");
		Attribute href = (Attribute) xp.selectSingleNode(doc);
		
		
		return href.getValue();
	}
	
	public String createFoxridgeResourceCM() throws IOException, IllegalStateException, JDOMException{
		InputStream str = getClass().getResourceAsStream("/de/mpiwg/itgroup/eSciDoc/xmlTemplates/FoxridgeResource_content-model.xml");
		HttpResponse result = connector.eScidocPut("/cmm/content-model", str);
		Document doc = new SAXBuilder().build(result.getEntity().getContent());
		
		
		XPath xp = EScidocTools.getESciDocXpath("//escidocContentModel:content-model/@xlink:href");
		Attribute href = (Attribute) xp.selectSingleNode(doc);
		
		
		return href.getValue();
	}
	

	/**
	 * @param args
	 * @throws JDOMException 
	 * @throws IOException 
	 * @throws IllegalStateException 
	 */
	public static void main(String[] args) throws IllegalStateException, IOException, JDOMException {
		
		
		Logger rl = Logger.getRootLogger();
        BasicConfigurator.configure();
        rl.setLevel(Level.DEBUG);

        
		EScidocBasicHandler connector = new EScidocBasicHandler("192.168.56.2",8080,"dwinter","weikiki7");
	
		ECHO_ESCIDOC_init ini = new ECHO_ESCIDOC_init(connector);
		//System.out.println(ini.createCollectionCM());
		System.out.println(ini.createFoxridgeResourceCM());
		

	}

}