package org.cagrid.gaards.dorian.client; import gov.nih.nci.cagrid.introduce.security.client.ServiceSecurityClient; import java.io.InputStream; import java.rmi.RemoteException; import org.apache.axis.EngineConfiguration; import org.apache.axis.client.AxisClient; import org.apache.axis.configuration.FileProvider; import org.apache.axis.message.addressing.EndpointReferenceType; import org.apache.axis.types.URI.MalformedURIException; import org.cagrid.gaards.dorian.stubs.DorianPortType; import org.cagrid.gaards.dorian.stubs.service.DorianServiceAddressingLocator; import org.globus.gsi.GlobusCredential; import org.globus.wsrf.NotificationConsumerManager; /** * This class is autogenerated, DO NOT EDIT GENERATED GRID SERVICE ACCESS METHODS. * * This client is generated automatically by Introduce to provide a clean unwrapped API to the * service. * * On construction the class instance will contact the remote service and retrieve it's security * metadata description which it will use to configure the Stub specifically for each method call. * * @created by Introduce Toolkit version 1.4 */ public abstract class DorianClientBase extends ServiceSecurityClient { protected DorianPortType portType; protected Object portTypeMutex; protected NotificationConsumerManager consumer = null; protected EndpointReferenceType consumerEPR = null; public DorianClientBase(String url, GlobusCredential proxy) throws MalformedURIException, RemoteException { super(url,proxy); initialize(); } public DorianClientBase(EndpointReferenceType epr, GlobusCredential proxy) throws MalformedURIException, RemoteException { super(epr,proxy); initialize(); } protected void initialize() throws RemoteException { this.portTypeMutex = new Object(); this.portType = createPortType(); } protected DorianPortType createPortType() throws RemoteException { DorianServiceAddressingLocator locator = new DorianServiceAddressingLocator(); // attempt to load our context sensitive wsdd file InputStream resourceAsStream = getClass().getResourceAsStream("client-config.wsdd"); if (resourceAsStream != null) { // we found it, so tell axis to configure an engine to use it EngineConfiguration engineConfig = new FileProvider(resourceAsStream); // set the engine of the locator locator.setEngine(new AxisClient(engineConfig)); } DorianPortType port = null; try { port = locator.getDorianPortTypePort(getEndpointReference()); } catch (Exception e) { throw new RemoteException("Unable to locate portType:" + e.getMessage(), e); } return port; } }