You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juddi.apache.org by ks...@apache.org on 2014/02/21 17:53:13 UTC
[1/3] git commit: https://issues.apache.org/jira/browse/JUDDI-841
fixing generated key so it uses the publisher's domain
Repository: juddi
Updated Branches:
refs/heads/master 8ecfc7ff4 -> 161d03c06
https://issues.apache.org/jira/browse/JUDDI-841 fixing generated key so it uses the publisher's domain
Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/034954fc
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/034954fc
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/034954fc
Branch: refs/heads/master
Commit: 034954fca5c5e6fef2b1fcd9b1c1b13809dd51cd
Parents: c1a7f8c
Author: Kurt Stam <ks...@apache.org>
Authored: Fri Feb 21 11:52:04 2014 -0500
Committer: Kurt Stam <ks...@apache.org>
Committed: Fri Feb 21 11:52:04 2014 -0500
----------------------------------------------------------------------
.gitignore | 3 ++
juddi-core-openjpa/src/.gitignore | 1 +
juddi-core-openjpa/src/test/.gitignore | 1 +
.../juddi/api/impl/PublicationHelper.java | 3 ++
.../juddi/api/impl/UDDIPublicationImpl.java | 19 ++++----
.../juddi/api/impl/UDDISubscriptionImpl.java | 5 +-
.../juddi/keygen/DefaultKeyGenerator.java | 51 +++++++++++++++++---
.../org/apache/juddi/keygen/KeyGenerator.java | 3 +-
.../juddi/validation/ValidatePublish.java | 48 +++++++++---------
.../juddi/validation/ValidateSubscription.java | 10 ++--
.../juddi/api/impl/UDDIPublicationImplExt.java | 5 +-
.../apache/juddi/keygen/KeyGeneratorTest.java | 16 +++++-
12 files changed, 114 insertions(+), 51 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ea87317
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+target
+*/target/*
+*/derby.log
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core-openjpa/src/.gitignore
----------------------------------------------------------------------
diff --git a/juddi-core-openjpa/src/.gitignore b/juddi-core-openjpa/src/.gitignore
new file mode 100644
index 0000000..95811e0
--- /dev/null
+++ b/juddi-core-openjpa/src/.gitignore
@@ -0,0 +1 @@
+/main
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core-openjpa/src/test/.gitignore
----------------------------------------------------------------------
diff --git a/juddi-core-openjpa/src/test/.gitignore b/juddi-core-openjpa/src/test/.gitignore
new file mode 100644
index 0000000..34dbc45
--- /dev/null
+++ b/juddi-core-openjpa/src/test/.gitignore
@@ -0,0 +1 @@
+java/
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/api/impl/PublicationHelper.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/api/impl/PublicationHelper.java b/juddi-core/src/main/java/org/apache/juddi/api/impl/PublicationHelper.java
index eb99196..d2589ab 100644
--- a/juddi-core/src/main/java/org/apache/juddi/api/impl/PublicationHelper.java
+++ b/juddi-core/src/main/java/org/apache/juddi/api/impl/PublicationHelper.java
@@ -17,6 +17,7 @@
package org.apache.juddi.api.impl;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.List;
import javax.persistence.EntityManager;
@@ -55,5 +56,7 @@ public class PublicationHelper {
return result;
}
+
+
}
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java b/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
index 946becc..2f896ce 100644
--- a/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
+++ b/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDIPublicationImpl.java
@@ -18,6 +18,7 @@
package org.apache.juddi.api.impl;
import java.util.Date;
+import java.util.Iterator;
import java.util.List;
import java.util.ArrayList;
@@ -48,7 +49,6 @@ import org.uddi.api_v3.ServiceDetail;
import org.uddi.api_v3.TModelDetail;
import org.uddi.v3_service.DispositionReportFaultMessage;
import org.uddi.v3_service.UDDIPublicationPortType;
-
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -521,9 +521,9 @@ public class UDDIPublicationImpl extends AuthenticatedService implements UDDIPub
tx.begin();
UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
-
+ publisher.populateKeyGeneratorKeys(em);
ValidatePublish validator = new ValidatePublish(publisher);
- validator.validateSaveBinding(em, body, null);
+ validator.validateSaveBinding(em, body, null, publisher);
BindingDetail result = new BindingDetail();
result.setListDescription(new ListDescription());
@@ -579,9 +579,9 @@ public class UDDIPublicationImpl extends AuthenticatedService implements UDDIPub
tx.begin();
UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
-
+ publisher.populateKeyGeneratorKeys(em);
ValidatePublish validator = new ValidatePublish(publisher);
- validator.validateSaveBusiness(em, body, null);
+ validator.validateSaveBusiness(em, body, null, publisher);
BusinessDetail result = new BusinessDetail();
@@ -632,9 +632,9 @@ public class UDDIPublicationImpl extends AuthenticatedService implements UDDIPub
tx.begin();
UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
-
+ publisher.populateKeyGeneratorKeys(em);
ValidatePublish validator = new ValidatePublish(publisher);
- validator.validateSaveService(em, body, null);
+ validator.validateSaveService(em, body, null, publisher);
ServiceDetail result = new ServiceDetail();
@@ -687,8 +687,8 @@ public class UDDIPublicationImpl extends AuthenticatedService implements UDDIPub
tx.begin();
UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
-
- new ValidatePublish(publisher).validateSaveTModel(em, body, null);
+ publisher.populateKeyGeneratorKeys(em);
+ new ValidatePublish(publisher).validateSaveTModel(em, body, null, publisher);
TModelDetail result = new TModelDetail();
@@ -920,6 +920,5 @@ public class UDDIPublicationImpl extends AuthenticatedService implements UDDIPub
em.remove(existingUddiEntity);
}
-
}
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDISubscriptionImpl.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDISubscriptionImpl.java b/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDISubscriptionImpl.java
index 9936d08..435d236 100644
--- a/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDISubscriptionImpl.java
+++ b/juddi-core/src/main/java/org/apache/juddi/api/impl/UDDISubscriptionImpl.java
@@ -22,6 +22,7 @@ import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;
import java.util.UUID;
+
import javax.jws.WebService;
import javax.persistence.EntityManager;
import javax.persistence.EntityTransaction;
@@ -29,6 +30,7 @@ import javax.xml.bind.JAXBException;
import javax.xml.datatype.DatatypeConfigurationException;
import javax.xml.datatype.DatatypeFactory;
import javax.xml.ws.Holder;
+
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -838,7 +840,8 @@ public class UDDISubscriptionImpl extends AuthenticatedService implements UDDISu
tx.begin();
UddiEntityPublisher publisher = this.getEntityPublisher(em, authInfo);
- new ValidateSubscription(publisher).validateSubscriptions(em, subscription.value);
+ publisher.populateKeyGeneratorKeys(em);
+ new ValidateSubscription(publisher).validateSubscriptions(em, subscription.value, publisher);
List<org.uddi.sub_v3.Subscription> apiSubscriptionList = subscription.value;
for (org.uddi.sub_v3.Subscription apiSubscription : apiSubscriptionList) {
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/keygen/DefaultKeyGenerator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/keygen/DefaultKeyGenerator.java b/juddi-core/src/main/java/org/apache/juddi/keygen/DefaultKeyGenerator.java
index 9ca875a..80c61d0 100644
--- a/juddi-core/src/main/java/org/apache/juddi/keygen/DefaultKeyGenerator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/keygen/DefaultKeyGenerator.java
@@ -17,11 +17,14 @@
package org.apache.juddi.keygen;
+import java.util.Iterator;
+import java.util.List;
import java.util.UUID;
import org.apache.commons.configuration.ConfigurationException;
import org.apache.juddi.config.AppConfig;
import org.apache.juddi.config.Property;
+import org.apache.juddi.model.UddiEntityPublisher;
import org.apache.juddi.v3.error.ErrorMessage;
import org.apache.juddi.v3.error.FatalErrorException;
import org.uddi.v3_service.DispositionReportFaultMessage;
@@ -29,19 +32,51 @@ import org.uddi.v3_service.DispositionReportFaultMessage;
/**
* The default jUDDI key generator. Generates a key like this:
*
+ * uddiScheme : domain : UUID
+ *
+ * where domain is the shortest keyGenerator domain.
+ *
+ * If no domain is set for this publihser, or the publisher is 'uddi' then
+ * it defaults to the RootDomain:
+ *
* uddiScheme : RootDomain : UUID
*
* @author <a href="mailto:jfaath@apache.org">Jeff Faath</a>
*/
public class DefaultKeyGenerator implements KeyGenerator {
- public String generate() throws DispositionReportFaultMessage {
- String rootPartition = "";
- try
- { rootPartition = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PARTITION); }
- catch(ConfigurationException ce)
- { throw new FatalErrorException(new ErrorMessage("errors.configuration.Retrieval", Property.JUDDI_ROOT_PARTITION));}
-
- return rootPartition + PARTITION_SEPARATOR + UUID.randomUUID();
+ public String generate(UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
+ String domain = getDomain(publisher);
+ if (domain==null) {
+ String rootPartition = "";
+ try
+ { rootPartition = AppConfig.getConfiguration().getString(Property.JUDDI_ROOT_PARTITION); }
+ catch(ConfigurationException ce)
+ { throw new FatalErrorException(new ErrorMessage("errors.configuration.Retrieval", Property.JUDDI_ROOT_PARTITION));}
+ domain = rootPartition;
+ }
+ return domain + PARTITION_SEPARATOR + UUID.randomUUID();
}
+
+ public static String getDomain(UddiEntityPublisher publisher) {
+ String domain = null;
+ if (publisher==null || "uddi".equalsIgnoreCase(publisher.getAuthorizedName())) return domain; //default to the rootPartition
+ List<String> domains = publisher.getKeyGeneratorKeys();
+ if (domains!=null && !domains.isEmpty()) {
+ Iterator<String> iter = domains.iterator();
+ int partsMax = 1000;
+ //pick the KeyGenerator with the fewest amount of parts, ignoring the subdomain keys.
+ while (iter.hasNext()) {
+ String thisDomain = iter.next();
+ String[] parts = thisDomain.split(":");
+ if (domain == null || (2 <= parts.length && parts.length < partsMax)) {
+ partsMax = parts.length;
+ domain = thisDomain;
+ }
+ }
+ domain = domain.substring(0, domain.lastIndexOf(":"));
+ }
+ return domain;
+ }
+
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/keygen/KeyGenerator.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/keygen/KeyGenerator.java b/juddi-core/src/main/java/org/apache/juddi/keygen/KeyGenerator.java
index 4e6073c..f9705fa 100644
--- a/juddi-core/src/main/java/org/apache/juddi/keygen/KeyGenerator.java
+++ b/juddi-core/src/main/java/org/apache/juddi/keygen/KeyGenerator.java
@@ -17,6 +17,7 @@
package org.apache.juddi.keygen;
+import org.apache.juddi.model.UddiEntityPublisher;
import org.uddi.v3_service.DispositionReportFaultMessage;
/**
@@ -30,5 +31,5 @@ public interface KeyGenerator {
/*
* Generates a key that is used to save a UDDI entity.
*/
- public String generate() throws DispositionReportFaultMessage;
+ public String generate(UddiEntityPublisher publisher) throws DispositionReportFaultMessage;
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java b/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
index c6e4c3b..be89d4d 100644
--- a/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
+++ b/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
@@ -326,7 +326,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
}
- public void validateSaveBusiness(EntityManager em, SaveBusiness body, Configuration config) throws DispositionReportFaultMessage {
+ public void validateSaveBusiness(EntityManager em, SaveBusiness body, Configuration config, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
if (config == null) {
try {
@@ -347,7 +347,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
for (org.uddi.api_v3.BusinessEntity entity : entityList) {
- validateBusinessEntity(em, entity, config);
+ validateBusinessEntity(em, entity, config, publisher);
}
}
@@ -379,7 +379,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
- public void validateSaveService(EntityManager em, SaveService body, Configuration config) throws DispositionReportFaultMessage {
+ public void validateSaveService(EntityManager em, SaveService body, Configuration config, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
if (config == null) {
try {
@@ -401,7 +401,7 @@ public class ValidatePublish extends ValidateUDDIApi {
for (org.uddi.api_v3.BusinessService entity : entityList) {
// Entity specific data validation
- validateBusinessService(em, entity, null, config);
+ validateBusinessService(em, entity, null, config, publisher);
}
}
@@ -432,7 +432,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
}
- public void validateSaveBinding(EntityManager em, SaveBinding body, Configuration config) throws DispositionReportFaultMessage {
+ public void validateSaveBinding(EntityManager em, SaveBinding body, Configuration config, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
if (config == null) {
try {
@@ -453,7 +453,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
for (org.uddi.api_v3.BindingTemplate entity : entityList) {
- validateBindingTemplate(em, entity, null, config);
+ validateBindingTemplate(em, entity, null, config, publisher);
}
}
@@ -484,7 +484,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
}
- public void validateSaveTModel(EntityManager em, SaveTModel body, Configuration config) throws DispositionReportFaultMessage {
+ public void validateSaveTModel(EntityManager em, SaveTModel body, Configuration config, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
if (config == null) {
try {
@@ -505,7 +505,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
for (org.uddi.api_v3.TModel entity : entityList) {
- validateTModel(em, entity, config);
+ validateTModel(em, entity, config, publisher);
}
}
@@ -642,7 +642,8 @@ public class ValidatePublish extends ValidateUDDIApi {
}
}
- public void validateBusinessEntity(EntityManager em, org.uddi.api_v3.BusinessEntity businessEntity, Configuration config) throws DispositionReportFaultMessage {
+ public void validateBusinessEntity(EntityManager em, org.uddi.api_v3.BusinessEntity businessEntity,
+ Configuration config, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
// A supplied businessEntity can't be null
if (businessEntity == null) {
@@ -654,7 +655,7 @@ public class ValidatePublish extends ValidateUDDIApi {
String entityKey = businessEntity.getBusinessKey();
if (entityKey == null || entityKey.length() == 0) {
KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
- entityKey = keyGen.generate();
+ entityKey = keyGen.generate(publisher);
businessEntity.setBusinessKey(entityKey);
} else {
// Per section 4.4: keys must be case-folded
@@ -696,11 +697,12 @@ public class ValidatePublish extends ValidateUDDIApi {
validateCategoryBag(businessEntity.getCategoryBag(), config, false);
validateIdentifierBag(businessEntity.getIdentifierBag(), config, false);
validateDescriptions(businessEntity.getDescription());
- validateBusinessServices(em, businessEntity.getBusinessServices(), businessEntity, config);
+ validateBusinessServices(em, businessEntity.getBusinessServices(), businessEntity, config, publisher);
}
- public void validateBusinessServices(EntityManager em, org.uddi.api_v3.BusinessServices businessServices, org.uddi.api_v3.BusinessEntity parent, Configuration config)
+ public void validateBusinessServices(EntityManager em, org.uddi.api_v3.BusinessServices businessServices,
+ org.uddi.api_v3.BusinessEntity parent, Configuration config, UddiEntityPublisher publisher)
throws DispositionReportFaultMessage {
// Business services is optional
if (businessServices == null) {
@@ -712,12 +714,13 @@ public class ValidatePublish extends ValidateUDDIApi {
}
for (org.uddi.api_v3.BusinessService businessService : businessServiceList) {
- validateBusinessService(em, businessService, parent, config);
+ validateBusinessService(em, businessService, parent, config, publisher);
}
}
- public void validateBusinessService(EntityManager em, org.uddi.api_v3.BusinessService businessService, org.uddi.api_v3.BusinessEntity parent, Configuration config)
+ public void validateBusinessService(EntityManager em, org.uddi.api_v3.BusinessService businessService,
+ org.uddi.api_v3.BusinessEntity parent, Configuration config, UddiEntityPublisher publisher)
throws DispositionReportFaultMessage {
// A supplied businessService can't be null
@@ -781,7 +784,7 @@ public class ValidatePublish extends ValidateUDDIApi {
boolean entityExists = false;
if (entityKey == null || entityKey.length() == 0) {
KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
- entityKey = keyGen.generate();
+ entityKey = keyGen.generate(publisher);
businessService.setServiceKey(entityKey);
} else {
@@ -866,12 +869,13 @@ public class ValidatePublish extends ValidateUDDIApi {
validateNames(businessService.getName());
validateCategoryBag(businessService.getCategoryBag(), config, false);
validateDescriptions(businessService.getDescription());
- validateBindingTemplates(em, businessService.getBindingTemplates(), businessService, config);
+ validateBindingTemplates(em, businessService.getBindingTemplates(), businessService, config, publisher);
}
}
- public void validateBindingTemplates(EntityManager em, org.uddi.api_v3.BindingTemplates bindingTemplates, org.uddi.api_v3.BusinessService parent, Configuration config)
+ public void validateBindingTemplates(EntityManager em, org.uddi.api_v3.BindingTemplates bindingTemplates,
+ org.uddi.api_v3.BusinessService parent, Configuration config, UddiEntityPublisher publisher)
throws DispositionReportFaultMessage {
// Binding templates is optional
if (bindingTemplates == null) {
@@ -884,13 +888,13 @@ public class ValidatePublish extends ValidateUDDIApi {
}
for (org.uddi.api_v3.BindingTemplate bindingTemplate : bindingTemplateList) {
- validateBindingTemplate(em, bindingTemplate, parent, config);
+ validateBindingTemplate(em, bindingTemplate, parent, config, publisher);
}
}
public void validateBindingTemplate(EntityManager em, org.uddi.api_v3.BindingTemplate bindingTemplate,
- org.uddi.api_v3.BusinessService parent, Configuration config)
+ org.uddi.api_v3.BusinessService parent, Configuration config, UddiEntityPublisher publisher)
throws DispositionReportFaultMessage {
// A supplied bindingTemplate can't be null
@@ -930,7 +934,7 @@ public class ValidatePublish extends ValidateUDDIApi {
if (entityKey == null || entityKey.length() == 0) {
validateNotSigned(bindingTemplate);
KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
- entityKey = keyGen.generate();
+ entityKey = keyGen.generate(publisher);
bindingTemplate.setBindingKey(entityKey);
} else {
@@ -1024,7 +1028,7 @@ public class ValidatePublish extends ValidateUDDIApi {
}
- public void validateTModel(EntityManager em, org.uddi.api_v3.TModel tModel, Configuration config) throws DispositionReportFaultMessage {
+ public void validateTModel(EntityManager em, org.uddi.api_v3.TModel tModel, Configuration config, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
// A supplied tModel can't be null
if (tModel == null) {
throw new ValueNotAllowedException(new ErrorMessage("errors.tmodel.NullInput"));
@@ -1034,7 +1038,7 @@ public class ValidatePublish extends ValidateUDDIApi {
String entityKey = tModel.getTModelKey();
if (entityKey == null || entityKey.length() == 0) {
KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
- entityKey = keyGen.generate();
+ entityKey = keyGen.generate(publisher);
validateNotSigned(tModel);
tModel.setTModelKey(entityKey);
} else {
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java b/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java
index 17f41f4..f334f78 100644
--- a/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java
+++ b/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java
@@ -20,8 +20,6 @@ import java.util.Date;
import java.util.GregorianCalendar;
import java.util.HashSet;
import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
import javax.persistence.EntityManager;
import javax.xml.datatype.DatatypeConfigurationException;
@@ -56,7 +54,7 @@ public class ValidateSubscription extends ValidateUDDIApi {
}
private DatatypeFactory df = null;
- public void validateSubscriptions(EntityManager em, List<org.uddi.sub_v3.Subscription> entityList) throws DispositionReportFaultMessage {
+ public void validateSubscriptions(EntityManager em, List<org.uddi.sub_v3.Subscription> entityList, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
// No null or empty list
if (entityList == null || entityList.size() == 0) {
@@ -64,11 +62,11 @@ public class ValidateSubscription extends ValidateUDDIApi {
}
for (org.uddi.sub_v3.Subscription entity : entityList) {
- validateSubscription(em, entity);
+ validateSubscription(em, entity, publisher);
}
}
- private void validateSubscription(EntityManager em, org.uddi.sub_v3.Subscription subscription) throws DispositionReportFaultMessage {
+ private void validateSubscription(EntityManager em, org.uddi.sub_v3.Subscription subscription, UddiEntityPublisher publisher) throws DispositionReportFaultMessage {
// A supplied subscription can't be null
if (subscription == null) {
@@ -86,7 +84,7 @@ public class ValidateSubscription extends ValidateUDDIApi {
//no key specified, make a new one
if (entityKey == null || entityKey.length() == 0) {
KeyGenerator keyGen = KeyGeneratorFactory.getKeyGenerator();
- entityKey = keyGen.generate();
+ entityKey = keyGen.generate(publisher);
subscription.setSubscriptionKey(entityKey);
} else {
//key specified, validate it
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java b/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java
index 0209aeb..44e0c6d 100644
--- a/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java
+++ b/juddi-core/src/test/java/org/apache/juddi/api/impl/UDDIPublicationImplExt.java
@@ -17,9 +17,11 @@ 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.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.juddi.config.PersistenceManager;
@@ -62,9 +64,8 @@ public class UDDIPublicationImplExt extends UDDIPublicationImpl {
tx.begin();
UddiEntityPublisher publisher = this.getEntityPublisher(em, body.getAuthInfo());
-
ValidatePublish validator = new ValidatePublish(publisher);
- validator.validateSaveBusiness(em, body, null);
+ validator.validateSaveBusiness(em, body, null, publisher);
BusinessDetail result = new BusinessDetail();
http://git-wip-us.apache.org/repos/asf/juddi/blob/034954fc/juddi-core/src/test/java/org/apache/juddi/keygen/KeyGeneratorTest.java
----------------------------------------------------------------------
diff --git a/juddi-core/src/test/java/org/apache/juddi/keygen/KeyGeneratorTest.java b/juddi-core/src/test/java/org/apache/juddi/keygen/KeyGeneratorTest.java
index e8f2336..9a33ff1 100644
--- a/juddi-core/src/test/java/org/apache/juddi/keygen/KeyGeneratorTest.java
+++ b/juddi-core/src/test/java/org/apache/juddi/keygen/KeyGeneratorTest.java
@@ -14,10 +14,14 @@
*/
package org.apache.juddi.keygen;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.juddi.config.Property;
+import org.apache.juddi.model.UddiEntityPublisher;
import org.junit.Assert;
import org.junit.Test;
@@ -70,8 +74,18 @@ public class KeyGeneratorTest
try {
KeyGenerator keyGenerator = KeyGeneratorFactory.forceNewKeyGenerator();
Assert.assertEquals(org.apache.juddi.keygen.DefaultKeyGenerator.class, keyGenerator.getClass());
- String key = keyGenerator.generate();
+ String key = keyGenerator.generate(null);
Assert.assertNotNull(key);
+ Assert.assertTrue(key.startsWith("uddi:juddi.apache.org"));
+ UddiEntityPublisher publisher = new UddiEntityPublisher();
+
+ List<String> keyGeneratorKeys = new ArrayList<String>();
+ keyGeneratorKeys.add("uddi:mydomain.org:keyGenerator");
+ publisher.setKeyGeneratorKeys(keyGeneratorKeys);
+ String key2 = keyGenerator.generate(publisher);
+ Assert.assertNotNull(key2);
+ Assert.assertTrue(key2.startsWith("uddi:mydomain.org"));
+
} catch (Exception e) {
logger.error(e.getMessage(),e);
Assert.fail("unexpected");
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org
[3/3] git commit: merge
Posted by ks...@apache.org.
merge
Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/161d03c0
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/161d03c0
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/161d03c0
Branch: refs/heads/master
Commit: 161d03c069483fc188382fa241efed4e3535e982
Parents: 471a3a6 8ecfc7f
Author: Kurt Stam <ks...@apache.org>
Authored: Fri Feb 21 11:53:01 2014 -0500
Committer: Kurt Stam <ks...@apache.org>
Committed: Fri Feb 21 11:53:01 2014 -0500
----------------------------------------------------------------------
.../main/java/org/apache/juddi/validation/ValidatePublish.java | 3 +++
1 file changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/juddi/blob/161d03c0/juddi-core/src/main/java/org/apache/juddi/validation/ValidatePublish.java
----------------------------------------------------------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org
[2/3] git commit: adding to ignore
Posted by ks...@apache.org.
adding to ignore
Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/471a3a6f
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/471a3a6f
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/471a3a6f
Branch: refs/heads/master
Commit: 471a3a6f0fe4a09902c09ad0dc084f552db0ec4e
Parents: 034954f
Author: Kurt Stam <ks...@apache.org>
Authored: Fri Feb 21 11:52:35 2014 -0500
Committer: Kurt Stam <ks...@apache.org>
Committed: Fri Feb 21 11:52:35 2014 -0500
----------------------------------------------------------------------
.gitignore | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/juddi/blob/471a3a6f/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index ea87317..c1a69fd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,6 @@
target
-*/target/*
-*/derby.log
+**/target/*
+**/derby.log
+**/.project
+**/.classpath
+**/.settings/*
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@juddi.apache.org
For additional commands, e-mail: commits-help@juddi.apache.org