Repository: juddi
Updated Branches:
  refs/heads/master 15ed423ba -> 8f7c669da


JUDDI-881 filtering is now reenabled, load tests are now performed during junit 
test executing and are still skipped during the tck tests. Performance doesn't 
appeared to be too affected


Project: http://git-wip-us.apache.org/repos/asf/juddi/repo
Commit: http://git-wip-us.apache.org/repos/asf/juddi/commit/8f7c669d
Tree: http://git-wip-us.apache.org/repos/asf/juddi/tree/8f7c669d
Diff: http://git-wip-us.apache.org/repos/asf/juddi/diff/8f7c669d

Branch: refs/heads/master
Commit: 8f7c669da1bfb76c63be3cb03a45832c45787fa9
Parents: 15ed423
Author: Alex <[email protected]>
Authored: Wed Dec 24 15:52:28 2014 -0500
Committer: Alex <[email protected]>
Committed: Wed Dec 24 15:52:28 2014 -0500

----------------------------------------------------------------------
 .../apache/juddi/api/impl/InquiryHelper.java    |  26 +++-
 .../impl/API_040_BusinessServiceLoadTest.java   | 135 +++++++++++++++++++
 .../API_040_BusinessServiceTestPerformance.java | 135 -------------------
 .../apache/juddi/api/impl/API_099_LoadTest.java | 109 +++++++++++++++
 .../juddi/api/impl/API_099_LoadTests.java       | 104 --------------
 .../api/impl/API_110_FindBusinessTest.java      |   8 +-
 .../juddi/api/impl/API_160_ReplicationTest.java |   4 -
 .../org/apache/juddi/v3/tck/TckBusiness.java    |  10 ++
 .../apache/juddi/v3/tck/TckBusinessService.java |   2 +-
 .../UDDI_110_FindBusinessIntegrationTest.java   |   9 +-
 .../UDDI_110_FindBusinessIntegrationTest.java   |  40 +++++-
 11 files changed, 328 insertions(+), 254 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java 
b/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java
index b9c91e0..af5e6ee 100644
--- a/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java
+++ b/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java
@@ -225,9 +225,31 @@ public class InquiryHelper {
                result.setListDescription(listDesc);
 
                // Sort and retrieve the final results taking paging into 
account
-               List<?> queryResults = FetchBusinessEntitiesQuery.select(
-                               em, findQualifiers, keysFound, 
body.getMaxRows(), body.getListHead(), listDesc);
+               List<?> queryResults = FetchBusinessEntitiesQuery.select(em, 
findQualifiers, keysFound, body.getMaxRows(), body.getListHead(), listDesc);
+               List<?> serviceResults = null;
+               for (int i = 0; i<queryResults.size(); i++) {
+                       org.apache.juddi.model.BusinessEntity be = 
(org.apache.juddi.model.BusinessEntity) queryResults.get(i);
                        
+                       List<Object> keysIn = new ArrayList<Object>();
+                       List<org.apache.juddi.model.BusinessService> services = 
be.getBusinessServices();
+                       for (int j = 0; j<services.size(); j++) {
+                               keysIn.add(services.get(j).getEntityKey());
+                       }
+
+                       serviceResults = FindServiceByTModelKeyQuery.select(em, 
findQualifiers, body.getTModelBag(), null, keysIn);
+                       if (serviceResults == null) {
+                               be.setBusinessServices(null);
+                       } else { 
+                               ListDescription ldesc = new ListDescription();
+                               result.setListDescription(listDesc);
+                               List<?> srvcs = 
FetchBusinessServicesQuery.select(em, findQualifiers, serviceResults, 
body.getMaxRows(), 
+                                               body.getListHead(), ldesc);
+                               
be.setBusinessServices((List<org.apache.juddi.model.BusinessService>)srvcs);
+                       }
+                }
+
+                
+                
                if (queryResults != null && queryResults.size() > 0)
                        result.setBusinessInfos(new 
org.uddi.api_v3.BusinessInfos());
                

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceLoadTest.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceLoadTest.java
 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceLoadTest.java
new file mode 100644
index 0000000..20f1e94
--- /dev/null
+++ 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceLoadTest.java
@@ -0,0 +1,135 @@
+/*
+ * Copyright 2001-2009 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.api.impl;
+
+import java.rmi.RemoteException;
+
+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.query.util.FindQualifiers;
+import org.apache.juddi.v3.tck.TckBusiness;
+import org.apache.juddi.v3.tck.TckBusinessService;
+import org.apache.juddi.v3.tck.TckPublisher;
+import org.apache.juddi.v3.tck.TckSecurity;
+import org.apache.juddi.v3.tck.TckTModel;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.uddi.api_v3.BusinessList;
+import org.uddi.api_v3.FindBusiness;
+import org.uddi.api_v3.FindService;
+import org.uddi.api_v3.Name;
+import org.uddi.api_v3.ServiceList;
+import org.uddi.v3_service.DispositionReportFaultMessage;
+import org.uddi.v3_service.UDDISecurityPortType;
+
+/**
+ * @author <a href="mailto:[email protected]";>Kurt T Stam</a>
+ */
+public class API_040_BusinessServiceLoadTest
+{      
+       private static Log logger                        = 
LogFactory.getLog(API_040_BusinessServiceTest.class);
+       
+       private static API_010_PublisherTest api010      = new 
API_010_PublisherTest();
+       protected static TckTModel tckTModel               = new TckTModel(new 
UDDIPublicationImpl(), new UDDIInquiryImpl());
+       protected static TckBusiness tckBusiness           = new 
TckBusiness(new UDDIPublicationImpl(), new UDDIInquiryImpl());
+       protected static TckBusinessService tckBusinessService  = new 
TckBusinessService(new UDDIPublicationImpl(), new UDDIInquiryImpl());
+       private static UDDIInquiryImpl inquiry             = new 
UDDIInquiryImpl();
+       
+       int numberOfBusinesses=100;
+       int numberOfServices=100;
+       
+       protected static String authInfoJoe                = null;
+       protected static String authInfoSam                = null;
+       
+       @BeforeClass
+       public static void setup() throws ConfigurationException {
+               Registry.start();
+                logger.info("API_040_BusinessServiceTestPerformance");
+               logger.debug("Getting auth tokens..");
+               try {
+                       api010.saveJoePublisher();
+                       UDDISecurityPortType security      = new 
UDDISecurityImpl();
+                       authInfoJoe = TckSecurity.getAuthToken(security, 
TckPublisher.getJoePublisherId(),  TckPublisher.getJoePassword());
+                       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 shutdown() throws ConfigurationException{
+                tckTModel.deleteCreatedTModels(authInfoJoe);
+                Registry.stop();
+        }
+        
+       @Test
+       public void find20Businesses() throws DispositionReportFaultMessage {
+               tckTModel.saveJoePublisherTmodel(authInfoJoe);
+               long startSave = System.currentTimeMillis();
+               //loading up 100 businesses, with a 100 services each
+               tckBusiness.saveJoePublisherBusinesses(authInfoJoe, 
numberOfBusinesses);
+               for (int i=0; i<numberOfBusinesses; i++) {
+                       
tckBusinessService.saveJoePublisherServices(authInfoJoe, i, numberOfServices);
+               }
+               long saveDuration = System.currentTimeMillis() - startSave;
+               System.out.println("Saved " + numberOfBusinesses + " businesses 
with each " + numberOfServices + " services in " + saveDuration + "ms");
+               
+               //find 20 businesses by name
+               FindBusiness fb = new FindBusiness();
+               org.uddi.api_v3.FindQualifiers apiFq = new 
org.uddi.api_v3.FindQualifiers();
+               apiFq.getFindQualifier().add(FindQualifiers.APPROXIMATE_MATCH);
+               
apiFq.getFindQualifier().add(FindQualifiers.CASE_INSENSITIVE_MATCH);
+               fb.setFindQualifiers(apiFq);
+               Name name = new Name();
+               name.setValue("John%");
+               fb.getName().add(name);
+               fb.setMaxRows(20);
+               long startFind = System.currentTimeMillis();
+               BusinessList result = inquiry.findBusiness(fb);
+               long findDuration = System.currentTimeMillis() - startFind;
+               System.out.println("Find 20 businesses took "  +  findDuration 
+ "ms. Size=" + result.getBusinessInfos().getBusinessInfo().size());
+               // it takes less then 1 second, make sure it stays faster then 
5 seconds
+               //Assert.assertTrue(findDuration < 5000);
+                               
+               FindService fs = new FindService();
+               fs.setFindQualifiers(apiFq);
+               name.setValue("Service One%");
+               fs.getName().add(name);
+               startFind = System.currentTimeMillis();
+               //this will match ALL services (100 * 100 =) 10,000 services
+               int all = numberOfBusinesses * numberOfServices;
+               System.out.println("Matching " + all+  " services");
+               ServiceList serviceList = inquiry.findService(fs);
+               findDuration = System.currentTimeMillis() - startFind;
+               System.out.println("Find " + all + " services took "  +  
findDuration + "ms. Size=" + 
serviceList.getServiceInfos().getServiceInfo().size());
+
+               long startDelete = System.currentTimeMillis();
+               for (int i=0; i<numberOfBusinesses; i++) {
+                       
tckBusinessService.deleteJoePublisherServices(authInfoJoe, i, numberOfServices);
+               }
+               long deleteDuration = System.currentTimeMillis() - startDelete;
+               System.out.println("Delete all business and services in " + 
deleteDuration + "ms");
+               tckBusiness.deleteJoePublisherBusinesses(authInfoJoe, 
numberOfBusinesses);
+               tckTModel.deleteJoePublisherTmodel(authInfoJoe);
+       }
+       
+}

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceTestPerformance.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceTestPerformance.java
 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceTestPerformance.java
deleted file mode 100644
index 16d719c..0000000
--- 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_040_BusinessServiceTestPerformance.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright 2001-2009 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.api.impl;
-
-import java.rmi.RemoteException;
-
-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.query.util.FindQualifiers;
-import org.apache.juddi.v3.tck.TckBusiness;
-import org.apache.juddi.v3.tck.TckBusinessService;
-import org.apache.juddi.v3.tck.TckPublisher;
-import org.apache.juddi.v3.tck.TckSecurity;
-import org.apache.juddi.v3.tck.TckTModel;
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.uddi.api_v3.BusinessList;
-import org.uddi.api_v3.FindBusiness;
-import org.uddi.api_v3.FindService;
-import org.uddi.api_v3.Name;
-import org.uddi.api_v3.ServiceList;
-import org.uddi.v3_service.DispositionReportFaultMessage;
-import org.uddi.v3_service.UDDISecurityPortType;
-
-/**
- * @author <a href="mailto:[email protected]";>Kurt T Stam</a>
- */
-public class API_040_BusinessServiceTestPerformance
-{      
-       private static Log logger                        = 
LogFactory.getLog(API_040_BusinessServiceTest.class);
-       
-       private static API_010_PublisherTest api010      = new 
API_010_PublisherTest();
-       protected static TckTModel tckTModel               = new TckTModel(new 
UDDIPublicationImpl(), new UDDIInquiryImpl());
-       protected static TckBusiness tckBusiness           = new 
TckBusiness(new UDDIPublicationImpl(), new UDDIInquiryImpl());
-       protected static TckBusinessService tckBusinessService  = new 
TckBusinessService(new UDDIPublicationImpl(), new UDDIInquiryImpl());
-       private static UDDIInquiryImpl inquiry             = new 
UDDIInquiryImpl();
-       
-       int numberOfBusinesses=100;
-       int numberOfServices=100;
-       
-       protected static String authInfoJoe                = null;
-       protected static String authInfoSam                = null;
-       
-       @BeforeClass
-       public static void setup() throws ConfigurationException {
-               Registry.start();
-                logger.info("API_040_BusinessServiceTestPerformance");
-               logger.debug("Getting auth tokens..");
-               try {
-                       api010.saveJoePublisher();
-                       UDDISecurityPortType security      = new 
UDDISecurityImpl();
-                       authInfoJoe = TckSecurity.getAuthToken(security, 
TckPublisher.getJoePublisherId(),  TckPublisher.getJoePassword());
-                       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 shutdown() throws ConfigurationException{
-                tckTModel.deleteCreatedTModels(authInfoJoe);
-                Registry.stop();
-        }
-        
-       @Test
-       public void find20Businesses() throws DispositionReportFaultMessage {
-               tckTModel.saveJoePublisherTmodel(authInfoJoe);
-               long startSave = System.currentTimeMillis();
-               //loading up 100 businesses, with a 100 services each
-               tckBusiness.saveJoePublisherBusinesses(authInfoJoe, 
numberOfBusinesses);
-               for (int i=0; i<numberOfBusinesses; i++) {
-                       
tckBusinessService.saveJoePublisherServices(authInfoJoe, i, numberOfServices);
-               }
-               long saveDuration = System.currentTimeMillis() - startSave;
-               System.out.println("Saved " + numberOfBusinesses + " businesses 
with each " + numberOfServices + " services in " + saveDuration + "ms");
-               
-               //find 20 businesses by name
-               FindBusiness fb = new FindBusiness();
-               org.uddi.api_v3.FindQualifiers apiFq = new 
org.uddi.api_v3.FindQualifiers();
-               apiFq.getFindQualifier().add(FindQualifiers.APPROXIMATE_MATCH);
-               
apiFq.getFindQualifier().add(FindQualifiers.CASE_INSENSITIVE_MATCH);
-               fb.setFindQualifiers(apiFq);
-               Name name = new Name();
-               name.setValue("John%");
-               fb.getName().add(name);
-               fb.setMaxRows(20);
-               long startFind = System.currentTimeMillis();
-               BusinessList result = inquiry.findBusiness(fb);
-               long findDuration = System.currentTimeMillis() - startFind;
-               System.out.println("Find 20 businesses took "  +  findDuration 
+ "ms. Size=" + result.getBusinessInfos().getBusinessInfo().size());
-               // it takes less then 1 second, make sure it stays faster then 
5 seconds
-               //Assert.assertTrue(findDuration < 5000);
-                               
-               FindService fs = new FindService();
-               fs.setFindQualifiers(apiFq);
-               name.setValue("Service One%");
-               fs.getName().add(name);
-               startFind = System.currentTimeMillis();
-               //this will match ALL services (100 * 100 =) 10,000 services
-               int all = numberOfBusinesses * numberOfServices;
-               System.out.println("Matching " + all+  " services");
-               ServiceList serviceList = inquiry.findService(fs);
-               findDuration = System.currentTimeMillis() - startFind;
-               System.out.println("Find " + all + " services took "  +  
findDuration + "ms. Size=" + 
serviceList.getServiceInfos().getServiceInfo().size());
-
-               long startDelete = System.currentTimeMillis();
-               for (int i=0; i<numberOfBusinesses; i++) {
-                       
tckBusinessService.deleteJoePublisherServices(authInfoJoe, i, numberOfServices);
-               }
-               long deleteDuration = System.currentTimeMillis() - startDelete;
-               System.out.println("Delete all business and services in " + 
deleteDuration + "ms");
-               tckBusiness.deleteJoePublisherBusinesses(authInfoJoe, 
numberOfBusinesses);
-               tckTModel.deleteJoePublisherTmodel(authInfoJoe);
-       }
-       
-}

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTest.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTest.java 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTest.java
new file mode 100644
index 0000000..ccd388f
--- /dev/null
+++ b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTest.java
@@ -0,0 +1,109 @@
+/*
+ * 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.api.impl;
+
+import java.rmi.RemoteException;
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.ws.Holder;
+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.v3.client.UDDIConstants;
+import org.apache.juddi.v3.tck.TckBindingTemplate;
+import org.apache.juddi.v3.tck.TckBusiness;
+import org.apache.juddi.v3.tck.TckBusinessService;
+import org.apache.juddi.v3.tck.TckPublisher;
+import org.apache.juddi.v3.tck.TckSecurity;
+import org.apache.juddi.v3.tck.TckTModel;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.Assume;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.uddi.api_v3.FindBusiness;
+import org.uddi.api_v3.FindQualifiers;
+import org.uddi.api_v3.Name;
+import org.uddi.sub_v3.DeleteSubscription;
+import org.uddi.sub_v3.Subscription;
+import org.uddi.sub_v3.SubscriptionFilter;
+
+/**
+ * Load tests for subscriptions
+ * @author Alex O'Ree
+ */
+public class API_099_LoadTest {
+
+        private static Log logger = 
LogFactory.getLog(API_080_SubscriptionTest.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 TckBusinessService tckBusinessService = new 
TckBusinessService(new UDDIPublicationImpl(), new UDDIInquiryImpl());
+        private static TckBindingTemplate tckBindingTemplate = new 
TckBindingTemplate(new UDDIPublicationImpl(), new UDDIInquiryImpl());
+        UDDISubscriptionImpl sub = new UDDISubscriptionImpl();
+
+        private static String authInfoJoe = null;
+        private static String authInfoSam = null;
+
+        @BeforeClass
+        public static void setup() throws ConfigurationException {
+                Registry.start();
+                logger.info("API_080_SubscriptionTest");
+                logger.debug("Getting auth token..");
+                try {
+                        api010.saveJoePublisher();
+                        authInfoJoe = TckSecurity.getAuthToken(new 
UDDISecurityImpl(), TckPublisher.getJoePublisherId(), 
TckPublisher.getJoePassword());
+                } catch (RemoteException e) {
+                        logger.error(e.getMessage(), e);
+                        Assert.fail("Could not obtain authInfo token.");
+                }
+
+        }
+
+        @AfterClass
+        public static void stopRegistry() throws ConfigurationException {
+                tckTModel.deleteCreatedTModels(authInfoJoe);
+                Registry.stop();
+        }
+
+        @Test
+        public void joePublisher() throws Exception {
+                //Assume.assumeTrue(TckPublisher.isLoadTest());
+                List<String> keys = new ArrayList<String>();
+                for (int i = 0; i < 1000; i++) {
+                        Holder<List<Subscription>> items = new 
Holder<List<Subscription>>();
+                        items.value = new ArrayList<Subscription>();
+                        Subscription s = new Subscription();
+                        s.setSubscriptionFilter(new SubscriptionFilter());
+                        s.getSubscriptionFilter().setFindBusiness(new 
FindBusiness());
+                        
s.getSubscriptionFilter().getFindBusiness().setFindQualifiers(new 
FindQualifiers());
+                        
s.getSubscriptionFilter().getFindBusiness().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+                        
s.getSubscriptionFilter().getFindBusiness().getName().add(new 
Name(UDDIConstants.WILDCARD, null));
+                        items.value.add(s);
+                        sub.saveSubscription(authInfoJoe, items);
+                        keys.add(items.value.get(0).getSubscriptionKey());
+                }
+                List<Subscription> subscriptions = 
sub.getSubscriptions(authInfoJoe);
+                DeleteSubscription ds = new DeleteSubscription();
+                ds.setAuthInfo(authInfoJoe);
+                ds.getSubscriptionKey().addAll(keys);
+                sub.deleteSubscription(ds);
+                Assert.assertEquals(subscriptions.size(), keys.size());
+        }
+
+}

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTests.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTests.java 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTests.java
deleted file mode 100644
index 3d44b09..0000000
--- a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_099_LoadTests.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * 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.api.impl;
-
-import java.rmi.RemoteException;
-import java.util.ArrayList;
-import java.util.List;
-import javax.xml.ws.Holder;
-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.v3.client.UDDIConstants;
-import org.apache.juddi.v3.tck.TckBindingTemplate;
-import org.apache.juddi.v3.tck.TckBusiness;
-import org.apache.juddi.v3.tck.TckBusinessService;
-import org.apache.juddi.v3.tck.TckPublisher;
-import org.apache.juddi.v3.tck.TckSecurity;
-import org.apache.juddi.v3.tck.TckTModel;
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.Assume;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.uddi.api_v3.FindBusiness;
-import org.uddi.api_v3.FindQualifiers;
-import org.uddi.api_v3.Name;
-import org.uddi.sub_v3.Subscription;
-import org.uddi.sub_v3.SubscriptionFilter;
-
-/**
- *
- * @author Alex O'Ree
- */
-public class API_099_LoadTests {
-
-        private static Log logger = 
LogFactory.getLog(API_080_SubscriptionTest.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 TckBusinessService tckBusinessService = new 
TckBusinessService(new UDDIPublicationImpl(), new UDDIInquiryImpl());
-        private static TckBindingTemplate tckBindingTemplate = new 
TckBindingTemplate(new UDDIPublicationImpl(), new UDDIInquiryImpl());
-        UDDISubscriptionImpl sub = new UDDISubscriptionImpl();
-
-        private static String authInfoJoe = null;
-        private static String authInfoSam = null;
-
-        @BeforeClass
-        public static void setup() throws ConfigurationException {
-                Registry.start();
-                logger.info("API_080_SubscriptionTest");
-                logger.debug("Getting auth token..");
-                try {
-                        api010.saveJoePublisher();
-                        authInfoJoe = TckSecurity.getAuthToken(new 
UDDISecurityImpl(), TckPublisher.getJoePublisherId(), 
TckPublisher.getJoePassword());
-                } catch (RemoteException e) {
-                        logger.error(e.getMessage(), e);
-                        Assert.fail("Could not obtain authInfo token.");
-                }
-
-        }
-
-        @AfterClass
-        public static void stopRegistry() throws ConfigurationException {
-                tckTModel.deleteCreatedTModels(authInfoJoe);
-                Registry.stop();
-        }
-
-        @Test
-        public void joePublisher() throws Exception {
-                Assume.assumeTrue(TckPublisher.isLoadTest());
-                List<String> keys = new ArrayList<String>();
-                for (int i = 0; i < 1000; i++) {
-                        Holder<List<Subscription>> items = new 
Holder<List<Subscription>>();
-                        items.value = new ArrayList<Subscription>();
-                        Subscription s = new Subscription();
-                        s.setSubscriptionFilter(new SubscriptionFilter());
-                        s.getSubscriptionFilter().setFindBusiness(new 
FindBusiness());
-                        
s.getSubscriptionFilter().getFindBusiness().setFindQualifiers(new 
FindQualifiers());
-                        
s.getSubscriptionFilter().getFindBusiness().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
-                        
s.getSubscriptionFilter().getFindBusiness().getName().add(new 
Name(UDDIConstants.WILDCARD, null));
-                        items.value.add(s);
-                        sub.saveSubscription(authInfoJoe, items);
-                        keys.add(items.value.get(0).getSubscriptionKey());
-                }
-                List<Subscription> subscriptions = 
sub.getSubscriptions(authInfoJoe);
-                Assert.assertEquals(subscriptions.size(), keys.size());
-        }
-
-}

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/test/java/org/apache/juddi/api/impl/API_110_FindBusinessTest.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_110_FindBusinessTest.java
 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_110_FindBusinessTest.java
index e2a5497..f03dd60 100644
--- 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_110_FindBusinessTest.java
+++ 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_110_FindBusinessTest.java
@@ -87,9 +87,11 @@ public class API_110_FindBusinessTest
                                Assert.fail("Could not obtain authInfo token.");
             } 
        }
-       /**
+
+         /**
          * JUDDI-398
          * JUDDI-881
+         * "If a tModelBag or find_tModel was used in the search, the 
resulting serviceInfos structure reflects data only for the businessServices 
that actually contained a matching bindingTemplate.
          */
        @Test
        public void findBusinessByTModelBag() {
@@ -115,8 +117,8 @@ public class API_110_FindBusinessTest
                                                        + "found " + size);
                                } else {
                                        List<BusinessInfo> biList = 
bl.getBusinessInfos().getBusinessInfo();
-                                       if 
(biList.get(0).getServiceInfos().getServiceInfo().size() != 2) {
-                                               Assert.fail("Should have found 
two ServiceInfos");
+                                       if 
(biList.get(0).getServiceInfos().getServiceInfo().size() != 1) {
+                                               Assert.fail("Should have found 
one ServiceInfos");
                                        } else {
                                                        List<ServiceInfo> 
siList = biList.get(0).getServiceInfos().getServiceInfo();
                                                        ServiceInfo si = 
siList.get(0);

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/juddi-core/src/test/java/org/apache/juddi/api/impl/API_160_ReplicationTest.java
----------------------------------------------------------------------
diff --git 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_160_ReplicationTest.java
 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_160_ReplicationTest.java
index 2227973..298cf5d 100644
--- 
a/juddi-core/src/test/java/org/apache/juddi/api/impl/API_160_ReplicationTest.java
+++ 
b/juddi-core/src/test/java/org/apache/juddi/api/impl/API_160_ReplicationTest.java
@@ -15,7 +15,6 @@
  */
 package org.apache.juddi.api.impl;
 
-import java.math.BigInteger;
 import java.rmi.RemoteException;
 import java.util.List;
 import java.util.UUID;
@@ -33,10 +32,8 @@ import org.apache.juddi.api_v3.NodeList;
 import org.apache.juddi.api_v3.SaveClerk;
 import org.apache.juddi.api_v3.SaveNode;
 import org.apache.juddi.replication.ReplicationNotifier;
-import org.apache.juddi.v3.error.FatalErrorException;
 import org.apache.juddi.v3.tck.TckPublisher;
 import org.apache.juddi.v3.tck.TckSecurity;
-import org.apache.juddi.v3.tck.TckTModel;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
@@ -44,7 +41,6 @@ import org.junit.Test;
 import org.uddi.api_v3.Contact;
 import org.uddi.api_v3.DispositionReport;
 import org.uddi.api_v3.PersonName;
-import org.uddi.repl_v3.ChangeRecord;
 import org.uddi.repl_v3.ChangeRecordIDType;
 import org.uddi.repl_v3.ChangeRecords;
 import org.uddi.repl_v3.CommunicationGraph;

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusiness.java
----------------------------------------------------------------------
diff --git 
a/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusiness.java 
b/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusiness.java
index f632973..87e02a3 100644
--- a/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusiness.java
+++ b/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusiness.java
@@ -168,6 +168,16 @@ public class TckBusiness {
                                 beIn.getName().get(0).setValue(businessName + 
"-" + i);
                                 beIn.setBusinessKey(businessKey + "-" + i);
                                 sb.getBusinessEntity().add(beIn);
+                               /* if (beIn.getBusinessServices()!=null){
+                                        for (int x=0; x < 
beIn.getBusinessServices().getBusinessService().size(); x++){
+                                                
beIn.getBusinessServices().getBusinessService().get(x).setBusinessKey(businessKey
 + "-" + i);
+                                                if 
(beIn.getBusinessServices().getBusinessService().get(x).getBindingTemplates()!=null){
+                                                        for (int y=0; y < 
beIn.getBusinessServices().getBusinessService().get(x).getBindingTemplates().getBindingTemplate().size();
 y++){
+                                                                
beIn.getBusinessServices().getBusinessService().get(x).getBindingTemplates().getBindingTemplate().get(y).
+                                                        }
+                                                }
+                                        }
+                                }*/
                                 publication.saveBusiness(sb);
                                 logger.info("Saved business with key " + 
businessName + "-" + i);
                         }

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusinessService.java
----------------------------------------------------------------------
diff --git 
a/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusinessService.java 
b/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusinessService.java
index fa4a19d..ab012b4 100644
--- 
a/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusinessService.java
+++ 
b/uddi-tck-base/src/main/java/org/apache/juddi/v3/tck/TckBusinessService.java
@@ -123,7 +123,7 @@ public class TckBusinessService
                                ss = new SaveService();
                                ss.setAuthInfo(authInfo);
                                bsIn.getName().get(0).setValue(serviceName + 
"-" + i);
-                               bsIn.setBusinessKey(parentBusinessKey);
+                               bsIn.setBusinessKey(parentBusinessKey +"-" + 
businessInt);
                                bsIn.setServiceKey(serviceKey + "-" + 
businessInt + "-" + i);
                                
bsIn.getBindingTemplates().getBindingTemplate().get(0).setBindingKey(bindingKey 
+ "-" + businessInt + "-" + i);
                                
bsIn.getBindingTemplates().getBindingTemplate().get(0).setServiceKey(serviceKey 
+ "-" + businessInt + "-" + i);

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/uddi-tck/src/test/java/org/apache/juddi/v2/tck/UDDI_110_FindBusinessIntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/uddi-tck/src/test/java/org/apache/juddi/v2/tck/UDDI_110_FindBusinessIntegrationTest.java
 
b/uddi-tck/src/test/java/org/apache/juddi/v2/tck/UDDI_110_FindBusinessIntegrationTest.java
index 21e5cd6..5484c02 100644
--- 
a/uddi-tck/src/test/java/org/apache/juddi/v2/tck/UDDI_110_FindBusinessIntegrationTest.java
+++ 
b/uddi-tck/src/test/java/org/apache/juddi/v2/tck/UDDI_110_FindBusinessIntegrationTest.java
@@ -102,6 +102,11 @@ public class UDDI_110_FindBusinessIntegrationTest {
                 }
         }
 
+        /**
+         * JUDDI-398
+         * JUDDI-881
+         * "If a tModelBag or find_tModel was used in the search, the 
resulting serviceInfos structure reflects data only for the businessServices 
that actually contained a matching bindingTemplate.
+         */
         @Test
         public void findBusinessByTModelBag() {
                 Assume.assumeTrue(TckPublisher.isEnabled());
@@ -127,8 +132,8 @@ public class UDDI_110_FindBusinessIntegrationTest {
                                                 + "found " + size);
                                 } else {
                                         List<BusinessInfo> biList = 
bl.getBusinessInfos().getBusinessInfo();
-                                        if 
(biList.get(0).getServiceInfos().getServiceInfo().size() != 2) {
-                                                Assert.fail("Should have found 
two ServiceInfos");
+                                        if 
(biList.get(0).getServiceInfos().getServiceInfo().size() != 1) {
+                                                Assert.fail("Should have found 
one ServiceInfos");
                                         } else {
                                                 List<ServiceInfo> siList = 
biList.get(0).getServiceInfos().getServiceInfo();
                                                 ServiceInfo si = siList.get(0);

http://git-wip-us.apache.org/repos/asf/juddi/blob/8f7c669d/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_110_FindBusinessIntegrationTest.java
----------------------------------------------------------------------
diff --git 
a/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_110_FindBusinessIntegrationTest.java
 
b/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_110_FindBusinessIntegrationTest.java
index 53215b6..fadcc99 100644
--- 
a/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_110_FindBusinessIntegrationTest.java
+++ 
b/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_110_FindBusinessIntegrationTest.java
@@ -29,6 +29,7 @@ import org.junit.BeforeClass;
 import org.junit.Test;
 import org.uddi.api_v3.BusinessInfo;
 import org.uddi.api_v3.BusinessList;
+import org.uddi.api_v3.DeleteBusiness;
 import org.uddi.api_v3.FindBusiness;
 import org.uddi.api_v3.ServiceInfo;
 import org.uddi.api_v3.TModelBag;
@@ -61,6 +62,7 @@ public class UDDI_110_FindBusinessIntegrationTest {
         protected static TckBusiness tckBusiness = null;
         protected static String authInfoJoe = null;
         private static UDDIInquiryPortType inquiry = null;
+        private static UDDIPublicationPortType publication=null;
         private static UDDIClient manager;
 
         @AfterClass
@@ -85,12 +87,13 @@ public class UDDI_110_FindBusinessIntegrationTest {
                         authInfoJoe = TckSecurity.getAuthToken(security, 
TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
                         //Assert.assertNotNull(authInfoJoe);
                         
-                        UDDIPublicationPortType publication = 
transport.getUDDIPublishService();
+                        publication = transport.getUDDIPublishService();
                         inquiry = transport.getUDDIInquiryService();
                         if (!TckPublisher.isUDDIAuthMode()){
                                 TckSecurity.setCredentials((BindingProvider) 
publication, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
                                 TckSecurity.setCredentials((BindingProvider) 
inquiry, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
                         }
+                        
 
                         tckTModel = new TckTModel(publication, inquiry);
                         tckTModel01 = new TckTModel(publication, inquiry);
@@ -103,16 +106,42 @@ public class UDDI_110_FindBusinessIntegrationTest {
                 }
         }
 
+        /**
+         * JUDDI-881
+         * "If a tModelBag or find_tModel was used in the search, the 
resulting serviceInfos structure reflects data only for the businessServices 
that actually contained a matching bindingTemplate.
+         */
         @Test
         public void findBusinessByTModelBag() {
              Assume.assumeTrue(TckPublisher.isEnabled());
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
+             
System.out.println("##########################################################");
                 try {
                         tckTModel.saveTModel(authInfoJoe, 
TOM_PUBLISHER_TMODEL_XML, TOM_PUBLISHER_TMODEL_KEY);
                         tckTModel.saveTModel(authInfoJoe, 
TOM_PUBLISHER_TMODEL01_XML, TOM_PUBLISHER_TMODEL01_KEY);
                         tckTModel.saveTModel(authInfoJoe, 
TOM_PUBLISHER_TMODEL02_XML, TOM_PUBLISHER_TMODEL02_KEY);
 
+                        try{
+                                  // Delete the entity and make sure it is 
removed
+                                DeleteBusiness db = new DeleteBusiness();
+                                db.setAuthInfo(authInfoJoe);
+                                db.getBusinessKey().add(TOM_BUSINESS_KEY);
+                                publication.deleteBusiness(db);
+                        }       catch (Exception ex){}
                         tckBusiness.saveBusinesses(authInfoJoe, 
TOM_BUSINESS_XML, TOM_BUSINESS_KEY, 1);
 
+                        String before 
=TckCommon.DumpAllBusinesses(authInfoJoe, inquiry);
                         try {
                                 int size = 0;
                                 BusinessList bl = null;
@@ -123,17 +152,22 @@ public class UDDI_110_FindBusinessIntegrationTest {
                                 fbb.setTModelBag(tmb);
                                 bl = inquiry.findBusiness(fbb);
                                 size = 
bl.getBusinessInfos().getBusinessInfo().size();
+                                //JUDDI-881
+                                
                                 if (size != 1) {
+                                        logger.error("Test failed, dumping the 
business list " + before);
                                         Assert.fail("Should have found one 
entry on FindBusiness with TModelBag, "
                                                 + "found " + size);
                                 } else {
                                         List<BusinessInfo> biList = 
bl.getBusinessInfos().getBusinessInfo();
-                                        if 
(biList.get(0).getServiceInfos().getServiceInfo().size() != 2) {
-                                                Assert.fail("Should have found 
two ServiceInfos");
+                                        if 
(biList.get(0).getServiceInfos().getServiceInfo().size() != 1) {
+                                                logger.error("Test failed, 
dumping the business list " + before);
+                                                Assert.fail("Should have found 
one ServiceInfos");
                                         } else {
                                                 List<ServiceInfo> siList = 
biList.get(0).getServiceInfos().getServiceInfo();
                                                 ServiceInfo si = siList.get(0);
                                                 if 
(!TOM_PUBLISHER_SERVICEINFO_NAME.equals(si.getName().get(0).getValue())) {
+                                                        logger.error("Test 
failed, dumping the business list " + before);
                                                         Assert.fail("Should 
have found " + TOM_PUBLISHER_TMODEL01_NAME + " as the "
                                                                 + "ServiceInfo 
name, found " + si.getName().get(0).getValue());
                                                 }


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

Reply via email to