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 19:43:51 UTC
svn commit: r1546766 - in /juddi/branches/juddi-3.3.x/juddi-core/src:
main/java/org/apache/juddi/api/impl/ main/java/org/apache/juddi/config/
main/java/org/apache/juddi/mapping/ test/java/org/apache/juddi/api/impl/
Author: alexoree
Date: Sat Nov 30 18:43:51 2013
New Revision: 1546766
URL: http://svn.apache.org/r1546766
Log:
JUDDI-727 reverting a number of changes from the previous commit, they were unnecessary. test case added
Modified:
juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/AuthenticatedService.java
juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/config/Install.java
juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_030_BusinessEntityTest.java
juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/AuthenticatedService.java
URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/AuthenticatedService.java?rev=1546766&r1=1546765&r2=1546766&view=diff
==============================================================================
--- juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/AuthenticatedService.java (original)
+++ juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/AuthenticatedService.java Sat Nov 30 18:43:51 2013
@@ -181,34 +181,4 @@ public abstract class AuthenticatedServi
}
return null;
}
-
- /**
- * Returns the current node id for multi-node UDDI registries via replication
- * @return
- */
- public String getThisNodeID() {
- try {
- AppConfig.getInstance();
- return AppConfig.getConfiguration().getString(Property.JUDDI_NODE_ID, GetHostname());
- } catch (Exception ex) {
- logger.error("Unable to determine the current node id, check juddiv3.xml config file! Defaulting to " + UNKNOWN,ex);
- }
- return UNKNOWN;
- }
-
- public static final String UNKNOWN="UNKNOWN";
-
- /**
- * Gets the current hostname
- * @return
- */
- public static String GetHostname(){
- try {
- return InetAddress.getLocalHost().getHostName();
- } catch (Exception ex) {
- logger.info("Unable to determine hostname, defaulting to " + UNKNOWN);
- logger.debug("Unable to determine hostname, defaulting to "+UNKNOWN,ex);
- }
- return UNKNOWN;
- }
}
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java?rev=1546766&r1=1546765&r2=1546766&view=diff
==============================================================================
--- juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java (original)
+++ juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java Sat Nov 30 18:43:51 2013
@@ -536,7 +536,7 @@ public class UDDIPublicationImpl extends
org.apache.juddi.model.BusinessService modelBusinessService = new org.apache.juddi.model.BusinessService();
modelBusinessService.setEntityKey(apiBindingTemplate.getServiceKey());
- MappingApiToModel.mapBindingTemplate(apiBindingTemplate, modelBindingTemplate, modelBusinessService,this.getThisNodeID());
+ MappingApiToModel.mapBindingTemplate(apiBindingTemplate, modelBindingTemplate, modelBusinessService);
setOperationalInfo(em, modelBindingTemplate, publisher, false);
@@ -590,7 +590,7 @@ public class UDDIPublicationImpl extends
org.apache.juddi.model.BusinessEntity modelBusinessEntity = new org.apache.juddi.model.BusinessEntity();
- MappingApiToModel.mapBusinessEntity(apiBusinessEntity, modelBusinessEntity,this.getThisNodeID());
+ MappingApiToModel.mapBusinessEntity(apiBusinessEntity, modelBusinessEntity);
setOperationalInfo(em, modelBusinessEntity, publisher);
@@ -645,7 +645,7 @@ public class UDDIPublicationImpl extends
org.apache.juddi.model.BusinessEntity modelBusinessEntity = new org.apache.juddi.model.BusinessEntity();
modelBusinessEntity.setEntityKey(apiBusinessService.getBusinessKey());
- MappingApiToModel.mapBusinessService(apiBusinessService, modelBusinessService, modelBusinessEntity, this.getThisNodeID());
+ MappingApiToModel.mapBusinessService(apiBusinessService, modelBusinessService, modelBusinessEntity);
setOperationalInfo(em, modelBusinessService, publisher, false);
@@ -697,7 +697,7 @@ public class UDDIPublicationImpl extends
org.apache.juddi.model.Tmodel modelTModel = new org.apache.juddi.model.Tmodel();
- MappingApiToModel.mapTModel(apiTModel, modelTModel,this.getThisNodeID());
+ MappingApiToModel.mapTModel(apiTModel, modelTModel);
setOperationalInfo(em, modelTModel, publisher);
@@ -921,8 +921,5 @@ public class UDDIPublicationImpl extends
}
- private void setNodeID(UddiEntity e) {
- e.setNodeId(this.getThisNodeID());
- }
}
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/config/Install.java
URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/config/Install.java?rev=1546766&r1=1546765&r2=1546766&view=diff
==============================================================================
--- juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/config/Install.java (original)
+++ juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/config/Install.java Sat Nov 30 18:43:51 2013
@@ -269,10 +269,10 @@ public class Install {
if (isRoot) validateRootBusinessEntity(rootBusinessEntity, rootPublisher, rootPartition, config);
org.apache.juddi.model.BusinessEntity modelBusinessEntity = new org.apache.juddi.model.BusinessEntity();
- MappingApiToModel.mapBusinessEntity(rootBusinessEntity, modelBusinessEntity, nodeId);
+ MappingApiToModel.mapBusinessEntity(rootBusinessEntity, modelBusinessEntity);
modelBusinessEntity.setAuthorizedName(rootPublisher.getAuthorizedName());
-
+ modelBusinessEntity.setNodeId(nodeId);
Date now = new Date();
modelBusinessEntity.setCreated(now);
modelBusinessEntity.setModified(now);
@@ -284,22 +284,22 @@ public class Install {
for (org.apache.juddi.model.BusinessService service : modelBusinessEntity.getBusinessServices()) {
service.setAuthorizedName(rootPublisher.getAuthorizedName());
-
+ service.setNodeId(nodeId);
service.setCreated(now);
service.setModified(now);
service.setModifiedIncludingChildren(now);
//JUDDI-645
- service.setNodeId(config.getString(Property.JUDDI_NODE_ID,modelBusinessEntity.getEntityKey()));
+ //service.setNodeId(config.getString(Property.JUDDI_NODE_ID,modelBusinessEntity.getEntityKey()));
//service.setNodeId(modelBusinessEntity.getEntityKey());
for (org.apache.juddi.model.BindingTemplate binding : service.getBindingTemplates()) {
binding.setAuthorizedName(rootPublisher.getAuthorizedName());
-
+ binding.setNodeId(nodeId);
binding.setCreated(now);
binding.setModified(now);
binding.setModifiedIncludingChildren(now);
//binding.setNodeId(modelBusinessEntity.getEntityKey());
- binding.setNodeId(config.getString(Property.JUDDI_NODE_ID,modelBusinessEntity.getEntityKey()));
+ //binding.setNodeId(config.getString(Property.JUDDI_NODE_ID,modelBusinessEntity.getEntityKey()));
//JUDDI-645
}
@@ -469,7 +469,7 @@ public class Install {
org.apache.juddi.model.Tmodel modelTModel = new org.apache.juddi.model.Tmodel();
apiTModel.setTModelKey(apiTModel.getTModelKey().toLowerCase());
- MappingApiToModel.mapTModel(apiTModel, modelTModel,nodeId);
+ MappingApiToModel.mapTModel(apiTModel, modelTModel);
modelTModel.setAuthorizedName(publisher.getAuthorizedName());
@@ -498,7 +498,7 @@ public class Install {
private static void installPublisherKeyGen(EntityManager em, TModel apiTModel, UddiEntityPublisher publisher, String nodeId) throws DispositionReportFaultMessage {
org.apache.juddi.model.Tmodel modelTModel = new org.apache.juddi.model.Tmodel();
- MappingApiToModel.mapTModel(apiTModel, modelTModel,nodeId);
+ MappingApiToModel.mapTModel(apiTModel, modelTModel);
modelTModel.setAuthorizedName(publisher.getAuthorizedName());
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java
URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java?rev=1546766&r1=1546765&r2=1546766&view=diff
==============================================================================
--- juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java (original)
+++ juddi/branches/juddi-3.3.x/juddi-core/src/main/java/org/apache/juddi/mapping/MappingApiToModel.java Sat Nov 30 18:43:51 2013
@@ -104,7 +104,7 @@ public class MappingApiToModel {
* @throws DispositionReportFaultMessage
*/
public static void mapBusinessEntity(org.uddi.api_v3.BusinessEntity apiBusinessEntity,
- org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+ org.apache.juddi.model.BusinessEntity modelBusinessEntity)
throws DispositionReportFaultMessage {
modelBusinessEntity.setEntityKey(apiBusinessEntity.getBusinessKey());
@@ -122,9 +122,9 @@ public class MappingApiToModel {
mapBusinessServices(apiBusinessEntity.getBusinessServices(),
modelBusinessEntity.getBusinessServices(),
modelBusinessEntity.getServiceProjections(),
- modelBusinessEntity, node);
+ modelBusinessEntity);
- mapBusinessSignature(apiBusinessEntity.getSignature(), modelBusinessEntity, node);
+ mapBusinessSignature(apiBusinessEntity.getSignature(), modelBusinessEntity);
}
private static List<Signature> mapApiSignaturesToModelSignatures(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures)
@@ -285,7 +285,7 @@ public class MappingApiToModel {
* @throws DispositionReportFaultMessage
*/
public static void mapBusinessSignature(List<org.w3._2000._09.xmldsig_.SignatureType> apiSignatures,
- org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+ org.apache.juddi.model.BusinessEntity modelBusinessEntity)
throws DispositionReportFaultMessage {
List<Signature> modelSignatures = mapApiSignaturesToModelSignatures(apiSignatures);
for (Signature modelSignature : modelSignatures) {
@@ -543,15 +543,13 @@ public class MappingApiToModel {
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)
+ org.apache.juddi.model.BusinessEntity modelBusinessEntity)
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
@@ -562,7 +560,7 @@ public class MappingApiToModel {
modelServiceProjectionList.add(modelServiceProjection);
} else {
- mapBusinessService(apiBusinessService, modelBusinessService, modelBusinessEntity, node);
+ mapBusinessService(apiBusinessService, modelBusinessService, modelBusinessEntity);
modelBusinessServiceList.add(modelBusinessService);
}
}
@@ -579,11 +577,9 @@ public class MappingApiToModel {
*/
public static void mapBusinessService(org.uddi.api_v3.BusinessService apiBusinessService,
org.apache.juddi.model.BusinessService modelBusinessService,
- org.apache.juddi.model.BusinessEntity modelBusinessEntity, String node)
+ org.apache.juddi.model.BusinessEntity modelBusinessEntity)
throws DispositionReportFaultMessage {
- modelBusinessService.setNodeId(node);
- modelBusinessEntity.setNodeId(node);
modelBusinessService.setBusinessEntity(modelBusinessEntity);
modelBusinessService.setEntityKey(apiBusinessService.getServiceKey());
@@ -594,7 +590,7 @@ public class MappingApiToModel {
mapCategoryBag(apiBusinessService.getCategoryBag(), modelBusinessService.getCategoryBag());
}
- mapBindingTemplates(apiBusinessService.getBindingTemplates(), modelBusinessService.getBindingTemplates(), modelBusinessService, node);
+ mapBindingTemplates(apiBusinessService.getBindingTemplates(), modelBusinessService.getBindingTemplates(), modelBusinessService);
mapBusinessServiceSignature(apiBusinessService.getSignature(), modelBusinessService);
}
@@ -644,7 +640,7 @@ public class MappingApiToModel {
*/
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)
+ org.apache.juddi.model.BusinessService modelBusinessService)
throws DispositionReportFaultMessage {
modelBindingTemplateList.clear();
@@ -653,7 +649,7 @@ public class MappingApiToModel {
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);
+ mapBindingTemplate(apiBindingTemplate, modelBindingTemplate, modelBusinessService);
modelBindingTemplateList.add(modelBindingTemplate);
}
@@ -670,7 +666,7 @@ public class MappingApiToModel {
*/
public static void mapBindingTemplate(org.uddi.api_v3.BindingTemplate apiBindingTemplate,
org.apache.juddi.model.BindingTemplate modelBindingTemplate,
- org.apache.juddi.model.BusinessService modelBusinessService, String node)
+ org.apache.juddi.model.BusinessService modelBusinessService)
throws DispositionReportFaultMessage {
modelBindingTemplate.setBusinessService(modelBusinessService);
@@ -886,14 +882,13 @@ public class MappingApiToModel {
* @throws DispositionReportFaultMessage
*/
public static void mapTModel(org.uddi.api_v3.TModel apiTModel,
- org.apache.juddi.model.Tmodel modelTModel, String node)
+ 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());
- modelTModel.setNodeId(node);
mapTModelDescriptions(apiTModel.getDescription(), modelTModel.getTmodelDescrs(), modelTModel);
mapTModelIdentifiers(apiTModel.getIdentifierBag(), modelTModel.getTmodelIdentifiers(), modelTModel);
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_030_BusinessEntityTest.java
URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_030_BusinessEntityTest.java?rev=1546766&r1=1546765&r2=1546766&view=diff
==============================================================================
--- juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_030_BusinessEntityTest.java (original)
+++ juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/API_030_BusinessEntityTest.java Sat Nov 30 18:43:51 2013
@@ -15,11 +15,13 @@
package org.apache.juddi.api.impl;
import java.rmi.RemoteException;
+import java.util.UUID;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.juddi.Registry;
+import org.apache.juddi.auth.MockWebServiceContext;
import org.apache.juddi.v3.tck.TckBusiness;
import org.apache.juddi.v3.tck.TckFindEntity;
import org.apache.juddi.v3.tck.TckPublisher;
@@ -29,93 +31,128 @@ import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Test;
+import org.uddi.api_v3.BusinessDetail;
+import org.uddi.api_v3.BusinessEntity;
+import org.uddi.api_v3.Name;
+import org.uddi.api_v3.SaveBusiness;
import org.uddi.v3_service.UDDISecurityPortType;
/**
* @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:alexoree@apache.org">Alex O'Ree</a>
*/
public class API_030_BusinessEntityTest {
-
- private static Log logger = LogFactory.getLog(API_030_BusinessEntityTest.class);
-
- private static API_010_PublisherTest api010 = new API_010_PublisherTest();
- private static TckTModel tckTModel = new TckTModel(new UDDIPublicationImpl(), new UDDIInquiryImpl());
- private static TckBusiness tckBusiness = new TckBusiness(new UDDIPublicationImpl(), new UDDIInquiryImpl());
- private static TckFindEntity tckFindEntity = new TckFindEntity(new UDDIInquiryImpl());
- private static String authInfoJoe = null;
- private static String authInfoSam = null;
-
- @BeforeClass
- public static void setup() throws ConfigurationException {
- Registry.start();
- logger.debug("Getting auth token..");
- try {
- api010.saveJoePublisher();
- api010.saveSamSyndicator();
- UDDISecurityPortType security = new UDDISecurityImpl();
- authInfoJoe = TckSecurity.getAuthToken(security, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
- authInfoSam = TckSecurity.getAuthToken(security, TckPublisher.getSamPublisherId(), TckPublisher.getSamPassword());
- String authInfoUDDI = TckSecurity.getAuthToken(security, TckPublisher.getUDDIPublisherId(), TckPublisher.getUDDIPassword());
- tckTModel.saveUDDIPublisherTmodel(authInfoUDDI);
- tckTModel.saveTModels(authInfoUDDI, TckTModel.TMODELS_XML);
- } catch (RemoteException e) {
- logger.error(e.getMessage(), e);
- Assert.fail("Could not obtain authInfo token.");
- }
- }
-
- @AfterClass
- public static void stopRegistry() throws ConfigurationException {
- Registry.stop();
- }
-
- @Test
- public void testJoePublisherBusinessEntity() {
- try {
- tckTModel.saveJoePublisherTmodel(authInfoJoe);
-
- tckBusiness.saveJoePublisherBusiness(authInfoJoe);
- tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
- } catch (Exception e) {
- e.printStackTrace();
-
- } finally {
- tckTModel.deleteJoePublisherTmodel(authInfoJoe);
- }
- }
-
- @Test
- public void testSamSyndicatorBusiness() {
- try {
- tckTModel.saveSamSyndicatorTmodel(authInfoSam);
- tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
- tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
- } finally {
- tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
- }
- }
-
- @Test
- public void testJoePublisherBusinessEntitySignature() {
- try {
- tckTModel.saveJoePublisherTmodel(authInfoJoe);
- tckBusiness.saveJoePublisherBusinessX509Signature(authInfoJoe);
- tckFindEntity.findAllBusiness();
- tckTModel.saveSamSyndicatorTmodel(authInfoSam);
- tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
-
- //find the signed business
- tckFindEntity.findAllSignedBusiness();
-
- tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
- tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
-
- } finally {
- tckTModel.deleteJoePublisherTmodel(authInfoJoe);
- tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
- }
- }
-
-
+
+ private static Log logger = LogFactory.getLog(API_030_BusinessEntityTest.class);
+ private static API_010_PublisherTest api010 = new API_010_PublisherTest();
+ private static TckTModel tckTModel = new TckTModel(new UDDIPublicationImpl(), new UDDIInquiryImpl());
+ private static TckBusiness tckBusiness = new TckBusiness(new UDDIPublicationImpl(), new UDDIInquiryImpl());
+ private static TckFindEntity tckFindEntity = new TckFindEntity(new UDDIInquiryImpl());
+ private static String authInfoJoe = null;
+ private static String authInfoSam = null;
+
+ @BeforeClass
+ public static void setup() throws ConfigurationException {
+ Registry.start();
+ logger.debug("Getting auth token..");
+ try {
+ api010.saveJoePublisher();
+ api010.saveSamSyndicator();
+ UDDISecurityPortType security = new UDDISecurityImpl();
+ authInfoJoe = TckSecurity.getAuthToken(security, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
+ authInfoSam = TckSecurity.getAuthToken(security, TckPublisher.getSamPublisherId(), TckPublisher.getSamPassword());
+ String authInfoUDDI = TckSecurity.getAuthToken(security, TckPublisher.getUDDIPublisherId(), TckPublisher.getUDDIPassword());
+ tckTModel.saveUDDIPublisherTmodel(authInfoUDDI);
+ tckTModel.saveTModels(authInfoUDDI, TckTModel.TMODELS_XML);
+ } catch (RemoteException e) {
+ logger.error(e.getMessage(), e);
+ Assert.fail("Could not obtain authInfo token.");
+ }
+ }
+
+ @AfterClass
+ public static void stopRegistry() throws ConfigurationException {
+ Registry.stop();
+ }
+
+ @Test
+ public void testJoePublisherBusinessEntity() {
+ try {
+ tckTModel.saveJoePublisherTmodel(authInfoJoe);
+
+ tckBusiness.saveJoePublisherBusiness(authInfoJoe);
+ tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
+ } catch (Exception e) {
+ e.printStackTrace();
+
+ } finally {
+ tckTModel.deleteJoePublisherTmodel(authInfoJoe);
+ }
+ }
+
+ @Test
+ public void testSamSyndicatorBusiness() {
+ try {
+ tckTModel.saveSamSyndicatorTmodel(authInfoSam);
+ tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
+ tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
+ } finally {
+ tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
+ }
+ }
+
+ @Test
+ public void testJoePublisherBusinessEntitySignature() {
+ try {
+ tckTModel.saveJoePublisherTmodel(authInfoJoe);
+ tckBusiness.saveJoePublisherBusinessX509Signature(authInfoJoe);
+ tckFindEntity.findAllBusiness();
+ tckTModel.saveSamSyndicatorTmodel(authInfoSam);
+ tckBusiness.saveSamSyndicatorBusiness(authInfoSam);
+
+ //find the signed business
+ tckFindEntity.findAllSignedBusiness();
+
+ tckBusiness.deleteSamSyndicatorBusiness(authInfoSam);
+ tckBusiness.deleteJoePublisherBusiness(authInfoJoe);
+
+ } finally {
+ tckTModel.deleteJoePublisherTmodel(authInfoJoe);
+ tckTModel.deleteSamSyndicatorTmodel(authInfoSam);
+ }
+ }
+
+ /**
+ * simulates a multinode registry via replication and attempts to save
+ * content that is owned by another node.
+ *
+ * @throws Exception
+ */
+ @Test
+ public void testJIRA727() throws Exception {
+ UDDIPublicationImplExt pubRemoteNode = new UDDIPublicationImplExt(new MockWebServiceContext(null));
+ UDDIPublicationImpl pubLocalNode = new UDDIPublicationImpl();
+ UDDISecurityPortType security = new UDDISecurityImpl();
+ authInfoJoe = TckSecurity.getAuthToken(security, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
+ SaveBusiness sb = new SaveBusiness();
+ sb.setAuthInfo(authInfoJoe);
+ BusinessEntity be = new BusinessEntity();
+ be.getName().add(new Name("testJIRA727", "en"));
+ String node = "testJIRA727Node" + UUID.randomUUID().toString();
+ sb.getBusinessEntity().add(be);
+ BusinessDetail saveBusinessFudge = pubRemoteNode.saveBusinessFudge(sb, node);
+
+ sb = new SaveBusiness();
+ sb.setAuthInfo(authInfoJoe);
+ sb.getBusinessEntity().add(saveBusinessFudge.getBusinessEntity().get(0));
+ try {
+ saveBusinessFudge = pubLocalNode.saveBusiness(sb);
+ Assert.fail("unexpected success");
+ } catch (Exception ex) {
+ logger.warn(ex.getMessage());
+ logger.debug(ex);
+ }
+
+ }
}
Modified: juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java
URL: http://svn.apache.org/viewvc/juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java?rev=1546766&r1=1546765&r2=1546766&view=diff
==============================================================================
--- juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java (original)
+++ juddi/branches/juddi-3.3.x/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java Sat Nov 30 18:43:51 2013
@@ -15,25 +15,203 @@
*/
package org.apache.juddi.api.impl;
+import java.util.Date;
+import java.util.List;
+import javax.persistence.EntityManager;
+import javax.persistence.EntityTransaction;
import javax.xml.ws.WebServiceContext;
-import org.apache.juddi.api.impl.ServiceCounterLifecycleResource;
-import org.apache.juddi.api.impl.UDDIPublicationImpl;
-import org.apache.juddi.api.impl.UDDIPublicationImpl;
-import org.apache.juddi.api.impl.UDDISecurityImpl;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.juddi.config.PersistenceManager;
+import org.apache.juddi.mapping.MappingApiToModel;
+import org.apache.juddi.model.UddiEntityPublisher;
+import org.apache.juddi.validation.ValidatePublish;
+import org.uddi.api_v3.BusinessDetail;
+import org.uddi.api_v3.SaveBusiness;
+import org.uddi.v3_service.DispositionReportFaultMessage;
/**
+ * This class is for testing purposes only and enables you to override the
+ * requestor's ip address
*
* @author Alex O'Ree
*/
public class UDDIPublicationImplExt extends UDDIPublicationImpl {
- /**
- * used for unit tests only
- *
- * @param ctx
- */
- protected UDDIPublicationImplExt(WebServiceContext ctx) {
- super();
- this.ctx = ctx;
- }
+ /**
+ * used for unit tests only
+ *
+ * @param ctx
+ */
+ protected UDDIPublicationImplExt(WebServiceContext ctx) {
+ super();
+ this.ctx = ctx;
+ }
+ Log log = LogFactory.getLog(UDDIPublicationImplExt.class);
+
+ private String nodeId="";
+ public BusinessDetail saveBusinessFudge(SaveBusiness body, String nodeID)
+ throws DispositionReportFaultMessage {
+
+ if (!body.getBusinessEntity().isEmpty()) {
+ log.debug("Inbound save business Fudger request for key " + body.getBusinessEntity().get(0).getBusinessKey());
+ }
+ EntityManager em = PersistenceManager.getEntityManager();
+ EntityTransaction tx = em.getTransaction();
+ try {
+ tx.begin();
+
+ UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
+
+ ValidatePublish validator = new ValidatePublish(publisher);
+ validator.validateSaveBusiness(em, body, null);
+
+ BusinessDetail result = new BusinessDetail();
+
+ List<org.uddi.api_v3.BusinessEntity> apiBusinessEntityList = body.getBusinessEntity();
+ for (org.uddi.api_v3.BusinessEntity apiBusinessEntity : apiBusinessEntityList) {
+
+ org.apache.juddi.model.BusinessEntity modelBusinessEntity = new org.apache.juddi.model.BusinessEntity();
+
+
+ MappingApiToModel.mapBusinessEntity(apiBusinessEntity, modelBusinessEntity);
+ nodeId = nodeID;
+
+ setOperationalInfo(em, modelBusinessEntity, publisher);
+
+ em.persist(modelBusinessEntity);
+
+ result.getBusinessEntity().add(apiBusinessEntity);
+ }
+
+ //check how many business this publisher owns.
+ validator.validateSaveBusinessMax(em);
+
+ tx.commit();
+
+ return result;
+ } catch (DispositionReportFaultMessage drfm) {
+
+ throw drfm;
+ } finally {
+ if (tx.isActive()) {
+ tx.rollback();
+ }
+ em.close();
+ }
+ }
+
+ private void setOperationalInfo(EntityManager em, org.apache.juddi.model.BusinessEntity uddiEntity, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
+
+ uddiEntity.setAuthorizedName(publisher.getAuthorizedName());
+
+ Date now = new Date();
+ uddiEntity.setModified(now);
+ uddiEntity.setModifiedIncludingChildren(now);
+
+
+ uddiEntity.setNodeId(nodeId);
+
+ org.apache.juddi.model.BusinessEntity existingUddiEntity = em.find(uddiEntity.getClass(), uddiEntity.getEntityKey());
+ if (existingUddiEntity != null)
+ uddiEntity.setCreated(existingUddiEntity.getCreated());
+ else
+ uddiEntity.setCreated(now);
+
+ List<org.apache.juddi.model.BusinessService> serviceList = uddiEntity.getBusinessServices();
+ for (org.apache.juddi.model.BusinessService service : serviceList)
+ setOperationalInfo(em, service, publisher, true);
+
+
+ if (existingUddiEntity != null)
+ em.remove(existingUddiEntity);
+
+ }
+
+ private void setOperationalInfo(EntityManager em, org.apache.juddi.model.BusinessService uddiEntity, UddiEntityPublisher publisher, boolean isChild) throws DispositionReportFaultMessage {
+
+ uddiEntity.setAuthorizedName(publisher.getAuthorizedName());
+
+ Date now = new Date();
+ uddiEntity.setModified(now);
+ uddiEntity.setModifiedIncludingChildren(now);
+
+ if(!isChild) {
+ org.apache.juddi.model.BusinessEntity parent = em.find(org.apache.juddi.model.BusinessEntity.class, uddiEntity.getBusinessEntity().getEntityKey());
+ parent.setModifiedIncludingChildren(now);
+ em.persist(parent);
+ }
+
+ uddiEntity.setNodeId(nodeId);
+
+ org.apache.juddi.model.BusinessService existingUddiEntity = em.find(uddiEntity.getClass(), uddiEntity.getEntityKey());
+ if (existingUddiEntity != null) {
+ uddiEntity.setCreated(existingUddiEntity.getCreated());
+ }
+ else
+ uddiEntity.setCreated(now);
+
+ List<org.apache.juddi.model.BindingTemplate> bindingList = uddiEntity.getBindingTemplates();
+ for (org.apache.juddi.model.BindingTemplate binding : bindingList)
+ setOperationalInfo(em, binding, publisher, true);
+
+
+ if (existingUddiEntity != null)
+ em.remove(existingUddiEntity);
+
+ }
+
+ private void setOperationalInfo(EntityManager em, org.apache.juddi.model.BindingTemplate uddiEntity, UddiEntityPublisher publisher, boolean isChild) throws DispositionReportFaultMessage {
+
+ uddiEntity.setAuthorizedName(publisher.getAuthorizedName());
+
+ Date now = new Date();
+ uddiEntity.setModified(now);
+ uddiEntity.setModifiedIncludingChildren(now);
+
+ if(!isChild) {
+ org.apache.juddi.model.BusinessService parent = em.find(org.apache.juddi.model.BusinessService.class, uddiEntity.getBusinessService().getEntityKey());
+ parent.setModifiedIncludingChildren(now);
+ em.persist(parent);
+
+ // JUDDI-421: now the businessEntity parent will have it's modifiedIncludingChildren set
+ org.apache.juddi.model.BusinessEntity businessParent = em.find(org.apache.juddi.model.BusinessEntity.class, parent.getBusinessEntity().getEntityKey());
+ businessParent.setModifiedIncludingChildren(now);
+ em.persist(businessParent);
+ }
+
+ uddiEntity.setNodeId(nodeId);
+
+ org.apache.juddi.model.BindingTemplate existingUddiEntity = em.find(uddiEntity.getClass(), uddiEntity.getEntityKey());
+ if (existingUddiEntity != null)
+ uddiEntity.setCreated(existingUddiEntity.getCreated());
+ else
+ uddiEntity.setCreated(now);
+
+ if (existingUddiEntity != null)
+ em.remove(existingUddiEntity);
+
+ }
+
+ private void setOperationalInfo(EntityManager em, org.apache.juddi.model.Tmodel uddiEntity, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
+
+ uddiEntity.setAuthorizedName(publisher.getAuthorizedName());
+
+ Date now = new Date();
+ uddiEntity.setModified(now);
+ uddiEntity.setModifiedIncludingChildren(now);
+
+ uddiEntity.setNodeId(nodeId);
+
+ org.apache.juddi.model.Tmodel existingUddiEntity = em.find(uddiEntity.getClass(), uddiEntity.getEntityKey());
+ if (existingUddiEntity != null)
+ uddiEntity.setCreated(existingUddiEntity.getCreated());
+ else
+ uddiEntity.setCreated(now);
+
+ if (existingUddiEntity != null)
+ em.remove(existingUddiEntity);
+
+ }
+
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org