You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scout-dev@ws.apache.org by ge...@apache.org on 2005/02/10 07:58:31 UTC
svn commit: r153182 -
webservices/scout/trunk/modules/scout/src/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java
Author: geirm
Date: Wed Feb 9 22:58:30 2005
New Revision: 153182
URL: http://svn.apache.org/viewcvs?view=rev&rev=153182
Log:
Added support for the predefined enumerations as defined
in the JAXR spec.
Modified:
webservices/scout/trunk/modules/scout/src/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java
Modified: webservices/scout/trunk/modules/scout/src/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java
URL: http://svn.apache.org/viewcvs/webservices/scout/trunk/modules/scout/src/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java?view=diff&r1=153181&r2=153182
==============================================================================
--- webservices/scout/trunk/modules/scout/src/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java (original)
+++ webservices/scout/trunk/modules/scout/src/java/org/apache/ws/scout/registry/BusinessQueryManagerImpl.java Wed Feb 9 22:58:30 2005
@@ -32,6 +32,7 @@
import org.apache.ws.scout.registry.infomodel.ClassificationSchemeImpl;
import org.apache.ws.scout.registry.infomodel.InternationalStringImpl;
import org.apache.ws.scout.registry.infomodel.KeyImpl;
+import org.apache.ws.scout.registry.infomodel.ConceptImpl;
import org.apache.ws.scout.util.EnumerationHelper;
import org.apache.ws.scout.util.ScoutUddiJaxrHelper;
@@ -160,40 +161,153 @@
scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());
scheme.setName(new InternationalStringImpl("ntis-gov:naics"));
scheme.setKey(new KeyImpl(TModel.NAICS_TMODEL_KEY));
- } else
+ }
+ else
{ //TODO:Before going to the registry, check if it a predefined Enumeration
+ /*
+ * predefined Enumerations
+ */
+
+ if ("AssociationType".equals(namePatterns)) {
+ scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());
+
+ scheme.setName(new InternationalStringImpl(namePatterns));
+
+ scheme.setKey(new KeyImpl(TModel.UNSPSC_TMODEL_KEY));
+
+ addChildConcept((ClassificationSchemeImpl)scheme, "RelatedTo");
+ addChildConcept((ClassificationSchemeImpl)scheme, "HasChild");
+ addChildConcept((ClassificationSchemeImpl)scheme, "HasMember");
+ addChildConcept((ClassificationSchemeImpl)scheme, "HasParent");
+ addChildConcept((ClassificationSchemeImpl)scheme, "ExternallyLinks");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Contains");
+ addChildConcept((ClassificationSchemeImpl)scheme, "EquivalentTo");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Extends");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Implements");
+ addChildConcept((ClassificationSchemeImpl)scheme, "InstanceOf");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Supersedes");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Uses");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Replaces");
+ addChildConcept((ClassificationSchemeImpl)scheme, "ResponsibleFor");
+ addChildConcept((ClassificationSchemeImpl)scheme, "SubmitterOf");
+ }
+ else if ("ObjectType".equals(namePatterns)) {
+ scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());
- //Lets ask the uddi registry if it has the TModels
- IRegistry registry = registryService.getRegistry();
- FindQualifiers juddiFindQualifiers = mapFindQualifiers(findQualifiers);
- Vector nameVector = new Vector();
- nameVector.add(namePatterns);
- try
- {
- //We are looking for one exact match, so getting upto 3 records is fine
- TModelList list = registry.findTModel(namePatterns, null, null, juddiFindQualifiers, 3);
- TModelInfos infos = null;
- Vector tmvect = null;
- if (list != null) infos = list.getTModelInfos();
- if (infos != null) tmvect = infos.getTModelInfoVector();
- if (tmvect != null)
+ scheme.setName(new InternationalStringImpl(namePatterns));
+
+ scheme.setKey(new KeyImpl(TModel.UNSPSC_TMODEL_KEY));
+
+ addChildConcept((ClassificationSchemeImpl)scheme, "CPP");
+ addChildConcept((ClassificationSchemeImpl)scheme, "CPA");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Process");
+ addChildConcept((ClassificationSchemeImpl)scheme, "WSDL");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Association");
+ addChildConcept((ClassificationSchemeImpl)scheme, "AuditableEvent");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Classification");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Concept");
+ addChildConcept((ClassificationSchemeImpl)scheme, "ExternalIdentifier");
+ addChildConcept((ClassificationSchemeImpl)scheme, "ExternalLink");
+ addChildConcept((ClassificationSchemeImpl)scheme, "ExtrinsicObject");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Organization");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Package");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Service");
+ addChildConcept((ClassificationSchemeImpl)scheme, "ServiceBinding");
+ addChildConcept((ClassificationSchemeImpl)scheme, "User");
+ }
+ else if ("PhoneType".equals(namePatterns)) {
+ scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());
+
+ scheme.setName(new InternationalStringImpl(namePatterns));
+
+ scheme.setKey(new KeyImpl(TModel.UNSPSC_TMODEL_KEY));
+
+ addChildConcept((ClassificationSchemeImpl)scheme, "OfficePhone");
+ addChildConcept((ClassificationSchemeImpl)scheme, "HomePhone");
+ addChildConcept((ClassificationSchemeImpl)scheme, "MobilePhone");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Beeper");
+ addChildConcept((ClassificationSchemeImpl)scheme, "FAX");
+ }
+ else if ("URLType".equals(namePatterns)) {
+ scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());
+
+ scheme.setName(new InternationalStringImpl(namePatterns));
+
+ scheme.setKey(new KeyImpl(TModel.UNSPSC_TMODEL_KEY));
+
+ addChildConcept((ClassificationSchemeImpl)scheme, "HTTP");
+ addChildConcept((ClassificationSchemeImpl)scheme, "HTTPS");
+ addChildConcept((ClassificationSchemeImpl)scheme, "SMTP");
+ addChildConcept((ClassificationSchemeImpl)scheme, "PHONE");
+ addChildConcept((ClassificationSchemeImpl)scheme, "FAX");
+ addChildConcept((ClassificationSchemeImpl)scheme, "OTHER");
+ }
+ else if ("PostalAddressAttributes".equals(namePatterns)) {
+ scheme = new ClassificationSchemeImpl(registryService.getLifeCycleManagerImpl());
+
+ scheme.setName(new InternationalStringImpl(namePatterns));
+
+ scheme.setKey(new KeyImpl(TModel.UNSPSC_TMODEL_KEY));
+
+ addChildConcept((ClassificationSchemeImpl)scheme, "StreetNumber");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Street");
+ addChildConcept((ClassificationSchemeImpl)scheme, "City");
+ addChildConcept((ClassificationSchemeImpl)scheme, "State");
+ addChildConcept((ClassificationSchemeImpl)scheme, "PostalCode");
+ addChildConcept((ClassificationSchemeImpl)scheme, "Country");
+ }
+ else {
+
+ //Lets ask the uddi registry if it has the TModels
+ IRegistry registry = registryService.getRegistry();
+ FindQualifiers juddiFindQualifiers = mapFindQualifiers(findQualifiers);
+ Vector nameVector = new Vector();
+ nameVector.add(namePatterns);
+ try
{
- if (tmvect.size() > 1)
- throw new InvalidRequestException("Multiple matches found");
+ //We are looking for one exact match, so getting upto 3 records is fine
+ TModelList list = registry.findTModel(namePatterns, null, null, juddiFindQualifiers, 3);
+ TModelInfos infos = null;
+ Vector tmvect = null;
+ if (list != null) infos = list.getTModelInfos();
+ if (infos != null) tmvect = infos.getTModelInfoVector();
+ if (tmvect != null)
+ {
+ if (tmvect.size() > 1)
+ throw new InvalidRequestException("Multiple matches found");
+
+ TModelInfo info = (TModelInfo) tmvect.elementAt(0);
+ scheme.setName(new InternationalStringImpl(info.getName().getValue()));
+ scheme.setKey(new KeyImpl(info.getTModelKey()));
+ }
- TModelInfo info = (TModelInfo) tmvect.elementAt(0);
- scheme.setName(new InternationalStringImpl(info.getName().getValue()));
- scheme.setKey(new KeyImpl(info.getTModelKey()));
+ } catch (RegistryException e)
+ {
+ e.printStackTrace();
+ throw new JAXRException(e.getLocalizedMessage());
}
-
- } catch (RegistryException e)
- {
- e.printStackTrace();
- throw new JAXRException(e.getLocalizedMessage());
}
}
return scheme;
+ }
+
+ /**
+ * Creates a new Concept, associates w/ parent scheme, and then
+ * adds as decendent.
+ * @param scheme
+ * @param name
+ * @throws JAXRException
+ */
+ private void addChildConcept(ClassificationSchemeImpl scheme, String name)
+ throws JAXRException {
+ Concept c = new ConceptImpl(registryService.getLifeCycleManagerImpl());
+
+ c.setName(new InternationalStringImpl(name));
+ c.setValue(name);
+ ((ConceptImpl)c).setScheme((ClassificationSchemeImpl)scheme);
+
+ scheme.addChildConcept(c);
}
public BulkResponse findClassificationSchemes(Collection findQualifiers,
---------------------------------------------------------------------
To unsubscribe, e-mail: scout-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: scout-dev-help@ws.apache.org