You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by al...@apache.org on 2013/11/30 17:54:02 UTC

svn commit: r1546752 [2/3] - in /juddi/trunk: juddi-client.net/juddi-client.net/bindings/ juddi-core/src/main/java/org/apache/juddi/api/impl/ juddi-core/src/main/java/org/apache/juddi/config/ juddi-core/src/main/java/org/apache/juddi/mapping/ juddi-cor...

Modified: juddi/trunk/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java?rev=1546752&r1=1546751&r2=1546752&view=diff
==============================================================================
--- juddi/trunk/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java (original)
+++ juddi/trunk/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java Sat Nov 30 16:54:02 2013
@@ -14,7 +14,6 @@
  * limitations under the License.
  *
  */
-
 package org.apache.juddi.mapping;
 
 import java.util.ArrayList;
@@ -63,1025 +62,1305 @@ import org.w3c.dom.ls.DOMImplementationL
 import org.w3c.dom.ls.LSException;
 import org.w3c.dom.ls.LSSerializer;
 
-
 /**
+ * Handles mapping from the internal jUDDL API Model to the JAXB/XML/WSDL UDDI
+ * data structures
+ *
  * @author <a href="mailto:jfaath@apache.org">Jeff Faath</a>
  * @author <a href="mailto:kstam@apache.org">Kurt T Stam</a>
  * @author <a href="mailto:tcunning@apache.org">Tom Cunningham</a>
+ * @author <a href="mailto:alexoree@apache.org">Alex O'Ree</a>
  */
 public class MappingApiToModel {
-	private static Log logger = LogFactory.getLog(MappingApiToModel.class);
 
-	
-	public static void mapPublisher(org.apache.juddi.api_v3.Publisher apiPublisher, 
-									org.apache.juddi.model.Publisher modelPublisher) 
-				   throws DispositionReportFaultMessage {
-
-		modelPublisher.setAuthorizedName(apiPublisher.getAuthorizedName());
-		modelPublisher.setPublisherName(apiPublisher.getPublisherName());
-		modelPublisher.setEmailAddress(apiPublisher.getEmailAddress());
-		modelPublisher.setIsAdmin(apiPublisher.getIsAdmin());
-		modelPublisher.setIsEnabled(apiPublisher.getIsEnabled());
-		modelPublisher.setMaxBindingsPerService(apiPublisher.getMaxBindingsPerService());
-		modelPublisher.setMaxBusinesses(apiPublisher.getMaxBusinesses());
-		modelPublisher.setMaxServicesPerBusiness(apiPublisher.getMaxServicePerBusiness());
-		modelPublisher.setMaxTmodels(apiPublisher.getMaxTModels());
+        private static Log logger = LogFactory.getLog(MappingApiToModel.class);
+
+        /**
+         *
+         * @param apiPublisher
+         * @param modelPublisher
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapPublisher(org.apache.juddi.api_v3.Publisher apiPublisher,
+                org.apache.juddi.model.Publisher modelPublisher)
+                throws DispositionReportFaultMessage {
+                modelPublisher.setAuthorizedName(apiPublisher.getAuthorizedName());
+                modelPublisher.setPublisherName(apiPublisher.getPublisherName());
+                modelPublisher.setEmailAddress(apiPublisher.getEmailAddress());
+                modelPublisher.setIsAdmin(apiPublisher.getIsAdmin());
+                modelPublisher.setIsEnabled(apiPublisher.getIsEnabled());
+                modelPublisher.setMaxBindingsPerService(apiPublisher.getMaxBindingsPerService());
+                modelPublisher.setMaxBusinesses(apiPublisher.getMaxBusinesses());
+                modelPublisher.setMaxServicesPerBusiness(apiPublisher.getMaxServicePerBusiness());
+                modelPublisher.setMaxTmodels(apiPublisher.getMaxTModels());
                 mapPublisherSignatures(apiPublisher.getSignature(), modelPublisher);
-	}
-	
-	public static void mapBusinessEntity(org.uddi.api_v3.BusinessEntity apiBusinessEntity, 
-										 org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-
-		modelBusinessEntity.setEntityKey(apiBusinessEntity.getBusinessKey());
-		
-		mapBusinessNames(apiBusinessEntity.getName(), modelBusinessEntity.getBusinessNames(), modelBusinessEntity);
-		mapBusinessDescriptions(apiBusinessEntity.getDescription(), modelBusinessEntity.getBusinessDescrs(), modelBusinessEntity);
-		mapDiscoveryUrls(apiBusinessEntity.getDiscoveryURLs(), modelBusinessEntity.getDiscoveryUrls(), modelBusinessEntity);
-		mapContacts(apiBusinessEntity.getContacts(), modelBusinessEntity.getContacts(), modelBusinessEntity);
-		mapBusinessIdentifiers(apiBusinessEntity.getIdentifierBag(), modelBusinessEntity.getBusinessIdentifiers(), modelBusinessEntity);
-		if (apiBusinessEntity.getCategoryBag()!=null) {
-			modelBusinessEntity.setCategoryBag(new org.apache.juddi.model.BusinessCategoryBag(modelBusinessEntity));
-			mapCategoryBag(apiBusinessEntity.getCategoryBag(), modelBusinessEntity.getCategoryBag());
-		}
-		
-		mapBusinessServices(apiBusinessEntity.getBusinessServices(), 
-							modelBusinessEntity.getBusinessServices(), 
-							modelBusinessEntity.getServiceProjections(), 
-							modelBusinessEntity);
-                
-                mapBusinessSignature(apiBusinessEntity.getSignature(), modelBusinessEntity);
-	}
-        
-        private static List<Signature> mapApiSignaturesToModelSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures) 
-				   throws DispositionReportFaultMessage {
-            List<Signature> modelSignatures = new ArrayList<Signature>();
-            modelSignatures.clear();
-            for (org.w3._2000._09.xmldsig_.SignatureType signatureType : apiSignatures) {
-                Signature modelSignature = new Signature();
-                
-                org.w3._2000._09.xmldsig_.SignedInfoType apiSignedInfo = signatureType.getSignedInfo();
-                SignedInfo modelSignedInfo = new SignedInfo();
-                modelSignature.setSignedInfo(modelSignedInfo);
-                
-                String canonicalizationAlgMethod = apiSignedInfo.getCanonicalizationMethod().getAlgorithm();
-                CanonicalizationMethod modelCanonMethod = new CanonicalizationMethod();
-                modelSignedInfo.setCanonicalizationMethod(modelCanonMethod);
-                modelCanonMethod.setAlgorithm(canonicalizationAlgMethod);
-                
-                SignatureMethod modelSigMethod = new SignatureMethod();
-                modelSignedInfo.setSignatureMethod(modelSigMethod);
-                String sigMethod = apiSignedInfo.getSignatureMethod().getAlgorithm();
-                modelSigMethod.setAlgorithm(sigMethod);
-                
-                List<org.w3._2000._09.xmldsig_.ReferenceType> apiReferenceList = apiSignedInfo.getReference();
-                for (org.w3._2000._09.xmldsig_.ReferenceType apiReference : apiReferenceList) {
-                    Reference ref = mapReference(modelSignedInfo, apiReference);
-                    modelSignedInfo.getReference().add(ref);
-                }
-                
-                modelSignedInfo.setCanonicalizationMethod(modelCanonMethod);
-                
-                org.w3._2000._09.xmldsig_.SignatureValueType apiSignatureValue = signatureType.getSignatureValue();
-                SignatureValue modelSignatureValue = new SignatureValue();
-                byte[] signatureValueBytes = apiSignatureValue.getValue();
-                String signatureValueXmlID = apiSignatureValue.getId();
-                modelSignatureValue.setValue(signatureValueBytes);
-                modelSignatureValue.setXmlID(signatureValueXmlID);
-                modelSignature.setSignatureValue(modelSignatureValue);
-                
-                org.w3._2000._09.xmldsig_.KeyInfoType apiKeyInfo = signatureType.getKeyInfo();
-                String apiKeyInfoXmlID = apiKeyInfo.getId();
-                KeyInfo modelKeyInfo = new KeyInfo();
-                modelSignature.setKeyInfo(modelKeyInfo);
-                modelKeyInfo.setXmlID(apiKeyInfoXmlID);
-                
-                List<Object> apiKeyInfoContentList = apiKeyInfo.getContent();
-                List<KeyDataValue> keyInfoDataValues = modelKeyInfo.getKeyDataValue();
-                for (Object apiKeyInfoContentObj : apiKeyInfoContentList) {
-                    if (apiKeyInfoContentObj instanceof JAXBElement) {
-                        JAXBElement apiKeyInfoContentJAXB = (JAXBElement)apiKeyInfoContentObj;
-                        String apiKeyInfoContentTagName = apiKeyInfoContentJAXB.getName().getLocalPart();
-                        if (apiKeyInfoContentJAXB.getValue() instanceof X509DataType) {
-                            KeyDataValue modelX509KeyData = mapX509DataType(apiKeyInfoContentJAXB, modelKeyInfo);
-                            keyInfoDataValues.add(modelX509KeyData);
-                        } else if (apiKeyInfoContentTagName.equals("KeyName")) {
-                            KeyDataValue modelKeyNameKDV = mapKeyName(apiKeyInfoContentJAXB);
-                            modelKeyNameKDV.setKeyInfo(modelKeyInfo);
-                            keyInfoDataValues.add(modelKeyNameKDV);
-                        } else if (apiKeyInfoContentTagName.equals("KeyValue")) {
-                            KeyDataValue modelKeyValueKDV = mapKeyValue(apiKeyInfoContentJAXB, keyInfoDataValues);
-                            modelKeyValueKDV.setKeyInfo(modelKeyInfo);
-                            keyInfoDataValues.add(modelKeyValueKDV);
-                        } else if (apiKeyInfoContentTagName.equals("MgmtData")) {
-                            KeyDataValue modelKeyValueKDV = new KeyDataValue();
-                            modelKeyValueKDV.setKeyDataName(apiKeyInfoContentTagName);
-                            modelKeyValueKDV.setKeyDataType("String");
-                            modelKeyValueKDV.setKeyDataValueString((String)apiKeyInfoContentJAXB.getValue());
-                            modelKeyValueKDV.setKeyInfo(modelKeyInfo);
-                            keyInfoDataValues.add(modelKeyValueKDV);
-                        } else if (apiKeyInfoContentTagName.equals("RetrievalMethod")) {
-                            RetrievalMethodType retrievalMethodType = (RetrievalMethodType)apiKeyInfoContentJAXB.getValue();
-                            KeyDataValue retrievalMethodTypeKDV = mapRetrievalMethod(apiKeyInfoContentTagName, modelKeyInfo, retrievalMethodType);
-                            keyInfoDataValues.add(retrievalMethodTypeKDV);
-                        } else if (apiKeyInfoContentTagName.equals("PGPData")) {
-                            PGPDataType pgpDataType = (PGPDataType)apiKeyInfoContentJAXB.getValue();
-                            KeyDataValue pgpDataTypeKDV = mapPGPDataType(apiKeyInfoContentTagName, modelKeyInfo, pgpDataType);
-                            keyInfoDataValues.add(pgpDataTypeKDV);
-                        } else if (apiKeyInfoContentTagName.equals("SPKIData")) {
-                            SPKIDataType spkiDataType = (SPKIDataType)apiKeyInfoContentJAXB.getValue();
-                            KeyDataValue spkiDataTypeKDV = mapSPKIDataType(apiKeyInfoContentTagName, modelKeyInfo, spkiDataType);
-                            keyInfoDataValues.add(spkiDataTypeKDV);
-                        } else {
-                            throw new RuntimeException("Unrecognized tag: " + apiKeyInfoContentTagName + " type: " + apiKeyInfoContentJAXB.getValue().getClass().getCanonicalName());
+        }
+
+        /**
+         *
+         * @param apiBusinessEntity
+         * @param modelBusinessEntity
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessEntity(org.uddi.api_v3.BusinessEntity apiBusinessEntity,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+                throws DispositionReportFaultMessage {
+
+                modelBusinessEntity.setEntityKey(apiBusinessEntity.getBusinessKey());
+
+                mapBusinessNames(apiBusinessEntity.getName(), modelBusinessEntity.getBusinessNames(), modelBusinessEntity);
+                mapBusinessDescriptions(apiBusinessEntity.getDescription(), modelBusinessEntity.getBusinessDescrs(), modelBusinessEntity);
+                mapDiscoveryUrls(apiBusinessEntity.getDiscoveryURLs(), modelBusinessEntity.getDiscoveryUrls(), modelBusinessEntity);
+                mapContacts(apiBusinessEntity.getContacts(), modelBusinessEntity.getContacts(), modelBusinessEntity);
+                mapBusinessIdentifiers(apiBusinessEntity.getIdentifierBag(), modelBusinessEntity.getBusinessIdentifiers(), modelBusinessEntity);
+                if (apiBusinessEntity.getCategoryBag() != null) {
+                        modelBusinessEntity.setCategoryBag(new org.apache.juddi.model.BusinessCategoryBag(modelBusinessEntity));
+                        mapCategoryBag(apiBusinessEntity.getCategoryBag(), modelBusinessEntity.getCategoryBag());
+                }
+
+                mapBusinessServices(apiBusinessEntity.getBusinessServices(),
+                        modelBusinessEntity.getBusinessServices(),
+                        modelBusinessEntity.getServiceProjections(),
+                        modelBusinessEntity, node);
+
+                mapBusinessSignature(apiBusinessEntity.getSignature(), modelBusinessEntity, node);
+        }
+
+        private static List<Signature> mapApiSignaturesToModelSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures)
+                throws DispositionReportFaultMessage {
+                List<Signature> modelSignatures = new ArrayList<Signature>();
+                modelSignatures.clear();
+                for (org.w3._2000._09.xmldsig_.SignatureType signatureType : apiSignatures) {
+                        Signature modelSignature = new Signature();
+
+                        org.w3._2000._09.xmldsig_.SignedInfoType apiSignedInfo = signatureType.getSignedInfo();
+                        SignedInfo modelSignedInfo = new SignedInfo();
+                        modelSignature.setSignedInfo(modelSignedInfo);
+
+                        String canonicalizationAlgMethod = apiSignedInfo.getCanonicalizationMethod().getAlgorithm();
+                        CanonicalizationMethod modelCanonMethod = new CanonicalizationMethod();
+                        modelSignedInfo.setCanonicalizationMethod(modelCanonMethod);
+                        modelCanonMethod.setAlgorithm(canonicalizationAlgMethod);
+
+                        SignatureMethod modelSigMethod = new SignatureMethod();
+                        modelSignedInfo.setSignatureMethod(modelSigMethod);
+                        String sigMethod = apiSignedInfo.getSignatureMethod().getAlgorithm();
+                        modelSigMethod.setAlgorithm(sigMethod);
+
+                        List<org.w3._2000._09.xmldsig_.ReferenceType> apiReferenceList = apiSignedInfo.getReference();
+                        for (org.w3._2000._09.xmldsig_.ReferenceType apiReference : apiReferenceList) {
+                                Reference ref = mapReference(modelSignedInfo, apiReference);
+                                modelSignedInfo.getReference().add(ref);
                         }
-                    }
+
+                        modelSignedInfo.setCanonicalizationMethod(modelCanonMethod);
+
+                        org.w3._2000._09.xmldsig_.SignatureValueType apiSignatureValue = signatureType.getSignatureValue();
+                        SignatureValue modelSignatureValue = new SignatureValue();
+                        byte[] signatureValueBytes = apiSignatureValue.getValue();
+                        String signatureValueXmlID = apiSignatureValue.getId();
+                        modelSignatureValue.setValue(signatureValueBytes);
+                        modelSignatureValue.setXmlID(signatureValueXmlID);
+                        modelSignature.setSignatureValue(modelSignatureValue);
+
+                        org.w3._2000._09.xmldsig_.KeyInfoType apiKeyInfo = signatureType.getKeyInfo();
+                        String apiKeyInfoXmlID = apiKeyInfo.getId();
+                        KeyInfo modelKeyInfo = new KeyInfo();
+                        modelSignature.setKeyInfo(modelKeyInfo);
+                        modelKeyInfo.setXmlID(apiKeyInfoXmlID);
+
+                        List<Object> apiKeyInfoContentList = apiKeyInfo.getContent();
+                        List<KeyDataValue> keyInfoDataValues = modelKeyInfo.getKeyDataValue();
+                        for (Object apiKeyInfoContentObj : apiKeyInfoContentList) {
+                                if (apiKeyInfoContentObj instanceof JAXBElement) {
+                                        JAXBElement apiKeyInfoContentJAXB = (JAXBElement) apiKeyInfoContentObj;
+                                        String apiKeyInfoContentTagName = apiKeyInfoContentJAXB.getName().getLocalPart();
+                                        if (apiKeyInfoContentJAXB.getValue() instanceof X509DataType) {
+                                                KeyDataValue modelX509KeyData = mapX509DataType(apiKeyInfoContentJAXB, modelKeyInfo);
+                                                keyInfoDataValues.add(modelX509KeyData);
+                                        } else if (apiKeyInfoContentTagName.equals("KeyName")) {
+                                                KeyDataValue modelKeyNameKDV = mapKeyName(apiKeyInfoContentJAXB);
+                                                modelKeyNameKDV.setKeyInfo(modelKeyInfo);
+                                                keyInfoDataValues.add(modelKeyNameKDV);
+                                        } else if (apiKeyInfoContentTagName.equals("KeyValue")) {
+                                                KeyDataValue modelKeyValueKDV = mapKeyValue(apiKeyInfoContentJAXB, keyInfoDataValues);
+                                                modelKeyValueKDV.setKeyInfo(modelKeyInfo);
+                                                keyInfoDataValues.add(modelKeyValueKDV);
+                                        } else if (apiKeyInfoContentTagName.equals("MgmtData")) {
+                                                KeyDataValue modelKeyValueKDV = new KeyDataValue();
+                                                modelKeyValueKDV.setKeyDataName(apiKeyInfoContentTagName);
+                                                modelKeyValueKDV.setKeyDataType("String");
+                                                modelKeyValueKDV.setKeyDataValueString((String) apiKeyInfoContentJAXB.getValue());
+                                                modelKeyValueKDV.setKeyInfo(modelKeyInfo);
+                                                keyInfoDataValues.add(modelKeyValueKDV);
+                                        } else if (apiKeyInfoContentTagName.equals("RetrievalMethod")) {
+                                                RetrievalMethodType retrievalMethodType = (RetrievalMethodType) apiKeyInfoContentJAXB.getValue();
+                                                KeyDataValue retrievalMethodTypeKDV = mapRetrievalMethod(apiKeyInfoContentTagName, modelKeyInfo, retrievalMethodType);
+                                                keyInfoDataValues.add(retrievalMethodTypeKDV);
+                                        } else if (apiKeyInfoContentTagName.equals("PGPData")) {
+                                                PGPDataType pgpDataType = (PGPDataType) apiKeyInfoContentJAXB.getValue();
+                                                KeyDataValue pgpDataTypeKDV = mapPGPDataType(apiKeyInfoContentTagName, modelKeyInfo, pgpDataType);
+                                                keyInfoDataValues.add(pgpDataTypeKDV);
+                                        } else if (apiKeyInfoContentTagName.equals("SPKIData")) {
+                                                SPKIDataType spkiDataType = (SPKIDataType) apiKeyInfoContentJAXB.getValue();
+                                                KeyDataValue spkiDataTypeKDV = mapSPKIDataType(apiKeyInfoContentTagName, modelKeyInfo, spkiDataType);
+                                                keyInfoDataValues.add(spkiDataTypeKDV);
+                                        } else {
+                                                throw new RuntimeException("Unrecognized tag: " + apiKeyInfoContentTagName + " type: " + apiKeyInfoContentJAXB.getValue().getClass().getCanonicalName());
+                                        }
+                                }
+                        }
+
+                        modelSignatures.add(modelSignature);
                 }
-                
-                modelSignatures.add(modelSignature);
-            }
-            return modelSignatures;
-        }
-        
-        public static void mapBusinessServiceSignature (List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures, BusinessService modelBusinessService)
-				   throws DispositionReportFaultMessage {
-            List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
-            for (Signature modelSignature : modelSignatures) {
-                modelSignature.setBusinessService(modelBusinessService);
-            }
-            modelBusinessService.setSignatures(modelSignatures);
+                return modelSignatures;
         }
-        
+
+        /**
+         *
+         * @param apiSignatures
+         * @param modelBusinessService
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessServiceSignature(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures, BusinessService modelBusinessService)
+                throws DispositionReportFaultMessage {
+                List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
+                for (Signature modelSignature : modelSignatures) {
+                        modelSignature.setBusinessService(modelBusinessService);
+                }
+                modelBusinessService.setSignatures(modelSignatures);
+        }
+
+        /**
+         *
+         * @param apiSignatures
+         * @param modelTmodel
+         * @throws DispositionReportFaultMessage
+         */
         public static void mapTmodelSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures, Tmodel modelTmodel)
-				   throws DispositionReportFaultMessage {
-            List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
-            for (Signature modelSignature : modelSignatures) {
-                modelSignature.setTmodel(modelTmodel);
-            }
-            modelTmodel.setSignatures(modelSignatures);
+                throws DispositionReportFaultMessage {
+                List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
+                for (Signature modelSignature : modelSignatures) {
+                        modelSignature.setTmodel(modelTmodel);
+                }
+                modelTmodel.setSignatures(modelSignatures);
         }
-        
+
+        /**
+         *
+         * @param apiSignatures
+         * @param modelBindingTemplate
+         * @throws DispositionReportFaultMessage
+         */
         public static void mapBindingTemplateSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures, BindingTemplate modelBindingTemplate)
-				   throws DispositionReportFaultMessage {
-            List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
-            for (Signature modelSignature : modelSignatures) {
-                modelSignature.setBindingTemplate(modelBindingTemplate);
-            }
-            modelBindingTemplate.setSignatures(modelSignatures);
+                throws DispositionReportFaultMessage {
+                List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
+                for (Signature modelSignature : modelSignatures) {
+                        modelSignature.setBindingTemplate(modelBindingTemplate);
+                }
+                modelBindingTemplate.setSignatures(modelSignatures);
         }
-        
+
+        /**
+         *
+         * @param apiSignatures
+         * @param modelPublisher
+         * @throws DispositionReportFaultMessage
+         */
         public static void mapPublisherSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures, Publisher modelPublisher)
-				   throws DispositionReportFaultMessage {
-            List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
-            for (Signature modelSignature : modelSignatures) {
-                modelSignature.setPublisher(modelPublisher);
-            }
-            modelPublisher.setSignatures(modelSignatures);
-        }
-        
-        public static void mapBusinessSignature(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures, 
-										 org.apache.juddi.model.BusinessEntity modelBusinessEntity)
-				   throws DispositionReportFaultMessage {
-            List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
-            for (Signature modelSignature : modelSignatures) {
-                modelSignature.setBusinessEntity(modelBusinessEntity);
-            }
-            modelBusinessEntity.setSignatures(modelSignatures);
-        }	
-
-	public static void mapBusinessNames(List<org.uddi.api_v3.Name> apiNameList, 
-										List<org.apache.juddi.model.BusinessName> modelNameList,
-										org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-		modelNameList.clear();
-
-		for (org.uddi.api_v3.Name apiName : apiNameList) {
-			modelNameList.add(new org.apache.juddi.model.BusinessName(modelBusinessEntity, apiName.getLang(), apiName.getValue()));
-		}
-	}
-
-	public static void mapBusinessDescriptions(List<org.uddi.api_v3.Description> apiDescList, 
-			  								   List<org.apache.juddi.model.BusinessDescr> modelDescList,
-			  								   org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-		modelDescList.clear();
-		
-		for (org.uddi.api_v3.Description apiDesc : apiDescList) {
-			modelDescList.add(new org.apache.juddi.model.BusinessDescr(modelBusinessEntity, apiDesc.getLang(), apiDesc.getValue()));
-		}
-	}
-
-	public static void mapDiscoveryUrls(org.uddi.api_v3.DiscoveryURLs apiDiscUrls, 
-										List<org.apache.juddi.model.DiscoveryUrl> modelDiscUrlList,
-										org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-		modelDiscUrlList.clear();
-		
-		if (apiDiscUrls != null) {
-			List<org.uddi.api_v3.DiscoveryURL> apiDiscUrlList = apiDiscUrls.getDiscoveryURL();
-			for (org.uddi.api_v3.DiscoveryURL apiDiscUrl : apiDiscUrlList) {
-				modelDiscUrlList.add(new org.apache.juddi.model.DiscoveryUrl(modelBusinessEntity, apiDiscUrl.getUseType(), apiDiscUrl.getValue()));
-			}
-		}
-	}
-
-	public static void mapContacts(org.uddi.api_v3.Contacts apiContacts, 
-								   List<org.apache.juddi.model.Contact> modelContactList,
-								   org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-		modelContactList.clear();
-		
-		if (apiContacts != null) {
-			List<org.uddi.api_v3.Contact> apiContactList = apiContacts.getContact();
-			for (org.uddi.api_v3.Contact apiContact : apiContactList) {
-				org.apache.juddi.model.Contact modelContact = new org.apache.juddi.model.Contact(modelBusinessEntity);
-				modelContact.setUseType(apiContact.getUseType());
-				
-				mapPersonNames(apiContact.getPersonName(), modelContact.getPersonNames(), modelContact, modelBusinessEntity.getEntityKey());
-				mapContactDescriptions(apiContact.getDescription(), modelContact.getContactDescrs(), modelContact, modelBusinessEntity.getEntityKey());
-				mapContactEmails(apiContact.getEmail(), modelContact.getEmails(), modelContact, modelBusinessEntity.getEntityKey());
-				mapContactPhones(apiContact.getPhone(), modelContact.getPhones(), modelContact, modelBusinessEntity.getEntityKey());
-				mapContactAddresses(apiContact.getAddress(), modelContact.getAddresses(), modelContact, modelBusinessEntity.getEntityKey());
-				
-				modelContactList.add(modelContact);
-			}
-		}
-	}
-
-	public static void mapContactDescriptions(List<org.uddi.api_v3.Description> apiDescList, 
-											  List<org.apache.juddi.model.ContactDescr> modelDescList,
-											  org.apache.juddi.model.Contact modelContact,
-											  String businessKey) 
-				   throws DispositionReportFaultMessage {
-		modelDescList.clear();
-
-		for (org.uddi.api_v3.Description apiDesc : apiDescList) {
-			modelDescList.add(new org.apache.juddi.model.ContactDescr(modelContact, apiDesc.getLang(), apiDesc.getValue()));
-		}
-	}
-	
-	public static void mapPersonNames(List<org.uddi.api_v3.PersonName> apiPersonNameList, 
-			  						  List<org.apache.juddi.model.PersonName> modelPersonNameList,
-			  						  org.apache.juddi.model.Contact modelContact,
-			  						  String businessKey) 
-				throws DispositionReportFaultMessage {
-		modelPersonNameList.clear();
-		
-		for (org.uddi.api_v3.PersonName apiPersonName : apiPersonNameList) {
-		modelPersonNameList.add(new org.apache.juddi.model.PersonName(modelContact, apiPersonName.getLang(), apiPersonName.getValue()));
-		}
-	}
-	
-	public static void mapContactEmails(List<org.uddi.api_v3.Email> apiEmailList, 
-										List<org.apache.juddi.model.Email> modelEmailList,
-										org.apache.juddi.model.Contact modelContact,
-										String businessKey) 
-				   throws DispositionReportFaultMessage {
-		modelEmailList.clear();
-
-		for (org.uddi.api_v3.Email apiEmail : apiEmailList) {
-			modelEmailList.add(new org.apache.juddi.model.Email(modelContact, apiEmail.getUseType(), apiEmail.getValue()));
-		}
-	}
-	
-	public static void mapContactPhones(List<org.uddi.api_v3.Phone> apiPhoneList, 
-										List<org.apache.juddi.model.Phone> modelPhoneList,
-										org.apache.juddi.model.Contact modelContact,
-										String businessKey) 
-				   throws DispositionReportFaultMessage {
-		modelPhoneList.clear();
-
-		for (org.uddi.api_v3.Phone apiPhone : apiPhoneList) {
-			modelPhoneList.add(new org.apache.juddi.model.Phone(modelContact, apiPhone.getUseType(), apiPhone.getValue()));
-		}
-	}
-	
-	public static void mapContactAddresses(List<org.uddi.api_v3.Address> apiAddressList, 
-										   List<org.apache.juddi.model.Address> modelAddressList,
-										   org.apache.juddi.model.Contact modelContact,
-										   String businessKey) 
-				   throws DispositionReportFaultMessage {
-		modelAddressList.clear();
-
-		for (org.uddi.api_v3.Address apiAddress : apiAddressList) {
-			org.apache.juddi.model.Address modelAddress = new org.apache.juddi.model.Address(modelContact);
-			modelAddress.setSortCode(apiAddress.getSortCode());
-			modelAddress.setTmodelKey(apiAddress.getTModelKey());
-			modelAddress.setUseType(apiAddress.getUseType());
-			
-			mapAddressLines(apiAddress.getAddressLine(), modelAddress.getAddressLines(), modelAddress, businessKey, modelContact.getId());
-			
-			modelAddressList.add(modelAddress);
-		}
-	}
-
-	public static void mapAddressLines(List<org.uddi.api_v3.AddressLine> apiAddressLineList, 
-									   List<org.apache.juddi.model.AddressLine> modelAddressLineList,
-									   org.apache.juddi.model.Address modelAddress,
-									   String businessKey,
-									   Long contactId) 
-				   throws DispositionReportFaultMessage {
-		modelAddressLineList.clear();
-
-		for (org.uddi.api_v3.AddressLine apiAddressLine : apiAddressLineList) {
-			modelAddressLineList.add(new org.apache.juddi.model.AddressLine(modelAddress, apiAddressLine.getValue(), apiAddressLine.getKeyName(), apiAddressLine.getKeyValue()));
-		}
-	}
-
-	
-	public static void mapBusinessIdentifiers(org.uddi.api_v3.IdentifierBag apiIdentifierBag, 
-											  List<org.apache.juddi.model.BusinessIdentifier> modelIdentifierList,
-											  org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-		modelIdentifierList.clear();
-
-		if (apiIdentifierBag != null) {
-			List<org.uddi.api_v3.KeyedReference> apiKeyedRefList = apiIdentifierBag.getKeyedReference();
-			for (org.uddi.api_v3.KeyedReference apiKeyedRef : apiKeyedRefList) {
-				modelIdentifierList.add(new org.apache.juddi.model.BusinessIdentifier(modelBusinessEntity, apiKeyedRef.getTModelKey(), apiKeyedRef.getKeyName(), apiKeyedRef.getKeyValue()));
-			}
-		}
-	}
-	
-	public static void mapBusinessServices(org.uddi.api_v3.BusinessServices apiBusinessServices,
-										   List<org.apache.juddi.model.BusinessService> modelBusinessServiceList,
-										   List<org.apache.juddi.model.ServiceProjection> modelServiceProjectionList,
-										   org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-		modelBusinessServiceList.clear();
-
-		if (apiBusinessServices != null) {
-			List<org.uddi.api_v3.BusinessService> apiBusinessServiceList = apiBusinessServices.getBusinessService();
-			for (org.uddi.api_v3.BusinessService apiBusinessService : apiBusinessServiceList) {
-				org.apache.juddi.model.BusinessService modelBusinessService = new org.apache.juddi.model.BusinessService();
-
-				// If the parent businessEntity key and the service businessEntity key (if provided) do not match, it's a projection.
-				if (apiBusinessService.getBusinessKey() != null && apiBusinessService.getBusinessKey().length() > 0 && 
-				    !modelBusinessEntity.getEntityKey().equalsIgnoreCase(apiBusinessService.getBusinessKey())) {
-
-					modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
-					org.apache.juddi.model.ServiceProjection modelServiceProjection = new org.apache.juddi.model.ServiceProjection(modelBusinessEntity, modelBusinessService);
-					modelServiceProjectionList.add(modelServiceProjection);
-				}
-				else {
-					mapBusinessService(apiBusinessService, modelBusinessService, modelBusinessEntity);
-					modelBusinessServiceList.add(modelBusinessService);
-				}
-			}
-		}
-	}
-	
-	public static void mapBusinessService(org.uddi.api_v3.BusinessService apiBusinessService, 
-										  org.apache.juddi.model.BusinessService modelBusinessService,
-										  org.apache.juddi.model.BusinessEntity modelBusinessEntity) 
-				   throws DispositionReportFaultMessage {
-
-		modelBusinessService.setBusinessEntity(modelBusinessEntity);
-		modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
-		
-		mapServiceNames(apiBusinessService.getName(), modelBusinessService.getServiceNames(), modelBusinessService);
-		mapServiceDescriptions(apiBusinessService.getDescription(), modelBusinessService.getServiceDescrs(), modelBusinessService);
-		if (apiBusinessService.getCategoryBag()!=null) {
-			modelBusinessService.setCategoryBag(new org.apache.juddi.model.ServiceCategoryBag(modelBusinessService));
-			mapCategoryBag(apiBusinessService.getCategoryBag(), modelBusinessService.getCategoryBag());
-		}
-		
-		mapBindingTemplates(apiBusinessService.getBindingTemplates(), modelBusinessService.getBindingTemplates(), modelBusinessService);
+                throws DispositionReportFaultMessage {
+                List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
+                for (Signature modelSignature : modelSignatures) {
+                        modelSignature.setPublisher(modelPublisher);
+                }
+                modelPublisher.setSignatures(modelSignatures);
+        }
+
+        /**
+         *
+         * @param apiSignatures
+         * @param modelBusinessEntity
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessSignature(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+                throws DispositionReportFaultMessage {
+                List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
+                for (Signature modelSignature : modelSignatures) {
+                        modelSignature.setBusinessEntity(modelBusinessEntity);
+                }
+                modelBusinessEntity.setSignatures(modelSignatures);
+        }
+
+        /**
+         *
+         * @param apiNameList
+         * @param modelNameList
+         * @param modelBusinessEntity
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessNames(List<org.uddi.api_v3.Name> apiNameList,
+                List<org.apache.juddi.model.BusinessName> modelNameList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
+                modelNameList.clear();
+
+                for (org.uddi.api_v3.Name apiName : apiNameList) {
+                        modelNameList.add(new org.apache.juddi.model.BusinessName(modelBusinessEntity, apiName.getLang(), apiName.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiDescList
+         * @param modelDescList
+         * @param modelBusinessEntity
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessDescriptions(List<org.uddi.api_v3.Description> apiDescList,
+                List<org.apache.juddi.model.BusinessDescr> modelDescList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
+                modelDescList.clear();
+
+                for (org.uddi.api_v3.Description apiDesc : apiDescList) {
+                        modelDescList.add(new org.apache.juddi.model.BusinessDescr(modelBusinessEntity, apiDesc.getLang(), apiDesc.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiDiscUrls
+         * @param modelDiscUrlList
+         * @param modelBusinessEntity
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapDiscoveryUrls(org.uddi.api_v3.DiscoveryURLs apiDiscUrls,
+                List<org.apache.juddi.model.DiscoveryUrl> modelDiscUrlList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
+                modelDiscUrlList.clear();
+
+                if (apiDiscUrls != null) {
+                        List<org.uddi.api_v3.DiscoveryURL> apiDiscUrlList = apiDiscUrls.getDiscoveryURL();
+                        for (org.uddi.api_v3.DiscoveryURL apiDiscUrl : apiDiscUrlList) {
+                                modelDiscUrlList.add(new org.apache.juddi.model.DiscoveryUrl(modelBusinessEntity, apiDiscUrl.getUseType(), apiDiscUrl.getValue()));
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiContacts
+         * @param modelContactList
+         * @param modelBusinessEntity
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapContacts(org.uddi.api_v3.Contacts apiContacts,
+                List<org.apache.juddi.model.Contact> modelContactList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
+                modelContactList.clear();
+
+                if (apiContacts != null) {
+                        List<org.uddi.api_v3.Contact> apiContactList = apiContacts.getContact();
+                        for (org.uddi.api_v3.Contact apiContact : apiContactList) {
+                                org.apache.juddi.model.Contact modelContact = new org.apache.juddi.model.Contact(modelBusinessEntity);
+                                modelContact.setUseType(apiContact.getUseType());
+
+                                mapPersonNames(apiContact.getPersonName(), modelContact.getPersonNames(), modelContact, modelBusinessEntity.getEntityKey());
+                                mapContactDescriptions(apiContact.getDescription(), modelContact.getContactDescrs(), modelContact, modelBusinessEntity.getEntityKey());
+                                mapContactEmails(apiContact.getEmail(), modelContact.getEmails(), modelContact, modelBusinessEntity.getEntityKey());
+                                mapContactPhones(apiContact.getPhone(), modelContact.getPhones(), modelContact, modelBusinessEntity.getEntityKey());
+                                mapContactAddresses(apiContact.getAddress(), modelContact.getAddresses(), modelContact, modelBusinessEntity.getEntityKey());
+
+                                modelContactList.add(modelContact);
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiDescList
+         * @param modelDescList
+         * @param modelContact
+         * @param businessKey
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapContactDescriptions(List<org.uddi.api_v3.Description> apiDescList,
+                List<org.apache.juddi.model.ContactDescr> modelDescList,
+                org.apache.juddi.model.Contact modelContact,
+                String businessKey)
+                throws DispositionReportFaultMessage {
+                modelDescList.clear();
+
+                for (org.uddi.api_v3.Description apiDesc : apiDescList) {
+                        modelDescList.add(new org.apache.juddi.model.ContactDescr(modelContact, apiDesc.getLang(), apiDesc.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiPersonNameList
+         * @param modelPersonNameList
+         * @param modelContact
+         * @param businessKey
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapPersonNames(List<org.uddi.api_v3.PersonName> apiPersonNameList,
+                List<org.apache.juddi.model.PersonName> modelPersonNameList,
+                org.apache.juddi.model.Contact modelContact,
+                String businessKey)
+                throws DispositionReportFaultMessage {
+                modelPersonNameList.clear();
+
+                for (org.uddi.api_v3.PersonName apiPersonName : apiPersonNameList) {
+                        modelPersonNameList.add(new org.apache.juddi.model.PersonName(modelContact, apiPersonName.getLang(), apiPersonName.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiEmailList
+         * @param modelEmailList
+         * @param modelContact
+         * @param businessKey
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapContactEmails(List<org.uddi.api_v3.Email> apiEmailList,
+                List<org.apache.juddi.model.Email> modelEmailList,
+                org.apache.juddi.model.Contact modelContact,
+                String businessKey)
+                throws DispositionReportFaultMessage {
+                modelEmailList.clear();
+
+                for (org.uddi.api_v3.Email apiEmail : apiEmailList) {
+                        modelEmailList.add(new org.apache.juddi.model.Email(modelContact, apiEmail.getUseType(), apiEmail.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiPhoneList
+         * @param modelPhoneList
+         * @param modelContact
+         * @param businessKey
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapContactPhones(List<org.uddi.api_v3.Phone> apiPhoneList,
+                List<org.apache.juddi.model.Phone> modelPhoneList,
+                org.apache.juddi.model.Contact modelContact,
+                String businessKey)
+                throws DispositionReportFaultMessage {
+                modelPhoneList.clear();
+
+                for (org.uddi.api_v3.Phone apiPhone : apiPhoneList) {
+                        modelPhoneList.add(new org.apache.juddi.model.Phone(modelContact, apiPhone.getUseType(), apiPhone.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiAddressList
+         * @param modelAddressList
+         * @param modelContact
+         * @param businessKey
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapContactAddresses(List<org.uddi.api_v3.Address> apiAddressList,
+                List<org.apache.juddi.model.Address> modelAddressList,
+                org.apache.juddi.model.Contact modelContact,
+                String businessKey)
+                throws DispositionReportFaultMessage {
+                modelAddressList.clear();
+
+                for (org.uddi.api_v3.Address apiAddress : apiAddressList) {
+                        org.apache.juddi.model.Address modelAddress = new org.apache.juddi.model.Address(modelContact);
+                        modelAddress.setSortCode(apiAddress.getSortCode());
+                        modelAddress.setTmodelKey(apiAddress.getTModelKey());
+                        modelAddress.setUseType(apiAddress.getUseType());
+
+                        mapAddressLines(apiAddress.getAddressLine(), modelAddress.getAddressLines(), modelAddress, businessKey, modelContact.getId());
+
+                        modelAddressList.add(modelAddress);
+                }
+        }
+
+        /**
+         *
+         * @param apiAddressLineList
+         * @param modelAddressLineList
+         * @param modelAddress
+         * @param businessKey
+         * @param contactId
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapAddressLines(List<org.uddi.api_v3.AddressLine> apiAddressLineList,
+                List<org.apache.juddi.model.AddressLine> modelAddressLineList,
+                org.apache.juddi.model.Address modelAddress,
+                String businessKey,
+                Long contactId)
+                throws DispositionReportFaultMessage {
+                modelAddressLineList.clear();
+
+                for (org.uddi.api_v3.AddressLine apiAddressLine : apiAddressLineList) {
+                        modelAddressLineList.add(new org.apache.juddi.model.AddressLine(modelAddress, apiAddressLine.getValue(), apiAddressLine.getKeyName(), apiAddressLine.getKeyValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiIdentifierBag
+         * @param modelIdentifierList
+         * @param modelBusinessEntity
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessIdentifiers(org.uddi.api_v3.IdentifierBag apiIdentifierBag,
+                List<org.apache.juddi.model.BusinessIdentifier> modelIdentifierList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
+                modelIdentifierList.clear();
+
+                if (apiIdentifierBag != null) {
+                        List<org.uddi.api_v3.KeyedReference> apiKeyedRefList = apiIdentifierBag.getKeyedReference();
+                        for (org.uddi.api_v3.KeyedReference apiKeyedRef : apiKeyedRefList) {
+                                modelIdentifierList.add(new org.apache.juddi.model.BusinessIdentifier(modelBusinessEntity, apiKeyedRef.getTModelKey(), apiKeyedRef.getKeyName(), apiKeyedRef.getKeyValue()));
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiBusinessServices
+         * @param modelBusinessServiceList
+         * @param modelServiceProjectionList
+         * @param modelBusinessEntity
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessServices(org.uddi.api_v3.BusinessServices apiBusinessServices,
+                List<org.apache.juddi.model.BusinessService> modelBusinessServiceList,
+                List<org.apache.juddi.model.ServiceProjection> modelServiceProjectionList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+                throws DispositionReportFaultMessage {
+                modelBusinessServiceList.clear();
+                modelBusinessEntity.setNodeId(node);
+                if (apiBusinessServices != null) {
+                        List<org.uddi.api_v3.BusinessService> apiBusinessServiceList = apiBusinessServices.getBusinessService();
+                        for (org.uddi.api_v3.BusinessService apiBusinessService : apiBusinessServiceList) {
+                                org.apache.juddi.model.BusinessService modelBusinessService = new org.apache.juddi.model.BusinessService();
+                                modelBusinessService.setNodeId(node);
+
+                                // If the parent businessEntity key and the service businessEntity key (if provided) do not match, it's a projection.
+                                if (apiBusinessService.getBusinessKey() != null && apiBusinessService.getBusinessKey().length() > 0
+                                        && !modelBusinessEntity.getEntityKey().equalsIgnoreCase(apiBusinessService.getBusinessKey())) {
+
+                                        modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
+                                        org.apache.juddi.model.ServiceProjection modelServiceProjection = new org.apache.juddi.model.ServiceProjection(modelBusinessEntity, modelBusinessService);
+
+                                        modelServiceProjectionList.add(modelServiceProjection);
+                                } else {
+                                        mapBusinessService(apiBusinessService, modelBusinessService, modelBusinessEntity, node);
+                                        modelBusinessServiceList.add(modelBusinessService);
+                                }
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiBusinessService
+         * @param modelBusinessService
+         * @param modelBusinessEntity
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBusinessService(org.uddi.api_v3.BusinessService apiBusinessService,
+                org.apache.juddi.model.BusinessService modelBusinessService,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+                throws DispositionReportFaultMessage {
+
+                modelBusinessService.setNodeId(node);
+                modelBusinessEntity.setNodeId(node);
+                modelBusinessService.setBusinessEntity(modelBusinessEntity);
+                modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
+
+                mapServiceNames(apiBusinessService.getName(), modelBusinessService.getServiceNames(), modelBusinessService);
+                mapServiceDescriptions(apiBusinessService.getDescription(), modelBusinessService.getServiceDescrs(), modelBusinessService);
+                if (apiBusinessService.getCategoryBag() != null) {
+                        modelBusinessService.setCategoryBag(new org.apache.juddi.model.ServiceCategoryBag(modelBusinessService));
+                        mapCategoryBag(apiBusinessService.getCategoryBag(), modelBusinessService.getCategoryBag());
+                }
+
+                mapBindingTemplates(apiBusinessService.getBindingTemplates(), modelBusinessService.getBindingTemplates(), modelBusinessService, node);
                 mapBusinessServiceSignature(apiBusinessService.getSignature(), modelBusinessService);
-	}
-	
-	public static void mapServiceNames(List<org.uddi.api_v3.Name> apiNameList, 
-									   List<org.apache.juddi.model.ServiceName> modelNameList,
-									   org.apache.juddi.model.BusinessService modelBusinessService) 
-				   throws DispositionReportFaultMessage {
-		modelNameList.clear();
-
-		for (org.uddi.api_v3.Name apiName : apiNameList) {
-			modelNameList.add(new org.apache.juddi.model.ServiceName(modelBusinessService, apiName.getLang(), apiName.getValue()));
-		}
-	}
-	
-	public static void mapServiceDescriptions(List<org.uddi.api_v3.Description> apiDescList, 
-											  List<org.apache.juddi.model.ServiceDescr> modelDescList,
-											  org.apache.juddi.model.BusinessService modelBusinessService) 
-				   throws DispositionReportFaultMessage {
-		modelDescList.clear();
-
-		for (org.uddi.api_v3.Description apiDesc : apiDescList) {
-			modelDescList.add(new org.apache.juddi.model.ServiceDescr(modelBusinessService, apiDesc.getLang(), apiDesc.getValue()));
-		}
-	}
-
-	public static void mapBindingTemplates(org.uddi.api_v3.BindingTemplates apiBindingTemplates, 
-										   List<org.apache.juddi.model.BindingTemplate> modelBindingTemplateList,
-										   org.apache.juddi.model.BusinessService modelBusinessService) 
-				   throws DispositionReportFaultMessage {
-		modelBindingTemplateList.clear();
-
-		if (apiBindingTemplates != null) {
-			List<org.uddi.api_v3.BindingTemplate> apiBindingTemplateList = apiBindingTemplates.getBindingTemplate();
-			for (org.uddi.api_v3.BindingTemplate apiBindingTemplate : apiBindingTemplateList) {
-				org.apache.juddi.model.BindingTemplate modelBindingTemplate = new org.apache.juddi.model.BindingTemplate();
-
-				mapBindingTemplate(apiBindingTemplate, modelBindingTemplate, modelBusinessService);
-
-				modelBindingTemplateList.add(modelBindingTemplate);
-			}
-		}
-	}
-	
-	public static void mapBindingTemplate(org.uddi.api_v3.BindingTemplate apiBindingTemplate, 
-										  org.apache.juddi.model.BindingTemplate modelBindingTemplate,
-										  org.apache.juddi.model.BusinessService modelBusinessService) 
-				   throws DispositionReportFaultMessage {
-
-		modelBindingTemplate.setBusinessService(modelBusinessService);
-		modelBindingTemplate.setEntityKey(apiBindingTemplate.getBindingKey());
-       if (apiBindingTemplate.getAccessPoint()!=null)
-        {
-        	modelBindingTemplate.setAccessPointType(apiBindingTemplate.getAccessPoint().getUseType());
-        	modelBindingTemplate.setAccessPointUrl(apiBindingTemplate.getAccessPoint().getValue());
-        }
-		if (apiBindingTemplate.getHostingRedirector() != null) {
-			modelBindingTemplate.setHostingRedirector(apiBindingTemplate.getHostingRedirector().getBindingKey());
-		}
-		
-		mapBindingDescriptions(apiBindingTemplate.getDescription(), modelBindingTemplate.getBindingDescrs(), modelBindingTemplate);
-		if (apiBindingTemplate.getCategoryBag()!=null) {
-			modelBindingTemplate.setCategoryBag(new org.apache.juddi.model.BindingCategoryBag(modelBindingTemplate));
-			mapCategoryBag(apiBindingTemplate.getCategoryBag(), modelBindingTemplate.getCategoryBag());
-		}
-		mapTModelInstanceDetails(apiBindingTemplate.getTModelInstanceDetails(), modelBindingTemplate.getTmodelInstanceInfos(), modelBindingTemplate);
+        }
+
+        /**
+         *
+         * @param apiNameList
+         * @param modelNameList
+         * @param modelBusinessService
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapServiceNames(List<org.uddi.api_v3.Name> apiNameList,
+                List<org.apache.juddi.model.ServiceName> modelNameList,
+                org.apache.juddi.model.BusinessService modelBusinessService)
+                throws DispositionReportFaultMessage {
+                modelNameList.clear();
+
+                for (org.uddi.api_v3.Name apiName : apiNameList) {
+                        modelNameList.add(new org.apache.juddi.model.ServiceName(modelBusinessService, apiName.getLang(), apiName.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiDescList
+         * @param modelDescList
+         * @param modelBusinessService
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapServiceDescriptions(List<org.uddi.api_v3.Description> apiDescList,
+                List<org.apache.juddi.model.ServiceDescr> modelDescList,
+                org.apache.juddi.model.BusinessService modelBusinessService)
+                throws DispositionReportFaultMessage {
+                modelDescList.clear();
+
+                for (org.uddi.api_v3.Description apiDesc : apiDescList) {
+                        modelDescList.add(new org.apache.juddi.model.ServiceDescr(modelBusinessService, apiDesc.getLang(), apiDesc.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiBindingTemplates
+         * @param modelBindingTemplateList
+         * @param modelBusinessService
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBindingTemplates(org.uddi.api_v3.BindingTemplates apiBindingTemplates,
+                List<org.apache.juddi.model.BindingTemplate> modelBindingTemplateList,
+                org.apache.juddi.model.BusinessService modelBusinessService, String node)
+                throws DispositionReportFaultMessage {
+                modelBindingTemplateList.clear();
+
+                if (apiBindingTemplates != null) {
+                        List<org.uddi.api_v3.BindingTemplate> apiBindingTemplateList = apiBindingTemplates.getBindingTemplate();
+                        for (org.uddi.api_v3.BindingTemplate apiBindingTemplate : apiBindingTemplateList) {
+                                org.apache.juddi.model.BindingTemplate modelBindingTemplate = new org.apache.juddi.model.BindingTemplate();
+
+                                mapBindingTemplate(apiBindingTemplate, modelBindingTemplate, modelBusinessService, node);
+
+                                modelBindingTemplateList.add(modelBindingTemplate);
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiBindingTemplate
+         * @param modelBindingTemplate
+         * @param modelBusinessService
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBindingTemplate(org.uddi.api_v3.BindingTemplate apiBindingTemplate,
+                org.apache.juddi.model.BindingTemplate modelBindingTemplate,
+                org.apache.juddi.model.BusinessService modelBusinessService, String node)
+                throws DispositionReportFaultMessage {
+
+                modelBindingTemplate.setBusinessService(modelBusinessService);
+                modelBindingTemplate.setEntityKey(apiBindingTemplate.getBindingKey());
+                if (apiBindingTemplate.getAccessPoint() != null) {
+                        modelBindingTemplate.setAccessPointType(apiBindingTemplate.getAccessPoint().getUseType());
+                        modelBindingTemplate.setAccessPointUrl(apiBindingTemplate.getAccessPoint().getValue());
+                }
+                if (apiBindingTemplate.getHostingRedirector() != null) {
+                        modelBindingTemplate.setHostingRedirector(apiBindingTemplate.getHostingRedirector().getBindingKey());
+                }
+
+                mapBindingDescriptions(apiBindingTemplate.getDescription(), modelBindingTemplate.getBindingDescrs(), modelBindingTemplate);
+                if (apiBindingTemplate.getCategoryBag() != null) {
+                        modelBindingTemplate.setCategoryBag(new org.apache.juddi.model.BindingCategoryBag(modelBindingTemplate));
+                        mapCategoryBag(apiBindingTemplate.getCategoryBag(), modelBindingTemplate.getCategoryBag());
+                }
+                mapTModelInstanceDetails(apiBindingTemplate.getTModelInstanceDetails(), modelBindingTemplate.getTmodelInstanceInfos(), modelBindingTemplate);
                 mapBindingTemplateSignatures(apiBindingTemplate.getSignature(), modelBindingTemplate);
-	}
-	
-	public static void mapBindingDescriptions(List<org.uddi.api_v3.Description> apiDescList, 
-											  List<org.apache.juddi.model.BindingDescr> modelDescList,
-											  org.apache.juddi.model.BindingTemplate modelBindingTemplate) 
-				   throws DispositionReportFaultMessage {
-		modelDescList.clear();
-		for (org.uddi.api_v3.Description apiDesc : apiDescList) {
-			modelDescList.add(new org.apache.juddi.model.BindingDescr(modelBindingTemplate, apiDesc.getLang(), apiDesc.getValue()));
-		}
-	}
-
-	public static void mapCategoryBag(org.uddi.api_v3.CategoryBag apiCategoryBag,
-									  org.apache.juddi.model.CategoryBag modelCategoryBag)
-				   throws DispositionReportFaultMessage {
-
-		if (apiCategoryBag != null) {
-			List<org.uddi.api_v3.KeyedReference> krList = apiCategoryBag.getKeyedReference();
-			for (Object elem : krList) {
-				if (elem instanceof org.uddi.api_v3.KeyedReference) {
-					List<org.apache.juddi.model.KeyedReference> modelKeyedReferences=modelCategoryBag.getKeyedReferences();
-					//modelKeyedReferences.clear();
-					org.uddi.api_v3.KeyedReference apiKeyedReference = (org.uddi.api_v3.KeyedReference)elem;
-					modelKeyedReferences.add(new org.apache.juddi.model.KeyedReference(modelCategoryBag, 
-						apiKeyedReference.getTModelKey(), apiKeyedReference.getKeyName(), apiKeyedReference.getKeyValue()));
-				}
-			}
-			List<org.uddi.api_v3.KeyedReferenceGroup> krgList = apiCategoryBag.getKeyedReferenceGroup(); 
-			for (org.uddi.api_v3.KeyedReferenceGroup elem : krgList) {
-				if (elem instanceof org.uddi.api_v3.KeyedReferenceGroup) {
-					org.uddi.api_v3.KeyedReferenceGroup apiKeyedReferenceGroup = (org.uddi.api_v3.KeyedReferenceGroup) elem;
-
-					org.apache.juddi.model.KeyedReferenceGroup modelKeyedReferenceGroup = new org.apache.juddi.model.KeyedReferenceGroup();
-					List<org.apache.juddi.model.KeyedReferenceGroup> modelKeyedReferenceGroups=modelCategoryBag.getKeyedReferenceGroups();
-					//modelKeyedReferenceGroups.clear();
-					
-					mapKeyedReferenceGroup(apiKeyedReferenceGroup, modelKeyedReferenceGroup, modelCategoryBag);
-					
-					modelKeyedReferenceGroups.add(modelKeyedReferenceGroup);
-				}
-			}
-		}
-	}
-
-	public static void mapKeyedReferenceGroup(org.uddi.api_v3.KeyedReferenceGroup apiKeyedReferenceGroup,
-											  org.apache.juddi.model.KeyedReferenceGroup modelKeyedReferenceGroup,
-											  org.apache.juddi.model.CategoryBag modelCategoryBag)
-				   throws DispositionReportFaultMessage {
-		if (apiKeyedReferenceGroup != null) {
-			modelKeyedReferenceGroup.setCategoryBag(modelCategoryBag);
-			modelKeyedReferenceGroup.setTmodelKey(apiKeyedReferenceGroup.getTModelKey());
-			
-			if (apiKeyedReferenceGroup.getKeyedReference() != null) {
-				List<org.apache.juddi.model.KeyedReference> modelKeyedReferences = modelKeyedReferenceGroup.getKeyedReferences();
-				for (org.uddi.api_v3.KeyedReference apiKeyedReference : apiKeyedReferenceGroup.getKeyedReference()) {
-					modelKeyedReferences.add(new org.apache.juddi.model.KeyedReference(modelKeyedReferenceGroup, 
-						apiKeyedReference.getTModelKey(), apiKeyedReference.getKeyName(), apiKeyedReference.getKeyValue()));
-				}
-			}
-			
-		}
-		
-	}
-	
-	public static void mapTModelInstanceDetails(org.uddi.api_v3.TModelInstanceDetails apiTModelInstDetails, 
-												List<org.apache.juddi.model.TmodelInstanceInfo> modelTModelInstInfoList,
-												org.apache.juddi.model.BindingTemplate modelBindingTemplate) 
-				   throws DispositionReportFaultMessage {
-		modelTModelInstInfoList.clear();
-
-		if (apiTModelInstDetails != null) {
-			List<org.uddi.api_v3.TModelInstanceInfo> apiTModelInstInfoList = apiTModelInstDetails.getTModelInstanceInfo();
-			for (org.uddi.api_v3.TModelInstanceInfo apiTModelInstInfo : apiTModelInstInfoList) {
-				org.apache.juddi.model.TmodelInstanceInfo modelTModelInstInfo = new org.apache.juddi.model.TmodelInstanceInfo(modelBindingTemplate, apiTModelInstInfo.getTModelKey());
-				
-				mapTModelInstanceInfoDescriptions(apiTModelInstInfo.getDescription(), modelTModelInstInfo.getTmodelInstanceInfoDescrs(), modelTModelInstInfo);
-				mapInstanceDetails(apiTModelInstInfo.getInstanceDetails(), modelTModelInstInfo);
-				
-				modelTModelInstInfoList.add(modelTModelInstInfo);
-			}
-		}
-	}
-
-	public static void mapTModelInstanceInfoDescriptions(List<org.uddi.api_v3.Description> apiDescList, 
-														 List<org.apache.juddi.model.TmodelInstanceInfoDescr> modelDescList,
-														 org.apache.juddi.model.TmodelInstanceInfo modelTModelInstInfo) 
-				   throws DispositionReportFaultMessage {
-		modelDescList.clear();
-
-		for (org.uddi.api_v3.Description apiDesc : apiDescList) {
-			modelDescList.add(new org.apache.juddi.model.TmodelInstanceInfoDescr(modelTModelInstInfo, apiDesc.getLang(), apiDesc.getValue()));
-		}
-	}
-
-	public static void mapInstanceDetails(org.uddi.api_v3.InstanceDetails apiInstanceDetails, 
-										  org.apache.juddi.model.TmodelInstanceInfo modelTmodelInstInfo) 
-				   throws DispositionReportFaultMessage {
-		modelTmodelInstInfo.getInstanceDetailsDescrs().clear();
-
-		if (apiInstanceDetails != null) {
-			List<org.uddi.api_v3.Description> descriptions = apiInstanceDetails.getDescription();
-			List<org.uddi.api_v3.OverviewDoc> overviewdocs = apiInstanceDetails.getOverviewDoc();
-			for (org.uddi.api_v3.Description apiDesc : descriptions) {
-				org.apache.juddi.model.InstanceDetailsDescr modelInstanceDetailsDescr = 
-						new org.apache.juddi.model.InstanceDetailsDescr(
-							modelTmodelInstInfo, apiDesc.getLang(), apiDesc.getValue());
-				modelTmodelInstInfo.getInstanceDetailsDescrs().add(modelInstanceDetailsDescr);
-			}
-			for (org.uddi.api_v3.OverviewDoc apiOverviewDoc : overviewdocs) {
-				org.apache.juddi.model.OverviewDoc modelOverviewDoc = new org.apache.juddi.model.OverviewDoc(modelTmodelInstInfo);
-				mapOverviewDoc(apiOverviewDoc, modelOverviewDoc);
-				modelTmodelInstInfo.getOverviewDocs().add(modelOverviewDoc);
-			}
-			modelTmodelInstInfo.setInstanceParms((String)apiInstanceDetails.getInstanceParms());
-		}
-	}
-	
-	public static void mapOverviewDoc(org.uddi.api_v3.OverviewDoc apiOverviewDoc, 
-									  org.apache.juddi.model.OverviewDoc modelOverviewDoc)
-				throws DispositionReportFaultMessage {
-		if (apiOverviewDoc != null) {
-			
-			List<Description> descContent = apiOverviewDoc.getDescription();
-			for (Object elem : descContent) {
-				org.uddi.api_v3.Description description = (org.uddi.api_v3.Description) elem;
-				if (description != null) {
-					org.apache.juddi.model.OverviewDocDescr modelOverviewDocDescr 
-						= new org.apache.juddi.model.OverviewDocDescr(
-							modelOverviewDoc, description.getLang(), description.getValue());
-					modelOverviewDoc.getOverviewDocDescrs().add(modelOverviewDocDescr);
-				}				
-			}
-
-			org.uddi.api_v3.OverviewURL elem = apiOverviewDoc.getOverviewURL();
-			if (elem instanceof org.uddi.api_v3.OverviewURL) {
-				org.uddi.api_v3.OverviewURL overviewURL = elem;
-				modelOverviewDoc.setOverviewUrl(overviewURL.getValue());
-				modelOverviewDoc.setOverviewUrlUseType(overviewURL.getUseType());
-			}
-
-		}
-	}
-	
-	public static void mapTModel(org.uddi.api_v3.TModel apiTModel, 
-								 org.apache.juddi.model.Tmodel modelTModel) 
-				   throws DispositionReportFaultMessage {
-
-		modelTModel.setEntityKey(apiTModel.getTModelKey());
-		modelTModel.setName(apiTModel.getName().getValue());
-		modelTModel.setLangCode(apiTModel.getName().getLang());
-		modelTModel.setDeleted(apiTModel.isDeleted());
-
-		mapTModelDescriptions(apiTModel.getDescription(), modelTModel.getTmodelDescrs(), modelTModel);
-		mapTModelIdentifiers(apiTModel.getIdentifierBag(), modelTModel.getTmodelIdentifiers(), modelTModel);
-		if (apiTModel.getCategoryBag()!=null) {
-			modelTModel.setCategoryBag(new org.apache.juddi.model.TmodelCategoryBag(modelTModel));
-			mapCategoryBag(apiTModel.getCategoryBag(), modelTModel.getCategoryBag());
-		}
-		mapTModelOverviewDocs(apiTModel.getOverviewDoc(), modelTModel.getOverviewDocs(), modelTModel);
+        }
+
+        /**
+         *
+         * @param apiDescList
+         * @param modelDescList
+         * @param modelBindingTemplate
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapBindingDescriptions(List<org.uddi.api_v3.Description> apiDescList,
+                List<org.apache.juddi.model.BindingDescr> modelDescList,
+                org.apache.juddi.model.BindingTemplate modelBindingTemplate)
+                throws DispositionReportFaultMessage {
+                modelDescList.clear();
+                for (org.uddi.api_v3.Description apiDesc : apiDescList) {
+                        modelDescList.add(new org.apache.juddi.model.BindingDescr(modelBindingTemplate, apiDesc.getLang(), apiDesc.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiCategoryBag
+         * @param modelCategoryBag
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapCategoryBag(org.uddi.api_v3.CategoryBag apiCategoryBag,
+                org.apache.juddi.model.CategoryBag modelCategoryBag)
+                throws DispositionReportFaultMessage {
+
+                if (apiCategoryBag != null) {
+                        List<org.uddi.api_v3.KeyedReference> krList = apiCategoryBag.getKeyedReference();
+                        for (Object elem : krList) {
+                                if (elem instanceof org.uddi.api_v3.KeyedReference) {
+                                        List<org.apache.juddi.model.KeyedReference> modelKeyedReferences = modelCategoryBag.getKeyedReferences();
+                                        //modelKeyedReferences.clear();
+                                        org.uddi.api_v3.KeyedReference apiKeyedReference = (org.uddi.api_v3.KeyedReference) elem;
+                                        modelKeyedReferences.add(new org.apache.juddi.model.KeyedReference(modelCategoryBag,
+                                                apiKeyedReference.getTModelKey(), apiKeyedReference.getKeyName(), apiKeyedReference.getKeyValue()));
+                                }
+                        }
+                        List<org.uddi.api_v3.KeyedReferenceGroup> krgList = apiCategoryBag.getKeyedReferenceGroup();
+                        for (org.uddi.api_v3.KeyedReferenceGroup elem : krgList) {
+                                if (elem instanceof org.uddi.api_v3.KeyedReferenceGroup) {
+                                        org.uddi.api_v3.KeyedReferenceGroup apiKeyedReferenceGroup = (org.uddi.api_v3.KeyedReferenceGroup) elem;
+
+                                        org.apache.juddi.model.KeyedReferenceGroup modelKeyedReferenceGroup = new org.apache.juddi.model.KeyedReferenceGroup();
+                                        List<org.apache.juddi.model.KeyedReferenceGroup> modelKeyedReferenceGroups = modelCategoryBag.getKeyedReferenceGroups();
+                                        //modelKeyedReferenceGroups.clear();
+
+                                        mapKeyedReferenceGroup(apiKeyedReferenceGroup, modelKeyedReferenceGroup, modelCategoryBag);
+
+                                        modelKeyedReferenceGroups.add(modelKeyedReferenceGroup);
+                                }
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiKeyedReferenceGroup
+         * @param modelKeyedReferenceGroup
+         * @param modelCategoryBag
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapKeyedReferenceGroup(org.uddi.api_v3.KeyedReferenceGroup apiKeyedReferenceGroup,
+                org.apache.juddi.model.KeyedReferenceGroup modelKeyedReferenceGroup,
+                org.apache.juddi.model.CategoryBag modelCategoryBag)
+                throws DispositionReportFaultMessage {
+                if (apiKeyedReferenceGroup != null) {
+                        modelKeyedReferenceGroup.setCategoryBag(modelCategoryBag);
+                        modelKeyedReferenceGroup.setTmodelKey(apiKeyedReferenceGroup.getTModelKey());
+
+                        if (apiKeyedReferenceGroup.getKeyedReference() != null) {
+                                List<org.apache.juddi.model.KeyedReference> modelKeyedReferences = modelKeyedReferenceGroup.getKeyedReferences();
+                                for (org.uddi.api_v3.KeyedReference apiKeyedReference : apiKeyedReferenceGroup.getKeyedReference()) {
+                                        modelKeyedReferences.add(new org.apache.juddi.model.KeyedReference(modelKeyedReferenceGroup,
+                                                apiKeyedReference.getTModelKey(), apiKeyedReference.getKeyName(), apiKeyedReference.getKeyValue()));
+                                }
+                        }
+
+                }
+
+        }
+
+        /**
+         *
+         * @param apiTModelInstDetails
+         * @param modelTModelInstInfoList
+         * @param modelBindingTemplate
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapTModelInstanceDetails(org.uddi.api_v3.TModelInstanceDetails apiTModelInstDetails,
+                List<org.apache.juddi.model.TmodelInstanceInfo> modelTModelInstInfoList,
+                org.apache.juddi.model.BindingTemplate modelBindingTemplate)
+                throws DispositionReportFaultMessage {
+                modelTModelInstInfoList.clear();
+
+                if (apiTModelInstDetails != null) {
+                        List<org.uddi.api_v3.TModelInstanceInfo> apiTModelInstInfoList = apiTModelInstDetails.getTModelInstanceInfo();
+                        for (org.uddi.api_v3.TModelInstanceInfo apiTModelInstInfo : apiTModelInstInfoList) {
+                                org.apache.juddi.model.TmodelInstanceInfo modelTModelInstInfo = new org.apache.juddi.model.TmodelInstanceInfo(modelBindingTemplate, apiTModelInstInfo.getTModelKey());
+
+                                mapTModelInstanceInfoDescriptions(apiTModelInstInfo.getDescription(), modelTModelInstInfo.getTmodelInstanceInfoDescrs(), modelTModelInstInfo);
+                                mapInstanceDetails(apiTModelInstInfo.getInstanceDetails(), modelTModelInstInfo);
+
+                                modelTModelInstInfoList.add(modelTModelInstInfo);
+                        }
+                }
+        }
+
+        /**
+         *
+         * @param apiDescList
+         * @param modelDescList
+         * @param modelTModelInstInfo
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapTModelInstanceInfoDescriptions(List<org.uddi.api_v3.Description> apiDescList,
+                List<org.apache.juddi.model.TmodelInstanceInfoDescr> modelDescList,
+                org.apache.juddi.model.TmodelInstanceInfo modelTModelInstInfo)
+                throws DispositionReportFaultMessage {
+                modelDescList.clear();
+
+                for (org.uddi.api_v3.Description apiDesc : apiDescList) {
+                        modelDescList.add(new org.apache.juddi.model.TmodelInstanceInfoDescr(modelTModelInstInfo, apiDesc.getLang(), apiDesc.getValue()));
+                }
+        }
+
+        /**
+         *
+         * @param apiInstanceDetails
+         * @param modelTmodelInstInfo
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapInstanceDetails(org.uddi.api_v3.InstanceDetails apiInstanceDetails,
+                org.apache.juddi.model.TmodelInstanceInfo modelTmodelInstInfo)
+                throws DispositionReportFaultMessage {
+                modelTmodelInstInfo.getInstanceDetailsDescrs().clear();
+
+                if (apiInstanceDetails != null) {
+                        List<org.uddi.api_v3.Description> descriptions = apiInstanceDetails.getDescription();
+                        List<org.uddi.api_v3.OverviewDoc> overviewdocs = apiInstanceDetails.getOverviewDoc();
+                        for (org.uddi.api_v3.Description apiDesc : descriptions) {
+                                org.apache.juddi.model.InstanceDetailsDescr modelInstanceDetailsDescr =
+                                        new org.apache.juddi.model.InstanceDetailsDescr(
+                                        modelTmodelInstInfo, apiDesc.getLang(), apiDesc.getValue());
+                                modelTmodelInstInfo.getInstanceDetailsDescrs().add(modelInstanceDetailsDescr);
+                        }
+                        for (org.uddi.api_v3.OverviewDoc apiOverviewDoc : overviewdocs) {
+                                org.apache.juddi.model.OverviewDoc modelOverviewDoc = new org.apache.juddi.model.OverviewDoc(modelTmodelInstInfo);
+                                mapOverviewDoc(apiOverviewDoc, modelOverviewDoc);
+                                modelTmodelInstInfo.getOverviewDocs().add(modelOverviewDoc);
+                        }
+                        modelTmodelInstInfo.setInstanceParms((String) apiInstanceDetails.getInstanceParms());
+                }
+        }
+
+        /**
+         *
+         * @param apiOverviewDoc
+         * @param modelOverviewDoc
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapOverviewDoc(org.uddi.api_v3.OverviewDoc apiOverviewDoc,
+                org.apache.juddi.model.OverviewDoc modelOverviewDoc)
+                throws DispositionReportFaultMessage {
+                if (apiOverviewDoc != null) {
+
+                        List<Description> descContent = apiOverviewDoc.getDescription();
+                        for (Object elem : descContent) {
+                                org.uddi.api_v3.Description description = (org.uddi.api_v3.Description) elem;
+                                if (description != null) {
+                                        org.apache.juddi.model.OverviewDocDescr modelOverviewDocDescr = new org.apache.juddi.model.OverviewDocDescr(
+                                                modelOverviewDoc, description.getLang(), description.getValue());
+                                        modelOverviewDoc.getOverviewDocDescrs().add(modelOverviewDocDescr);
+                                }
+                        }
+
+                        org.uddi.api_v3.OverviewURL elem = apiOverviewDoc.getOverviewURL();
+                        if (elem instanceof org.uddi.api_v3.OverviewURL) {
+                                org.uddi.api_v3.OverviewURL overviewURL = elem;
+                                modelOverviewDoc.setOverviewUrl(overviewURL.getValue());
+                                modelOverviewDoc.setOverviewUrlUseType(overviewURL.getUseType());
+                        }
+
+                }
+        }
+
+        /**
+         *
+         * @param apiTModel
+         * @param modelTModel
+         * @param node
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapTModel(org.uddi.api_v3.TModel apiTModel,
+                org.apache.juddi.model.Tmodel modelTModel, String node)
+                throws DispositionReportFaultMessage {
+
+                modelTModel.setEntityKey(apiTModel.getTModelKey());
+                modelTModel.setName(apiTModel.getName().getValue());
+                modelTModel.setLangCode(apiTModel.getName().getLang());
+                modelTModel.setDeleted(apiTModel.isDeleted());
+                modelTModel.setNodeId(node);
+
+                mapTModelDescriptions(apiTModel.getDescription(), modelTModel.getTmodelDescrs(), modelTModel);
+                mapTModelIdentifiers(apiTModel.getIdentifierBag(), modelTModel.getTmodelIdentifiers(), modelTModel);
+                if (apiTModel.getCategoryBag() != null) {
+                        modelTModel.setCategoryBag(new org.apache.juddi.model.TmodelCategoryBag(modelTModel));
+                        mapCategoryBag(apiTModel.getCategoryBag(), modelTModel.getCategoryBag());
+                }
+                mapTModelOverviewDocs(apiTModel.getOverviewDoc(), modelTModel.getOverviewDocs(), modelTModel);
                 mapTmodelSignatures(apiTModel.getSignature(), modelTModel);
-	}
+        }
 
-	public static void mapTModelDescriptions(List<org.uddi.api_v3.Description> apiDescList, 
-											 List<org.apache.juddi.model.TmodelDescr> modelDescList,
-											 org.apache.juddi.model.Tmodel modelTModel) 
-				   throws DispositionReportFaultMessage {
-		modelDescList.clear();
-
-		for (org.uddi.api_v3.Description apiDesc : apiDescList) {
-			modelDescList.add(new org.apache.juddi.model.TmodelDescr(modelTModel, apiDesc.getLang(), apiDesc.getValue()));
-		}
-	}
-	
-	public static void mapTModelIdentifiers(org.uddi.api_v3.IdentifierBag apiIdentifierBag, 
-											List<org.apache.juddi.model.TmodelIdentifier> modelIdentifierList,
-											org.apache.juddi.model.Tmodel modelTModel) 
-				   throws DispositionReportFaultMessage {
-		modelIdentifierList.clear();
-
-		if (apiIdentifierBag != null) {
-			List<org.uddi.api_v3.KeyedReference> apiKeyedRefList = apiIdentifierBag.getKeyedReference();
-			for (org.uddi.api_v3.KeyedReference apiKeyedRef : apiKeyedRefList) {
-				modelIdentifierList.add(new org.apache.juddi.model.TmodelIdentifier(modelTModel, apiKeyedRef.getTModelKey(), apiKeyedRef.getKeyName(), apiKeyedRef.getKeyValue()));
-			}
-		}
-	}
-	
-	public static void mapTModelOverviewDocs(List<org.uddi.api_v3.OverviewDoc> apiOverviewDocList, 
-			 List<org.apache.juddi.model.OverviewDoc> modelOverviewDocList,
-			 org.apache.juddi.model.Tmodel modelTmodel)
-		throws DispositionReportFaultMessage {
-		modelOverviewDocList.clear();
-		
-		for (org.uddi.api_v3.OverviewDoc apiOverviewDoc : apiOverviewDocList) {
-			org.apache.juddi.model.OverviewDoc modelOverviewDoc = new org.apache.juddi.model.OverviewDoc(modelTmodel);
-			mapOverviewDoc(apiOverviewDoc, modelOverviewDoc);
-			modelTmodel.getOverviewDocs().add(modelOverviewDoc);
-		}
-	}
-	
-	public static void mapPublisherAssertion(org.uddi.api_v3.PublisherAssertion apiPubAssertion, 
-											 org.apache.juddi.model.PublisherAssertion modelPubAssertion) 
-				   throws DispositionReportFaultMessage {
-
-		modelPubAssertion.setId(new org.apache.juddi.model.PublisherAssertionId(apiPubAssertion.getFromKey(), apiPubAssertion.getToKey()));
-
-		org.apache.juddi.model.BusinessEntity beFrom = new org.apache.juddi.model.BusinessEntity();
-		beFrom.setEntityKey(apiPubAssertion.getFromKey());
-		modelPubAssertion.setBusinessEntityByFromKey(beFrom);
-		
-		org.apache.juddi.model.BusinessEntity beTo = new org.apache.juddi.model.BusinessEntity();
-		beFrom.setEntityKey(apiPubAssertion.getToKey());
-		modelPubAssertion.setBusinessEntityByToKey(beTo);
-		
-		org.uddi.api_v3.KeyedReference apiKeyedRef = apiPubAssertion.getKeyedReference();
-		if (apiKeyedRef != null) {
-			modelPubAssertion.setTmodelKey(apiKeyedRef.getTModelKey());
-			modelPubAssertion.setKeyName(apiKeyedRef.getKeyName());
-			modelPubAssertion.setKeyValue(apiKeyedRef.getKeyValue());
-		}
-	}
-
-	public static void mapSubscription(org.uddi.sub_v3.Subscription apiSubscription,
-									   org.apache.juddi.model.Subscription modelSubscription) 
-				   throws DispositionReportFaultMessage {
-
-		modelSubscription.setSubscriptionKey(apiSubscription.getSubscriptionKey());
-		modelSubscription.setBindingKey(apiSubscription.getBindingKey());
-		if (apiSubscription.getNotificationInterval()!=null) {
-			modelSubscription.setNotificationInterval(apiSubscription.getNotificationInterval().toString());
-		}
-		modelSubscription.setMaxEntities(apiSubscription.getMaxEntities());
-		if (apiSubscription.getExpiresAfter() != null) {
-			GregorianCalendar gc = apiSubscription.getExpiresAfter().toGregorianCalendar();
-			modelSubscription.setExpiresAfter(new Date(gc.getTimeInMillis()));
-		}
-		
-		if (apiSubscription.isBrief() != null) {
-			modelSubscription.setBrief(apiSubscription.isBrief());
-		} else {
-			modelSubscription.setBrief(Boolean.FALSE);
-		}
-			
-		
-		String rawFilter = JAXBMarshaller.marshallToString(new ObjectFactory().createSubscriptionFilter(apiSubscription.getSubscriptionFilter()), "org.uddi.sub_v3");
-		logger.debug("marshalled subscription filter:  " + rawFilter);
-		modelSubscription.setSubscriptionFilter(rawFilter);
-		
-	}
-	
-	public static void mapClientSubscriptionInfo(org.apache.juddi.api_v3.ClientSubscriptionInfo apiClientSubscriptionInfo,
-									   org.apache.juddi.model.ClientSubscriptionInfo modelClientSubscriptionInfo)
-			throws DispositionReportFaultMessage {
-		
-		modelClientSubscriptionInfo.setLastNotified(new Date());
-		modelClientSubscriptionInfo.setSubscriptionKey(apiClientSubscriptionInfo.getSubscriptionKey());
-		if (apiClientSubscriptionInfo.getFromClerk()!=null) {
-			org.apache.juddi.model.Clerk modelClerk = new org.apache.juddi.model.Clerk();
-			mapClerk(apiClientSubscriptionInfo.getFromClerk(), modelClerk);
-			modelClientSubscriptionInfo.setFromClerk(modelClerk);
-		}
-		if (apiClientSubscriptionInfo.getToClerk()!=null) {
-			org.apache.juddi.model.Clerk modelToClerk = new org.apache.juddi.model.Clerk();
-			mapClerk(apiClientSubscriptionInfo.getToClerk(), modelToClerk);
-			modelClientSubscriptionInfo.setToClerk(modelToClerk);
-		}
-		
-	}
-	
-	public static void mapClerk(org.apache.juddi.api_v3.Clerk apiClerk,org.apache.juddi.model.Clerk modelClerk) {
-		if (apiClerk!=null) {
-			
-			modelClerk.setClerkName(apiClerk.getName());
-			modelClerk.setCred(apiClerk.getPassword());
-			modelClerk.setPublisherId(apiClerk.getPublisher());
-			if (apiClerk.getNode()!=null) {
-				org.apache.juddi.model.Node modelNode = new org.apache.juddi.model.Node();
-				mapNode(apiClerk.getNode(), modelNode);
-				modelClerk.setNode(modelNode);
-			}
-		}
-	}
-	
-	public static void mapNode(org.apache.juddi.api_v3.Node apiNode,org.apache.juddi.model.Node modelNode) {
-		if (apiNode!=null) {
-			
-			modelNode.setCustodyTransferUrl(apiNode.getCustodyTransferUrl());
-			modelNode.setInquiryUrl(apiNode.getInquiryUrl());
-			modelNode.setJuddiApiUrl(apiNode.getJuddiApiUrl());
-			modelNode.setName(apiNode.getName());
-			modelNode.setClientName(apiNode.getClientName());
-			modelNode.setProxyTransport(apiNode.getProxyTransport());
-			modelNode.setPublishUrl(apiNode.getPublishUrl());
-			modelNode.setSecurityUrl(apiNode.getSecurityUrl());
-			modelNode.setSubscriptionUrl(apiNode.getSubscriptionUrl());
-			modelNode.setFactoryInitial(apiNode.getFactoryInitial());
-			modelNode.setFactoryNamingProvider(apiNode.getFactoryNamingProvider());
-			modelNode.setFactoryURLPkgs(apiNode.getFactoryURLPkgs());
-		}
-	}
+        /**
+         *
+         * @param apiDescList
+         * @param modelDescList
+         * @param modelTModel
+         * @throws DispositionReportFaultMessage
+         */
+        public static void mapTModelDescriptions(List<org.uddi.api_v3.Description> apiDescList,
+                List<org.apache.juddi.model.TmodelDescr> modelDescList,
+                org.apache.juddi.model.Tmodel modelTModel)
+                throws DispositionReportFaultMessage {
+                modelDescList.clear();
 
-        private static Reference mapReference(SignedInfo modelSignedInfo, ReferenceType apiReference) {
-            Reference ref = new Reference();
-            ref.setSignedInfo(modelSignedInfo);
-            String refUri = apiReference.getURI();
-            if (refUri == null) {
-                refUri = "";
-            }
-            ref.setUri(refUri);
-            List<org.w3._2000._09.xmldsig_.TransformType> apiTransformList = apiReference.getTransforms().getTransform();
-            for (org.w3._2000._09.xmldsig_.TransformType apiTransform : apiTransformList) {
-                SignatureTransform modelTransform = new SignatureTransform();
-                modelTransform.setReference(ref);
-                modelTransform.setTransform(apiTransform.getAlgorithm());
-
-                for (Object xform : apiTransform.getContent()) {
-                    SignatureTransformDataValue sdv = mapSignatureTransformDataValue(xform);
-                    sdv.setSignatureTransform(modelTransform);
-                    modelTransform.getSignatureTransformDataValue().add(sdv);
-                }
-
-                ref.getTransforms().add(modelTransform);
-            }
-            String digestMethodStr = apiReference.getDigestMethod().getAlgorithm();
-            byte[] digestValueBytes = apiReference.getDigestValue();
-            ref.setDigestMethod(digestMethodStr);

[... 685 lines stripped ...]


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org