package org.easysoa.discovery.code.model; import java.util.Map; import org.easysoa.discovery.code.handler.JaxWSSourcesHandler; import org.easysoa.registry.rest.client.types.java.MavenDeliverableInformation; import org.easysoa.registry.types.OperationInformation; import org.easysoa.registry.types.ids.SoaNodeId; // TODO change wsName(space) to serviceItfName (for REST also), or make it WS only public class JavaServiceInterfaceInformation { private SoaNodeId mavenDeliverableId; private String interfaceName; private String wsNamespace; private String wsName; private Map<String, OperationInformation> operations; public JavaServiceInterfaceInformation(String subprojectId, String mavenGroupId, String mavenArtifactId, String interfaceName, String wsNamespace, String wsName, Map<String, OperationInformation> operations) throws Exception { this.operations = operations; this.mavenDeliverableId = new MavenDeliverableInformation(subprojectId, mavenGroupId, mavenArtifactId).getSoaNodeId(); this.interfaceName = interfaceName; this.wsNamespace = wsNamespace; this.wsName = wsName; } public String getInterfaceName() { return interfaceName; } public SoaNodeId getMavenDeliverableId() { return mavenDeliverableId; } public String getWsPortTypeLocalName() { return wsName; } public String getWsPortTypeNS() { return wsNamespace; } public String getWsPortTypeName() { return JaxWSSourcesHandler.toShortNsName(this.getWsPortTypeNS(), this.getWsPortTypeLocalName()); } /** * key = methodName, value = operation * @return */ public Map<String, OperationInformation> getOperations() { return operations; } @Override public boolean equals(Object obj) { if (obj instanceof String) { return obj.equals(interfaceName); } else { return super.equals(obj); } } }