/**
 * 
 */
package eu.dnetlib.helpers.data.publisher;

import eu.dnetlib.api.data.PublisherServiceException;
import eu.dnetlib.clients.data.publisher.ws.PublisherWSClient;
import gr.uoa.di.driver.enabling.resultset.ResultSet;

import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.apache.log4j.BasicConfigurator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;

/**
 * @author stoumpos
 *
 */
public class PublisherServiceClientMain {
	
	public static void main(String[] args) {
		
		BasicConfigurator.configure();
		Logger.getRootLogger().setLevel(Level.WARN);
		// turn-on logging for clients package
		Logger.getLogger("eu.dnetlib.data.publisher").setLevel(Level.DEBUG);
		// turn-on logging for specific class
		Logger.getLogger(ResultSet.class).setLevel(Level.DEBUG);
		
		String address = "http://146.48.85.160:8280/is/services/publisher";
		JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
		//factory.getInInterceptors().add(new LoggingInInterceptor());
		//factory.getOutInterceptors().add(new LoggingOutInterceptor());
		factory.setServiceClass(eu.dnetlib.data.information.publisher.rmi.PublisherService.class);
		factory.setAddress(address);
		PublisherWSClient publisher = new PublisherWSClient();
		publisher.setClient((eu.dnetlib.data.information.publisher.rmi.PublisherService) factory.create());
		
		try {
			System.out.println("Calling publisher...");
			String id = "5734926a-7b66-45c4-aef0-f6f3a7cc138e_UmVwb3NpdG9yeVNlcnZpY2VSZXNvdXJjZXMvUmVwb3NpdG9yeVNlcnZpY2VSZXNvdXJjZVR5cGU=::oai:mediatum2.ub.tum.org:node/630327";
			String resource = publisher.getResourceById(id, "DMF");
			System.out.println("resource = " + resource);
			
		} catch (PublisherServiceException e) {
			System.err.println("Error calling publisher: " + e.getMessage());
			e.printStackTrace();
		}
	}
}


