http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java 
b/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
index b42cf81..83a1492 100644
--- a/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
+++ b/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
@@ -38,6 +38,7 @@ import org.apache.juddi.model.CanonicalizationMethod;
 import org.apache.juddi.model.Contact;
 import org.apache.juddi.model.ControlMessage;
 import org.apache.juddi.model.Edge;
+import org.apache.juddi.model.EdgeReceiverAlternate;
 import org.apache.juddi.model.KeyDataValue;
 import org.apache.juddi.model.KeyInfo;
 import org.apache.juddi.model.Node;
@@ -45,6 +46,7 @@ import org.apache.juddi.model.Operator;
 import org.apache.juddi.model.OperatorStatusType;
 import org.apache.juddi.model.Publisher;
 import org.apache.juddi.model.Reference;
+import org.apache.juddi.model.ReplicationConfigurationNode;
 import org.apache.juddi.model.Signature;
 import org.apache.juddi.model.SignatureMethod;
 import org.apache.juddi.model.SignatureTransform;
@@ -102,8 +104,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapPublisher(org.apache.juddi.api_v3.Publisher 
apiPublisher,
-             org.apache.juddi.model.Publisher modelPublisher)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.Publisher modelPublisher)
+                throws DispositionReportFaultMessage {
                 
modelPublisher.setAuthorizedName(apiPublisher.getAuthorizedName());
                 
modelPublisher.setPublisherName(apiPublisher.getPublisherName());
                 modelPublisher.setEmailAddress(apiPublisher.getEmailAddress());
@@ -123,8 +125,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapBusinessEntity(org.uddi.api_v3.BusinessEntity 
apiBusinessEntity,
-             org.apache.juddi.model.BusinessEntity modelBusinessEntity)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
 
                 
modelBusinessEntity.setEntityKey(apiBusinessEntity.getBusinessKey());
 
@@ -139,15 +141,15 @@ public class MappingApiToModel {
                 }
 
                 mapBusinessServices(apiBusinessEntity.getBusinessServices(),
-                     modelBusinessEntity.getBusinessServices(),
-                     modelBusinessEntity.getServiceProjections(),
-                     modelBusinessEntity);
+                        modelBusinessEntity.getBusinessServices(),
+                        modelBusinessEntity.getServiceProjections(),
+                        modelBusinessEntity);
 
                 mapBusinessSignature(apiBusinessEntity.getSignature(), 
modelBusinessEntity);
         }
 
         private static List<Signature> 
mapApiSignaturesToModelSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> 
apiSignatures)
-             throws DispositionReportFaultMessage {
+                throws DispositionReportFaultMessage {
                 List<Signature> modelSignatures = new ArrayList<Signature>();
                 modelSignatures.clear();
                 for (org.w3._2000._09.xmldsig_.SignatureType signatureType : 
apiSignatures) {
@@ -243,7 +245,7 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapBusinessServiceSignature(List<org.w3._2000._09.xmldsig_.SignatureType> 
apiSignatures, BusinessService modelBusinessService)
-             throws DispositionReportFaultMessage {
+                throws DispositionReportFaultMessage {
                 List<Signature> modelSignatures = 
mapApiSignaturesToModelSignatures(apiSignatures);
                 for (Signature modelSignature : modelSignatures) {
                         
modelSignature.setBusinessService(modelBusinessService);
@@ -258,7 +260,7 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapTmodelSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> 
apiSignatures, Tmodel modelTmodel)
-             throws DispositionReportFaultMessage {
+                throws DispositionReportFaultMessage {
                 List<Signature> modelSignatures = 
mapApiSignaturesToModelSignatures(apiSignatures);
                 for (Signature modelSignature : modelSignatures) {
                         modelSignature.setTmodel(modelTmodel);
@@ -273,7 +275,7 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapBindingTemplateSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> 
apiSignatures, BindingTemplate modelBindingTemplate)
-             throws DispositionReportFaultMessage {
+                throws DispositionReportFaultMessage {
                 List<Signature> modelSignatures = 
mapApiSignaturesToModelSignatures(apiSignatures);
                 for (Signature modelSignature : modelSignatures) {
                         
modelSignature.setBindingTemplate(modelBindingTemplate);
@@ -288,7 +290,7 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapPublisherSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> 
apiSignatures, Publisher modelPublisher)
-             throws DispositionReportFaultMessage {
+                throws DispositionReportFaultMessage {
                 List<Signature> modelSignatures = 
mapApiSignaturesToModelSignatures(apiSignatures);
                 for (Signature modelSignature : modelSignatures) {
                         modelSignature.setPublisher(modelPublisher);
@@ -303,8 +305,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapBusinessSignature(List<org.w3._2000._09.xmldsig_.SignatureType> 
apiSignatures,
-             org.apache.juddi.model.BusinessEntity modelBusinessEntity)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
                 List<Signature> modelSignatures = 
mapApiSignaturesToModelSignatures(apiSignatures);
                 for (Signature modelSignature : modelSignatures) {
                         modelSignature.setBusinessEntity(modelBusinessEntity);
@@ -320,9 +322,9 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -338,9 +340,9 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -356,9 +358,9 @@ public class MappingApiToModel {
          * @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 {
+                List<org.apache.juddi.model.DiscoveryUrl> modelDiscUrlList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
                 modelDiscUrlList.clear();
 
                 if (apiDiscUrls != null) {
@@ -377,9 +379,9 @@ public class MappingApiToModel {
          * @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 {
+                List<org.apache.juddi.model.Contact> modelContactList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
                 modelContactList.clear();
 
                 if (apiContacts != null) {
@@ -408,10 +410,10 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -428,10 +430,10 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -448,10 +450,10 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -468,10 +470,10 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -488,10 +490,10 @@ public class MappingApiToModel {
          * @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
+                List<org.apache.juddi.model.Address> modelAddressList,
+                org.apache.juddi.model.Contact modelContact
         )
-             throws DispositionReportFaultMessage {
+                throws DispositionReportFaultMessage {
                 modelAddressList.clear();
 
                 for (org.uddi.api_v3.Address apiAddress : apiAddressList) {
@@ -516,10 +518,10 @@ public class MappingApiToModel {
          * @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,
-             Long contactId)
-             throws DispositionReportFaultMessage {
+                List<org.apache.juddi.model.AddressLine> modelAddressLineList,
+                org.apache.juddi.model.Address modelAddress,
+                Long contactId)
+                throws DispositionReportFaultMessage {
                 modelAddressLineList.clear();
 
                 for (org.uddi.api_v3.AddressLine apiAddressLine : 
apiAddressLineList) {
@@ -535,9 +537,9 @@ public class MappingApiToModel {
          * @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 {
+                List<org.apache.juddi.model.BusinessIdentifier> 
modelIdentifierList,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
                 modelIdentifierList.clear();
 
                 if (apiIdentifierBag != null) {
@@ -557,10 +559,10 @@ public class MappingApiToModel {
          * @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)
-             throws DispositionReportFaultMessage {
+                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();
@@ -569,7 +571,7 @@ public class MappingApiToModel {
 
                                 // 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()))
 {
+                                        && 
!modelBusinessEntity.getEntityKey().equalsIgnoreCase(apiBusinessService.getBusinessKey()))
 {
 
                                         
modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
                                         
org.apache.juddi.model.ServiceProjection modelServiceProjection = new 
org.apache.juddi.model.ServiceProjection(modelBusinessEntity, 
modelBusinessService);
@@ -591,9 +593,9 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapBusinessService(org.uddi.api_v3.BusinessService 
apiBusinessService,
-             org.apache.juddi.model.BusinessService modelBusinessService,
-             org.apache.juddi.model.BusinessEntity modelBusinessEntity)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.BusinessService modelBusinessService,
+                org.apache.juddi.model.BusinessEntity modelBusinessEntity)
+                throws DispositionReportFaultMessage {
 
                 modelBusinessService.setBusinessEntity(modelBusinessEntity);
                 
modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
@@ -617,9 +619,9 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -635,9 +637,9 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -653,9 +655,9 @@ public class MappingApiToModel {
          * @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)
-             throws DispositionReportFaultMessage {
+                List<org.apache.juddi.model.BindingTemplate> 
modelBindingTemplateList,
+                org.apache.juddi.model.BusinessService modelBusinessService)
+                throws DispositionReportFaultMessage {
                 modelBindingTemplateList.clear();
 
                 if (apiBindingTemplates != null) {
@@ -678,9 +680,9 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapBindingTemplate(org.uddi.api_v3.BindingTemplate 
apiBindingTemplate,
-             org.apache.juddi.model.BindingTemplate modelBindingTemplate,
-             org.apache.juddi.model.BusinessService modelBusinessService)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.BindingTemplate modelBindingTemplate,
+                org.apache.juddi.model.BusinessService modelBusinessService)
+                throws DispositionReportFaultMessage {
 
                 modelBindingTemplate.setBusinessService(modelBusinessService);
                 
modelBindingTemplate.setEntityKey(apiBindingTemplate.getBindingKey());
@@ -709,9 +711,9 @@ public class MappingApiToModel {
          * @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 {
+                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()));
@@ -725,8 +727,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapCategoryBag(org.uddi.api_v3.CategoryBag 
apiCategoryBag,
-             org.apache.juddi.model.CategoryBag modelCategoryBag)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.CategoryBag modelCategoryBag)
+                throws DispositionReportFaultMessage {
 
                 if (apiCategoryBag != null) {
                         List<org.uddi.api_v3.KeyedReference> krList = 
apiCategoryBag.getKeyedReference();
@@ -736,7 +738,7 @@ public class MappingApiToModel {
                                         //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()));
+                                                
apiKeyedReference.getTModelKey(), apiKeyedReference.getKeyName(), 
apiKeyedReference.getKeyValue()));
                                 }
                         }
                         List<org.uddi.api_v3.KeyedReferenceGroup> krgList = 
apiCategoryBag.getKeyedReferenceGroup();
@@ -764,9 +766,9 @@ public class MappingApiToModel {
          * @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 {
+                org.apache.juddi.model.KeyedReferenceGroup 
modelKeyedReferenceGroup,
+                org.apache.juddi.model.CategoryBag modelCategoryBag)
+                throws DispositionReportFaultMessage {
                 if (apiKeyedReferenceGroup != null) {
                         
modelKeyedReferenceGroup.setCategoryBag(modelCategoryBag);
                         
modelKeyedReferenceGroup.setTmodelKey(apiKeyedReferenceGroup.getTModelKey());
@@ -775,7 +777,7 @@ public class MappingApiToModel {
                                 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()));
+                                                
apiKeyedReference.getTModelKey(), apiKeyedReference.getKeyName(), 
apiKeyedReference.getKeyValue()));
                                 }
                         }
 
@@ -791,9 +793,9 @@ public class MappingApiToModel {
          * @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 {
+                List<org.apache.juddi.model.TmodelInstanceInfo> 
modelTModelInstInfoList,
+                org.apache.juddi.model.BindingTemplate modelBindingTemplate)
+                throws DispositionReportFaultMessage {
                 modelTModelInstInfoList.clear();
 
                 if (apiTModelInstDetails != null) {
@@ -817,9 +819,9 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -834,8 +836,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapInstanceDetails(org.uddi.api_v3.InstanceDetails 
apiInstanceDetails,
-             org.apache.juddi.model.TmodelInstanceInfo modelTmodelInstInfo)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.TmodelInstanceInfo modelTmodelInstInfo)
+                throws DispositionReportFaultMessage {
                 modelTmodelInstInfo.getInstanceDetailsDescrs().clear();
 
                 if (apiInstanceDetails != null) {
@@ -843,8 +845,8 @@ public class MappingApiToModel {
                         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());
+                                        = new 
org.apache.juddi.model.InstanceDetailsDescr(
+                                                modelTmodelInstInfo, 
apiDesc.getLang(), apiDesc.getValue());
                                 
modelTmodelInstInfo.getInstanceDetailsDescrs().add(modelInstanceDetailsDescr);
                         }
                         for (org.uddi.api_v3.OverviewDoc apiOverviewDoc : 
overviewdocs) {
@@ -863,8 +865,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapOverviewDoc(org.uddi.api_v3.OverviewDoc 
apiOverviewDoc,
-             org.apache.juddi.model.OverviewDoc modelOverviewDoc)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.OverviewDoc modelOverviewDoc)
+                throws DispositionReportFaultMessage {
                 if (apiOverviewDoc != null) {
 
                         List<Description> descContent = 
apiOverviewDoc.getDescription();
@@ -872,7 +874,7 @@ public class MappingApiToModel {
                                 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, 
description.getLang(), description.getValue());
                                         
modelOverviewDoc.getOverviewDocDescrs().add(modelOverviewDocDescr);
                                 }
                         }
@@ -894,8 +896,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapTModel(org.uddi.api_v3.TModel apiTModel,
-             org.apache.juddi.model.Tmodel modelTModel)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.Tmodel modelTModel)
+                throws DispositionReportFaultMessage {
 
                 modelTModel.setEntityKey(apiTModel.getTModelKey());
                 modelTModel.setName(apiTModel.getName().getValue());
@@ -920,9 +922,9 @@ public class MappingApiToModel {
          * @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 {
+                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) {
@@ -938,9 +940,9 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         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 {
+                List<org.apache.juddi.model.TmodelIdentifier> 
modelIdentifierList,
+                org.apache.juddi.model.Tmodel modelTModel)
+                throws DispositionReportFaultMessage {
                 modelIdentifierList.clear();
 
                 if (apiIdentifierBag != null) {
@@ -959,9 +961,9 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         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 {
+                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) {
@@ -978,8 +980,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapPublisherAssertion(org.uddi.api_v3.PublisherAssertion apiPubAssertion,
-             org.apache.juddi.model.PublisherAssertion modelPubAssertion)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.PublisherAssertion modelPubAssertion)
+                throws DispositionReportFaultMessage {
 
                 modelPubAssertion.setId(new 
org.apache.juddi.model.PublisherAssertionId(apiPubAssertion.getFromKey(), 
apiPubAssertion.getToKey()));
 
@@ -1006,8 +1008,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void mapSubscription(org.uddi.sub_v3.Subscription 
apiSubscription,
-             org.apache.juddi.model.Subscription modelSubscription)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.Subscription modelSubscription)
+                throws DispositionReportFaultMessage {
 
                 
modelSubscription.setSubscriptionKey(apiSubscription.getSubscriptionKey());
                 
modelSubscription.setBindingKey(apiSubscription.getBindingKey());
@@ -1039,8 +1041,8 @@ public class MappingApiToModel {
          * @throws DispositionReportFaultMessage
          */
         public static void 
mapClientSubscriptionInfo(org.apache.juddi.api_v3.ClientSubscriptionInfo 
apiClientSubscriptionInfo,
-             org.apache.juddi.model.ClientSubscriptionInfo 
modelClientSubscriptionInfo)
-             throws DispositionReportFaultMessage {
+                org.apache.juddi.model.ClientSubscriptionInfo 
modelClientSubscriptionInfo)
+                throws DispositionReportFaultMessage {
 
                 modelClientSubscriptionInfo.setLastNotified(new Date());
                 
modelClientSubscriptionInfo.setSubscriptionKey(apiClientSubscriptionInfo.getSubscriptionKey());
@@ -1416,48 +1418,52 @@ public class MappingApiToModel {
                 }
                 
model.setMaximumTimeToGetChanges(replicationConfiguration.getMaximumTimeToGetChanges());
                 
model.setMaximumTimeToSyncRegistry(replicationConfiguration.getMaximumTimeToSyncRegistry());
+                //this is set by the service when saving
                 model.setSerialNumber(null);
-
+               
                 //the spec doesn't specify what the format should be, however 
there was an example
                 //2002 03 04 1859Z
                 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddkkmmZ");
                 model.setTimeOfConfigurationUpdate(sdf.format(new Date()));
                 if (replicationConfiguration.getRegistryContact() != null) {
-                        
model.setContact(mapContact(replicationConfiguration.getRegistryContact().getContact()));
+                        
model.setContact(mapContact(replicationConfiguration.getRegistryContact().getContact(),
 model));
                 }
-                
mapCommunicationGraph(model,replicationConfiguration.getCommunicationGraph(), 
em);
-                
model.setOperator(mapOperators(replicationConfiguration.getOperator()));
+                mapCommunicationGraph(model, 
replicationConfiguration.getCommunicationGraph(), em);
+                
model.setOperator(mapOperators(replicationConfiguration,model));
                 if (replicationConfiguration.getSignature() != null) {
                         
model.setSignatures(mapApiSignaturesToModelSignatures(replicationConfiguration.getSignature()));
                 }
 
         }
 
-        private static Contact mapContact(org.uddi.api_v3.Contact contact) 
throws DispositionReportFaultMessage {
-                Contact model = new Contact();
-                model.setAddresses(new ArrayList<Address>());
-                mapContactAddresses(contact.getAddress(), 
model.getAddresses(), model);
-                if (model.getAddresses().isEmpty()) {
-                        model.setAddresses(null);
+        private static Contact mapContact(org.uddi.api_v3.Contact contact, 
org.apache.juddi.model.ReplicationConfiguration model) throws 
DispositionReportFaultMessage {
+                Contact cmodel = new Contact();
+                cmodel.setReplicationConfigId(model);
+                cmodel.setAddresses(new ArrayList<Address>());
+                mapContactAddresses(contact.getAddress(), 
cmodel.getAddresses(), cmodel);
+                if (cmodel.getAddresses().isEmpty()) {
+                        cmodel.setAddresses(null);
                 }
-                return model;
+                return cmodel;
         }
 
-       
-
-        private static List<Operator> 
mapOperators(List<org.uddi.repl_v3.Operator> api) throws 
DispositionReportFaultMessage {
+        private static List<Operator> mapOperators(ReplicationConfiguration 
cfg, org.apache.juddi.model.ReplicationConfiguration modelparent) throws 
DispositionReportFaultMessage {
+                if (cfg==null) return null;
+                List<org.uddi.repl_v3.Operator> api = cfg.getOperator();
                 if (api == null) {
                         return null;
                 }
                 List<Operator> model = new ArrayList<Operator>();
                 for (int i = 0; i < api.size(); i++) {
                         Operator op = new Operator();
+                        op.setParent(modelparent);
+                       
                         
op.setSoapReplicationURL(api.get(i).getSoapReplicationURL());
 
                         if (!api.get(i).getContact().isEmpty()) {
                                 op.setContact(new ArrayList<Contact>());
                                 for (int k = 0; k < 
api.get(i).getContact().size(); k++) {
-                                        
op.getContact().add(mapContact(api.get(i).getContact().get(k)));
+                                        
op.getContact().add(mapContact(api.get(i).getContact().get(k), null));
                                 }
                         }
                         op.setOperatorNodeID(api.get(i).getOperatorNodeID());
@@ -1496,12 +1502,13 @@ public class MappingApiToModel {
                 return null;
         }
 
-    private static void 
mapCommunicationGraph(org.apache.juddi.model.ReplicationConfiguration model, 
CommunicationGraph communicationGraph, EntityManager em) throws 
ValueNotAllowedException {
-        
-    if (model == null) {
+        private static void 
mapCommunicationGraph(org.apache.juddi.model.ReplicationConfiguration model, 
CommunicationGraph communicationGraph, EntityManager em) throws 
ValueNotAllowedException {
+
+                if (model == null) {
                         return;
                 }
-           
+                
+
                 /**
                  * Following the listing of nodes is the controlledMessage
                  * element that lists the set of messages over which this
@@ -1515,39 +1522,30 @@ public class MappingApiToModel {
                  */
                 if (communicationGraph.getControlledMessage() != null) {
                         model.setControlMessage(new 
ArrayList<ControlMessage>());
+
                         for (int k = 0; k < 
communicationGraph.getControlledMessage().size(); k++) {
-                                model.getControlMessage().add(new 
ControlMessage(communicationGraph.getControlledMessage().get(k)));
+                                ControlMessage BC = new 
ControlMessage(communicationGraph.getControlledMessage().get(k));
+                                BC.setReplicationConfiguration(model);
+                                
+                                model.getControlMessage().add(BC);
                         }
                 }
-                model.setNode(new ArrayList<Node>());
+                
                 for (int i = 0; i < communicationGraph.getNode().size(); i++) {
-                        Node find = em.find(org.apache.juddi.model.Node.class, 
communicationGraph.getNode().get(i));
-                        if (find == null) {
-                                throw new ValueNotAllowedException(new 
ErrorMessage("errors.replication.configNodeNotFound", 
communicationGraph.getNode().get(i)));
-                        }
-                        model.getNode().add(find);
+                        ReplicationConfigurationNode 
replicationConfigurationNode = new ReplicationConfigurationNode();
+
+                        
replicationConfigurationNode.setNodeName(communicationGraph.getNode().get(i));
+                        replicationConfigurationNode.setParent(model);
+                        model.getNode().add(replicationConfigurationNode);
                 }
                 if (communicationGraph.getEdge() != null && 
!communicationGraph.getEdge().isEmpty()) {
                         List<Edge> ret = new ArrayList<Edge>();
                         for (int i = 0; i < 
communicationGraph.getEdge().size(); i++) {
                                 Edge e = new Edge();
+                                e.setReplicationConfiguration(model);
                                 
-                                if 
(communicationGraph.getEdge().get(i).getMessageReceiver() == null) {
-                                        throw new ValueNotAllowedException(new 
ErrorMessage("errors.replication.configNodeNotFound", 
communicationGraph.getEdge().get(i).getMessageReceiver()));
-                                }
-                                Node find = 
em.find(org.apache.juddi.model.Node.class, 
communicationGraph.getEdge().get(i).getMessageReceiver());
-                                if (find == null) {
-                                        throw new ValueNotAllowedException(new 
ErrorMessage("errors.replication.configNodeNotFound", 
communicationGraph.getEdge().get(i).getMessageReceiver()));
-                                }
-                                e.setMessageReceiver(find);
-                                if 
(communicationGraph.getEdge().get(i).getMessageSender() == null) {
-                                        throw new ValueNotAllowedException(new 
ErrorMessage("errors.replication.configNodeNotFound", 
communicationGraph.getEdge().get(i).getMessageReceiver()));
-                                }
-                                find = 
em.find(org.apache.juddi.model.Node.class, 
communicationGraph.getEdge().get(i).getMessageSender());
-                                if (find == null) {
-                                        throw new ValueNotAllowedException(new 
ErrorMessage("errors.replication.configNodeNotFound", 
communicationGraph.getEdge().get(i).getMessageSender()));
-                                }
-                                e.setMessageSender(find);
+                                
e.setMessageReceiver(communicationGraph.getEdge().get(i).getMessageReceiver());
+                               
e.setMessageSender(communicationGraph.getEdge().get(i).getMessageSender());
 
                                 /**
                                  * The message elements contain the local name
@@ -1560,24 +1558,29 @@ public class MappingApiToModel {
                                 if 
(communicationGraph.getEdge().get(i).getMessage() != null) {
                                         e.setMessage(new 
ArrayList<ControlMessage>());
                                         for (int k = 0; k < 
communicationGraph.getEdge().get(i).getMessage().size(); k++) {
-                                                e.getMessages().add(new 
ControlMessage(communicationGraph.getEdge().get(i).getMessage().get(k)));
+                                                ControlMessage controlMessage 
= new ControlMessage(communicationGraph.getEdge().get(i).getMessage().get(k));
+                                                
controlMessage.setReplicationConfiguration(model);
+                                                
controlMessage.setParentEdge(e);
+                                                
e.getMessages().add(controlMessage);
                                         }
                                 }
                                 if 
(communicationGraph.getEdge().get(i).getMessageReceiverAlternate() != null) {
-                                        e.setMessageReceiverAlternate(new 
HashSet<Node>());
-                                        for (int k = 0; k < 
communicationGraph.getEdge().get(i).getMessageReceiverAlternate().size(); k++) {
-                                                find = 
em.find(org.apache.juddi.model.Node.class, 
communicationGraph.getEdge().get(i).getMessageSender());
-                                                if (find == null) {
-                                                        throw new 
ValueNotAllowedException(new 
ErrorMessage("errors.replication.configNodeNotFound", 
communicationGraph.getEdge().get(i).getMessageSender()));
-                                                }
-                                                
e.getMessageReceiverAlternate().add(find);
+                                        List<EdgeReceiverAlternate> eras = new 
ArrayList<EdgeReceiverAlternate>();
+                                        for (String s: 
communicationGraph.getEdge().get(i).getMessageReceiverAlternate() ){
+                                                EdgeReceiverAlternate x = new 
EdgeReceiverAlternate();
+                                                x.setParent(e);
+                                                x.setReceiverAlternate(s);
+                                                eras.add(x);
                                         }
+                                        e.setMessageReceiverAlternate(eras);
+                                      
                                 }
 
                                 ret.add(e);
                         }
                         model.setEdge(ret);
-                }}            }
-    
-
+                }
+        }
 
+        
+}

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/mapping/MappingModelToApi.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/mapping/MappingModelToApi.java 
b/juddi-core/src/main/java/org/apache/juddi/mapping/MappingModelToApi.java
index 50535da..481df3d 100644
--- a/juddi-core/src/main/java/org/apache/juddi/mapping/MappingModelToApi.java
+++ b/juddi-core/src/main/java/org/apache/juddi/mapping/MappingModelToApi.java
@@ -48,6 +48,7 @@ import org.apache.juddi.jaxb.JAXBMarshaller;
 import org.apache.juddi.model.CanonicalizationMethod;
 import org.apache.juddi.model.ControlMessage;
 import org.apache.juddi.model.Edge;
+import org.apache.juddi.model.EdgeReceiverAlternate;
 import org.apache.juddi.model.KeyInfo;
 import org.apache.juddi.model.OverviewDoc;
 import org.apache.juddi.model.Reference;
@@ -58,14 +59,17 @@ import org.apache.juddi.model.UddiEntity;
 import org.apache.juddi.model.KeyDataValue;
 import org.apache.juddi.model.Node;
 import org.apache.juddi.model.ReplicationConfiguration;
+import org.apache.juddi.model.ReplicationConfigurationNode;
 import org.apache.juddi.model.SignatureTransformDataValue;
 import org.apache.juddi.subscription.TypeConvertor;
 import org.apache.juddi.v3.error.ErrorMessage;
 import org.apache.juddi.v3.error.FatalErrorException;
 import org.uddi.api_v3.BusinessEntity;
 import org.uddi.api_v3.CompletionStatus;
+import org.uddi.api_v3.Contact;
 import org.uddi.api_v3.Contacts;
 import org.uddi.api_v3.OperationalInfo;
+import org.uddi.api_v3.PersonName;
 import org.uddi.repl_v3.ChangeRecord;
 import org.uddi.repl_v3.ChangeRecordIDType;
 import org.uddi.repl_v3.CommunicationGraph;
@@ -1203,6 +1207,7 @@ public class MappingModelToApi {
                 
item.setMaximumTimeToGetChanges(find.getMaximumTimeToGetChanges());
                 
item.setMaximumTimeToSyncRegistry(find.getMaximumTimeToSyncRegistry());
                 item.setSerialNumber(find.getSerialNumber());
+                
                 List<SignatureType> sigs = new ArrayList<SignatureType>();
                 mapSignature(find.getSignatures(), sigs);
                 item.getSignature().addAll(sigs);
@@ -1213,10 +1218,16 @@ public class MappingModelToApi {
                 org.uddi.api_v3.Contacts cs = new Contacts();
 
                 mapContacts(modelContactList, cs, new BusinessEntity());
+                item.setRegistryContact(new 
org.uddi.repl_v3.ReplicationConfiguration.RegistryContact());
                 if (!cs.getContact().isEmpty()) {
-                        item.setRegistryContact(new 
org.uddi.repl_v3.ReplicationConfiguration.RegistryContact());
+                        
                         
item.getRegistryContact().setContact(cs.getContact().get(0));
                 }
+                else
+                {
+                        item.getRegistryContact().setContact(new Contact());
+                        
item.getRegistryContact().getContact().getPersonName().add(new 
PersonName("unknown", null));
+                }
                 
item.setTimeOfConfigurationUpdate(find.getTimeOfConfigurationUpdate());
                 CommunicationGraph xcom = new CommunicationGraph();
 
@@ -1278,16 +1289,16 @@ public class MappingModelToApi {
                         Edge modelEdge = it.next();
 
                         CommunicationGraph.Edge apiEdge = new 
CommunicationGraph.Edge();
-                        
apiEdge.setMessageReceiver(modelEdge.getMessageReceiver().getName());
-                        
apiEdge.setMessageSender(modelEdge.getMessageSender().getName());
+                        
apiEdge.setMessageReceiver(modelEdge.getMessageReceiver());
+                        apiEdge.setMessageSender(modelEdge.getMessageSender());
 
                         Iterator<ControlMessage> it2 = 
modelEdge.getMessages().iterator();
                         while (it2.hasNext()) {
                                 
apiEdge.getMessage().add(it2.next().getMessage());
                         }
-                        Iterator<Node> it3 = 
modelEdge.getMessageReceiverAlternate().iterator();
+                        Iterator<EdgeReceiverAlternate> it3 = 
modelEdge.getMessageReceiverAlternate().iterator();
                         while (it3.hasNext()) {
-                                
apiEdge.getMessageReceiverAlternate().add(it3.next().getName());
+                                
apiEdge.getMessageReceiverAlternate().add(it3.next().getReceiverAlternate());
                         }
 
                         api.add(apiEdge);
@@ -1302,10 +1313,10 @@ public class MappingModelToApi {
                 }
         }
 
-        private static void mapEdgeNodes(List<Node> model, List<String> api) {
-                Iterator<Node> it = model.iterator();
+        private static void mapEdgeNodes(List<ReplicationConfigurationNode> 
model, List<String> api) {
+                Iterator<ReplicationConfigurationNode> it = model.iterator();
                 while (it.hasNext()) {
-                        api.add(it.next().getName());
+                        api.add(it.next().getNodeName());
                 }
         }
 

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/Contact.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/model/Contact.java 
b/juddi-core/src/main/java/org/apache/juddi/model/Contact.java
index 4f8b62d..9dfc41e 100644
--- a/juddi-core/src/main/java/org/apache/juddi/model/Contact.java
+++ b/juddi-core/src/main/java/org/apache/juddi/model/Contact.java
@@ -28,6 +28,7 @@ import javax.persistence.Id;
 import javax.persistence.JoinColumn;
 import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
 
@@ -42,6 +43,7 @@ public class Contact implements java.io.Serializable {
        private static final long serialVersionUID = 3350341195850056589L;
        private Long id;
        private BusinessEntity businessEntity;
+        private ReplicationConfiguration replicationConfigSerial;
        private String useType;
        private List<PersonName> personNames = new ArrayList<PersonName>(0);
        private List<ContactDescr> contactDescrs = new 
ArrayList<ContactDescr>(0);
@@ -67,6 +69,15 @@ public class Contact implements java.io.Serializable {
                this.addresses = addresses;
        }
 
+        @OneToOne(fetch = FetchType.LAZY)
+       @JoinColumn(name = "replicationCfgId", nullable = true)
+        public ReplicationConfiguration getReplicationConfigId() {
+               return this.replicationConfigSerial;
+       }
+       public void setReplicationConfigId(ReplicationConfiguration id) {
+               this.replicationConfigSerial = id;
+       }
+        
        @Id
        @GeneratedValue(strategy=GenerationType.AUTO)
        public Long getId() {

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/ControlMessage.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/model/ControlMessage.java 
b/juddi-core/src/main/java/org/apache/juddi/model/ControlMessage.java
index ce79b8f..39ab63a 100644
--- a/juddi-core/src/main/java/org/apache/juddi/model/ControlMessage.java
+++ b/juddi-core/src/main/java/org/apache/juddi/model/ControlMessage.java
@@ -19,7 +19,13 @@ package org.apache.juddi.model;
 import java.io.Serializable;
 import javax.persistence.Column;
 import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
 import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import org.uddi.repl_v3.CommunicationGraph;
 
 /**
  *
@@ -48,6 +54,7 @@ public class ControlMessage implements Serializable{
         }
 
         @Id
+        @GeneratedValue(strategy = GenerationType.AUTO)
         public Long getId() {
                 return id;
         }
@@ -55,4 +62,27 @@ public class ControlMessage implements Serializable{
         public void setId(Long id) {
                 this.id = id;
         }
+        
+       //  @JoinColumn( )
+       // @ManyToOne(targetEntity = ReplicationConfiguration.class)
+         @ManyToOne(fetch = FetchType.LAZY)
+       @JoinColumn(name = "ReplicationConfiguration", nullable = true)
+        public ReplicationConfiguration getReplicationConfiguration() {
+                return parent;
+        }
+        private ReplicationConfiguration parent;
+        public void setReplicationConfiguration(ReplicationConfiguration p){
+                parent = p;
+        }
+        
+         @ManyToOne(fetch = FetchType.LAZY)
+       @JoinColumn(name = "entity_key_ed", nullable = true)
+         public Edge getParentEdge(){
+                 return this.edge;
+         }
+         private Edge edge;
+         public void setParentEdge(Edge e){
+                 this.edge = e;
+         }
+         
 }

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/Edge.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/model/Edge.java 
b/juddi-core/src/main/java/org/apache/juddi/model/Edge.java
index bc25990..669a2a2 100644
--- a/juddi-core/src/main/java/org/apache/juddi/model/Edge.java
+++ b/juddi-core/src/main/java/org/apache/juddi/model/Edge.java
@@ -20,6 +20,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 import javax.persistence.CascadeType;
+import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
@@ -37,11 +38,20 @@ public class Edge {
 
         private Long id;
         private List<ControlMessage>  message;
-        private Node messageSender;
-        private Node messageReceiver;
-        private Set<Node> messageReceiverAlternate;
+        private String messageSender;
+        private String messageReceiver;
+        private List<EdgeReceiverAlternate> messageReceiverAlternate;
         private ReplicationConfiguration parent;
 
+         @ManyToOne(fetch = FetchType.LAZY)
+       @JoinColumn(name = "ReplicationConfiguration", nullable = false)
+        public ReplicationConfiguration getReplicationConfiguration() {
+                return parent;
+        }
+        
+        public void setReplicationConfiguration(ReplicationConfiguration p){
+                parent = p;
+        }
         
         /**
          * The message elements contain the local name of the Replication API 
message elements
@@ -58,13 +68,13 @@ public class Edge {
                 this.message = values;
         }
 
-        @JoinColumn(referencedColumnName ="name" )
-        @ManyToOne(targetEntity = Node.class)
-        public Node getMessageSender() {
+        
+        @Column
+        public String getMessageSender() {
                 return messageSender;
         }
 
-        public void setMessageSender(Node value) {
+        public void setMessageSender(String value) {
                 this.messageSender = value;
         }
 
@@ -73,13 +83,12 @@ public class Edge {
                  *
          * @return
          */
-        @JoinColumn(referencedColumnName ="name" )
-        @ManyToOne(targetEntity = Node.class)
-        public Node getMessageReceiver() {
+        @Column
+        public String getMessageReceiver() {
                 return messageReceiver;
         }
 
-        public void setMessageReceiver(Node value) {
+        public void setMessageReceiver(String value) {
                 this.messageReceiver = value;
         }
 
@@ -90,10 +99,12 @@ public class Edge {
          *
          * @return
          */
-        @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, 
targetEntity = Node.class)
-        public Set<Node> getMessageReceiverAlternate() {
+        @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, 
targetEntity = EdgeReceiverAlternate.class
+                //, mappedBy = "messageReceiverAlternate"
+        )
+        public List<EdgeReceiverAlternate> getMessageReceiverAlternate() {
                 if (messageReceiverAlternate == null) {
-                        messageReceiverAlternate = new HashSet<Node>();
+                        messageReceiverAlternate = new 
ArrayList<EdgeReceiverAlternate>();
                 }
                 return this.messageReceiverAlternate;
         }
@@ -108,7 +119,7 @@ public class Edge {
                 this.message = message;
         }
 
-        public void setMessageReceiverAlternate(Set<Node> 
messageReceiverAlternate) {
+        public void setMessageReceiverAlternate(List<EdgeReceiverAlternate> 
messageReceiverAlternate) {
                 this.messageReceiverAlternate = messageReceiverAlternate;
         }
 

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/EdgeReceiverAlternate.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/model/EdgeReceiverAlternate.java 
b/juddi-core/src/main/java/org/apache/juddi/model/EdgeReceiverAlternate.java
new file mode 100644
index 0000000..b64a65f
--- /dev/null
+++ b/juddi-core/src/main/java/org/apache/juddi/model/EdgeReceiverAlternate.java
@@ -0,0 +1,68 @@
+/*
+ * Copyright 2014 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.juddi.model;
+
+import java.io.Serializable;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+/**
+ *
+ * @author alex
+ */
+@Entity
+@Table(name = "j3_chg_replcfgear")
+public class EdgeReceiverAlternate implements Serializable{
+        private static final long serialVersionUID = -3199894835641632162L;
+       Long id;
+       String rx;
+       
+               @Id
+        @GeneratedValue(strategy = GenerationType.AUTO)
+        public Long getId() {
+                return id;
+        }
+
+        public void setId(Long id) {
+                this.id = id;
+        }
+        
+         @ManyToOne(fetch = FetchType.LAZY, targetEntity = Edge.class)
+       @JoinColumn(name = "entity_key_ed", nullable = false)
+         public Edge getParent(){
+                 return this.edge;
+         }
+         private Edge edge;
+         public void setParent(Edge e){
+                 this.edge = e;
+         }
+
+         @Column
+         public String getReceiverAlternate() {
+                return this.rx;
+        }
+         
+        public void setReceiverAlternate(String s) {
+                this.rx = s;
+        }
+}

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/Node.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/model/Node.java 
b/juddi-core/src/main/java/org/apache/juddi/model/Node.java
index 53fbe12..d5d9df4 100644
--- a/juddi-core/src/main/java/org/apache/juddi/model/Node.java
+++ b/juddi-core/src/main/java/org/apache/juddi/model/Node.java
@@ -15,17 +15,9 @@ package org.apache.juddi.model;
  * limitations under the License.
  */
 
-import java.util.List;
-import java.util.Set;
-import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
-import javax.persistence.FetchType;
 import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.ManyToOne;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
 import javax.persistence.Table;
 import javax.persistence.Transient;
 
@@ -36,168 +28,168 @@ import javax.persistence.Transient;
 @Table(name = "j3_node")
 public class Node implements java.io.Serializable {
 
-       @Transient
-       private static final long serialVersionUID = -893203927029468343L;
-       @Id
-       @Column(name="name", nullable = false, length=255)
-       private String name;
-       @Column(name="client_name", nullable = false, length=255)
-       private String clientName;
-       @Column(name="security_url", nullable = false, length=255)
-       private String securityUrl;
-       @Column(name="inquiry_url", nullable = false, length=255)
-       private String inquiryUrl;
-       @Column(name="publish_url", nullable = false, length=255)
-       private String publishUrl;
-       @Column(name="custody_transfer_url", nullable = false, length=255)
-       private String custodyTransferUrl;
-       @Column(name="subscription_url", nullable = false, length=255)
-       private String subscriptionUrl;
-        
-        @Column(name="subscriptionlist_url", nullable = false, length=255)
-       private String subscriptionListenerUrl;
-        @Column(name="replication_url", nullable = true, length=255)
-       private String replicationUrl;
-        @Column(name="proxy_transport", nullable = false, length=255)
-       private String proxyTransport;
-        
-       @Column(name="juddi_api_url", nullable = true, length=255)
-       private String juddiApiUrl;
-       @Column(name="factory_initial", nullable = true, length=255)
-       private String factoryInitial;
-       @Column(name="factory_url_pkgs", nullable = true, length=255)
-       private String factoryURLPkgs;
-       @Column(name="factory_naming_provider", nullable = true, length=255)
-       private String factoryNamingProvider;
-        
-       public Node() {}
-
-       public Node(String custodyTransferUrl, String inquiryUrl,
-                       String juddiApiUrl, String name, String proxyTransport,
-                       String publishUrl, String securityUrl, String 
subscriptionUrl, String replicationURL) {
-               super();
-               this.custodyTransferUrl = custodyTransferUrl;
-               this.inquiryUrl = inquiryUrl;
-               this.juddiApiUrl = juddiApiUrl;
-               this.name = name;
-               this.proxyTransport = proxyTransport;
-               this.publishUrl = publishUrl;
-               this.securityUrl = securityUrl;
-               this.subscriptionUrl = subscriptionUrl;
-                this.replicationUrl=replicationURL;
-       }
-
-       public String getName() {
-               return name;
-       }
-
-       public void setName(String name) {
-               this.name = name;
-       }
-
-       public String getClientName() {
-               return clientName;
-       }
-
-       public void setClientName(String clientName) {
-               this.clientName = clientName;
-       }
-
-       public String getProxyTransport() {
-               return proxyTransport;
-       }
-
-       public void setProxyTransport(String proxyTransport) {
-               this.proxyTransport = proxyTransport;
-       }
-
-       public String getSecurityUrl() {
-               return securityUrl;
-       }
-
-       public void setSecurityUrl(String securityUrl) {
-               this.securityUrl = securityUrl;
-       }
-
-       public String getInquiryUrl() {
-               return inquiryUrl;
-       }
-
-       public void setInquiryUrl(String inquiryUrl) {
-               this.inquiryUrl = inquiryUrl;
-       }
-
-       public String getPublishUrl() {
-               return publishUrl;
-       }
-
-       public void setPublishUrl(String publishUrl) {
-               this.publishUrl = publishUrl;
-       }
-
-       public String getCustodyTransferUrl() {
-               return custodyTransferUrl;
-       }
-
-       public void setCustodyTransferUrl(String custodyTransferUrl) {
-               this.custodyTransferUrl = custodyTransferUrl;
-       }
-
-       public String getSubscriptionUrl() {
-               return subscriptionUrl;
-       }
-
-       public void setSubscriptionUrl(String subscriptionUrl) {
-               this.subscriptionUrl = subscriptionUrl;
-       }
-        
+        @Transient
+        private static final long serialVersionUID = -893203927029468343L;
+        @Id
+        @Column(name = "name", nullable = false, length = 255)
+        private String name;
+        @Column(name = "client_name", nullable = false, length = 255)
+        private String clientName;
+        @Column(name = "security_url", nullable = true, length = 255)
+        private String securityUrl;
+        @Column(name = "inquiry_url", nullable = false, length = 255)
+        private String inquiryUrl;
+        @Column(name = "publish_url", nullable = false, length = 255)
+        private String publishUrl;
+        @Column(name = "custody_transfer_url", nullable = true, length = 255)
+        private String custodyTransferUrl;
+        @Column(name = "subscription_url", nullable = true, length = 255)
+        private String subscriptionUrl;
+
+        @Column(name = "subscriptionlist_url", nullable = true, length = 255)
+        private String subscriptionListenerUrl;
+        @Column(name = "replication_url", nullable = true, length = 255)
+        private String replicationUrl;
+        @Column(name = "proxy_transport", nullable = false, length = 255)
+        private String proxyTransport;
+
+        @Column(name = "juddi_api_url", nullable = true, length = 255)
+        private String juddiApiUrl;
+        @Column(name = "factory_initial", nullable = true, length = 255)
+        private String factoryInitial;
+        @Column(name = "factory_url_pkgs", nullable = true, length = 255)
+        private String factoryURLPkgs;
+        @Column(name = "factory_naming_provider", nullable = true, length = 
255)
+        private String factoryNamingProvider;
+
+        public Node() {
+        }
+
+        public Node(String custodyTransferUrl, String inquiryUrl,
+                String juddiApiUrl, String name, String proxyTransport,
+                String publishUrl, String securityUrl, String subscriptionUrl, 
String replicationURL) {
+                super();
+                this.custodyTransferUrl = custodyTransferUrl;
+                this.inquiryUrl = inquiryUrl;
+                this.juddiApiUrl = juddiApiUrl;
+                this.name = name;
+                this.proxyTransport = proxyTransport;
+                this.publishUrl = publishUrl;
+                this.securityUrl = securityUrl;
+                this.subscriptionUrl = subscriptionUrl;
+                this.replicationUrl = replicationURL;
+        }
+
+        public String getName() {
+                return name;
+        }
+
+        public void setName(String name) {
+                this.name = name;
+        }
+
+        public String getClientName() {
+                return clientName;
+        }
+
+        public void setClientName(String clientName) {
+                this.clientName = clientName;
+        }
+
+        public String getProxyTransport() {
+                return proxyTransport;
+        }
+
+        public void setProxyTransport(String proxyTransport) {
+                this.proxyTransport = proxyTransport;
+        }
+
+        public String getSecurityUrl() {
+                return securityUrl;
+        }
+
+        public void setSecurityUrl(String securityUrl) {
+                this.securityUrl = securityUrl;
+        }
+
+        public String getInquiryUrl() {
+                return inquiryUrl;
+        }
+
+        public void setInquiryUrl(String inquiryUrl) {
+                this.inquiryUrl = inquiryUrl;
+        }
+
+        public String getPublishUrl() {
+                return publishUrl;
+        }
+
+        public void setPublishUrl(String publishUrl) {
+                this.publishUrl = publishUrl;
+        }
+
+        public String getCustodyTransferUrl() {
+                return custodyTransferUrl;
+        }
+
+        public void setCustodyTransferUrl(String custodyTransferUrl) {
+                this.custodyTransferUrl = custodyTransferUrl;
+        }
+
+        public String getSubscriptionUrl() {
+                return subscriptionUrl;
+        }
+
+        public void setSubscriptionUrl(String subscriptionUrl) {
+                this.subscriptionUrl = subscriptionUrl;
+        }
+
         public String getSubscriptionListenerUrl() {
-               return subscriptionListenerUrl;
-       }
+                return subscriptionListenerUrl;
+        }
+
+        public void setSubscriptionListenerUrl(String subscriptionUrl) {
+                this.subscriptionListenerUrl = subscriptionUrl;
+        }
 
-       public void setSubscriptionListenerUrl(String subscriptionUrl) {
-               this.subscriptionListenerUrl = subscriptionUrl;
-       }
         public String getReplicationUrl() {
-               return replicationUrl;
-       }
-
-       public void setReplicationUrl(String replicationUrl) {
-               this.replicationUrl = replicationUrl;
-       }
-
-       public String getJuddiApiUrl() {
-               return juddiApiUrl;
-       }
-
-       public void setJuddiApiUrl(String juddiApiUrl) {
-               this.juddiApiUrl = juddiApiUrl;
-       }
-
-       public String getFactoryInitial() {
-               return factoryInitial;
-       }
-
-       public void setFactoryInitial(String factoryInitial) {
-               this.factoryInitial = factoryInitial;
-       }
-
-       public String getFactoryURLPkgs() {
-               return factoryURLPkgs;
-       }
-
-       public void setFactoryURLPkgs(String factoryURLPkgs) {
-               this.factoryURLPkgs = factoryURLPkgs;
-       }
-
-       public String getFactoryNamingProvider() {
-               return factoryNamingProvider;
-       }
-
-       public void setFactoryNamingProvider(String factoryNamingProvider) {
-               this.factoryNamingProvider = factoryNamingProvider;
-       }
-        
-        
+                return replicationUrl;
+        }
+
+        public void setReplicationUrl(String replicationUrl) {
+                this.replicationUrl = replicationUrl;
+        }
+
+        public String getJuddiApiUrl() {
+                return juddiApiUrl;
+        }
+
+        public void setJuddiApiUrl(String juddiApiUrl) {
+                this.juddiApiUrl = juddiApiUrl;
+        }
+
+        public String getFactoryInitial() {
+                return factoryInitial;
+        }
+
+        public void setFactoryInitial(String factoryInitial) {
+                this.factoryInitial = factoryInitial;
+        }
+
+        public String getFactoryURLPkgs() {
+                return factoryURLPkgs;
+        }
+
+        public void setFactoryURLPkgs(String factoryURLPkgs) {
+                this.factoryURLPkgs = factoryURLPkgs;
+        }
+
+        public String getFactoryNamingProvider() {
+                return factoryNamingProvider;
+        }
+
+        public void setFactoryNamingProvider(String factoryNamingProvider) {
+                this.factoryNamingProvider = factoryNamingProvider;
+        }
 
 }

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/Operator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/model/Operator.java 
b/juddi-core/src/main/java/org/apache/juddi/model/Operator.java
index ef724fb..4420071 100644
--- a/juddi-core/src/main/java/org/apache/juddi/model/Operator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/model/Operator.java
@@ -23,7 +23,11 @@ import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
 import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
 import javax.persistence.OneToMany;
 import javax.persistence.Table;
 
@@ -37,8 +41,19 @@ public class Operator implements Serializable {
         private List<Contact> contact;
         private String soapReplicationURL;
         private List<KeyInfo> keyInfo;
+        Long id;
+        ReplicationConfiguration parent;
+        
+                  @Id
+        @GeneratedValue(strategy = GenerationType.AUTO)
+        public Long getId() {
+                return id;
+        }
 
-        @Id
+        public void setId(Long id) {
+                this.id = id;
+        }
+        @Column(name="operator_node")
         public String getOperatorNodeID() {
                 return operatorNodeID;
         }
@@ -88,5 +103,15 @@ public class Operator implements Serializable {
         public void setKeyInfo(List<KeyInfo> c) {
                 this.keyInfo=c;
         }
-}
-
\ No newline at end of file
+        
+         @ManyToOne(fetch = FetchType.LAZY)
+        @JoinColumn(name = "entity_key_ed", nullable = true)
+        public ReplicationConfiguration getParent() {
+                return this.parent;
+        }
+        
+
+        public void setParent(ReplicationConfiguration e) {
+                this.parent = e;
+        }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfiguration.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfiguration.java 
b/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfiguration.java
index 72c717b..93d0f73 100644
--- 
a/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfiguration.java
+++ 
b/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfiguration.java
@@ -19,27 +19,23 @@ package org.apache.juddi.model;
 import java.io.Serializable;
 import java.math.BigInteger;
 import java.util.ArrayList;
-import java.util.HashSet;
 import java.util.List;
 import javax.persistence.CascadeType;
 import javax.persistence.Column;
 import javax.persistence.Entity;
 import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
 import javax.persistence.Id;
 import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
-import javax.persistence.TableGenerator;
 
 @Entity
 @Table(name = "j3_chg_replconf")
 public class ReplicationConfiguration implements Serializable {
 
         private static final long serialVersionUID = 1L;
-        
+
         private Long serialNumber;
         private String timeOfConfigurationUpdate;
         private List<Operator> operator = new ArrayList<Operator>(0);
@@ -47,6 +43,9 @@ public class ReplicationConfiguration implements Serializable 
{
         private BigInteger maximumTimeToGetChanges;
         private List<Signature> signatures = new ArrayList<Signature>(0);
         private Contact contact;
+        private List<ReplicationConfigurationNode> node;
+        private List<ControlMessage> controlledMessage;
+        private List<Edge> edge;
 
         /**
          * Gets the value of the contact property.
@@ -54,7 +53,8 @@ public class ReplicationConfiguration implements Serializable 
{
          * @return possible object is {@link Contact }
          *
          */
-        @OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY, 
targetEntity = Contact.class)
+        @OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy 
= "replicationConfigId")
+        //@OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY, 
targetEntity = Contact.class, mappedBy = "serialNumber")
         public Contact getContact() {
                 return contact;
         }
@@ -75,7 +75,7 @@ public class ReplicationConfiguration implements Serializable 
{
          */
         @Column(name = "serialnumb")
         @OrderBy(value = "SerialNumber DESC")
-         @Id
+        @Id
         public Long getSerialNumber() {
                 return serialNumber;
         }
@@ -116,14 +116,11 @@ public class ReplicationConfiguration implements 
Serializable {
                 }
                 return this.operator;
         }
-        
-        
-         public void setOperator(List<Operator> v) {
-                
-                this.operator=v;
-        }
 
-      
+        public void setOperator(List<Operator> v) {
+
+                this.operator = v;
+        }
 
         /**
          * Gets the value of the maximumTimeToSyncRegistry property.
@@ -177,26 +174,24 @@ public class ReplicationConfiguration implements 
Serializable {
                 this.signatures = signatures;
         }
 
-        private List<Node> node;
-        private List<ControlMessage> controlledMessage;
-        private List<Edge> edge;
-
         //To use a Node or a String reference...
         //Node will give us strict ref integ but makes a change history of the 
replication config impossible
         //Strig increases code logic for ref integ,but makes chage history 
possible
-        @OneToMany(targetEntity = Node.class, orphanRemoval = false,fetch = 
FetchType.LAZY, cascade = {CascadeType.MERGE, CascadeType.REFRESH, 
CascadeType.PERSIST})
-        public List<Node> getNode() {
+        @OneToMany(targetEntity = ReplicationConfigurationNode.class, fetch = 
FetchType.LAZY, cascade = CascadeType.ALL)
+       // @OneToMany(cascade = {CascadeType.ALL})
+        public List<ReplicationConfigurationNode> getNode() {
                 if (node == null) {
-                        node = new ArrayList<Node>();
+                        node = new ArrayList<ReplicationConfigurationNode>();
                 }
                 return this.node;
         }
 
-        public void setNode(List<Node> nodes) {
+        public void setNode(List<ReplicationConfigurationNode> nodes) {
 
                 this.node = nodes;
         }
 
+        //@javax.persistence.Transient
         @OneToMany(targetEntity = ControlMessage.class, fetch = 
FetchType.LAZY, cascade = CascadeType.ALL)
         public List<ControlMessage> getControlMessage() {
                 if (controlledMessage == null) {
@@ -215,9 +210,8 @@ public class ReplicationConfiguration implements 
Serializable {
         public List<Edge> getEdge() {
                 return this.edge;
         }
-        
-         public void setEdge( List<Edge> edges) {
-                this.edge=edges;
+
+        public void setEdge(List<Edge> edges) {
+                this.edge = edges;
         }
 }
-
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/juddi/blob/22a846dd/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfigurationNode.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfigurationNode.java
 
b/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfigurationNode.java
new file mode 100644
index 0000000..e146375
--- /dev/null
+++ 
b/juddi-core/src/main/java/org/apache/juddi/model/ReplicationConfigurationNode.java
@@ -0,0 +1,72 @@
+/*
+ * Copyright 2014 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.juddi.model;
+
+import java.io.Serializable;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+/**
+ *
+ * @author alex
+ */
+@Entity
+@Table(name = "j3_chg_replconfn")
+public class ReplicationConfigurationNode implements Serializable {
+
+        private static final long serialVersionUID = 1L;
+        private Long id;
+        private ReplicationConfiguration parent;
+        String rx;
+
+        @Id
+        @GeneratedValue(strategy = GenerationType.AUTO)
+        public Long getId() {
+                return id;
+        }
+
+        public void setId(Long id) {
+                this.id = id;
+        }
+
+        @ManyToOne(fetch = FetchType.LAZY)
+        @JoinColumn(name = "entity_key_ed", nullable = false)
+        public ReplicationConfiguration getParent() {
+                return this.parent;
+        }
+        private Edge edge;
+
+        public void setParent(ReplicationConfiguration e) {
+                this.parent = e;
+        }
+
+        @Column
+        public String getNodeName() {
+                return this.rx;
+        }
+
+        public void setNodeName(String s) {
+                this.rx = s;
+        }
+
+}


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to