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/05/24 01:36:44 UTC

svn commit: r1485899 - in /juddi/trunk: juddi-core/src/main/java/org/apache/juddi/validation/ uddi-tck/src/test/java/org/apache/juddi/v3/tck/ uddi-ws/src/main/java/org/uddi/api_v3/

Author: alexoree
Date: Thu May 23 23:36:44 2013
New Revision: 1485899

URL: http://svn.apache.org/r1485899
Log:
JUDDI-606 adding more tests for publisher assertion subscription results, adding UDDI java documentation to CompletionStatus.java

Modified:
    juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java
    juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_080_SubscriptionIntegrationTest.java
    juddi/trunk/uddi-ws/src/main/java/org/uddi/api_v3/CompletionStatus.java

Modified: juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java
URL: http://svn.apache.org/viewvc/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java?rev=1485899&r1=1485898&r2=1485899&view=diff
==============================================================================
--- juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java (original)
+++ juddi/trunk/juddi-core/src/main/java/org/apache/juddi/validation/ValidateSubscription.java Thu May 23 23:36:44 2013
@@ -219,7 +219,7 @@ public class ValidateSubscription extend
             if (filterCount == 0) {
                 throw new ValueNotAllowedException(new ErrorMessage("errors.subscription.BlankFilter"));
             }
-
+            //the spec defines subscription filters as a switch, exactly one is required
             if (filterCount > 1) {
                 throw new ValueNotAllowedException(new ErrorMessage("errors.subscription.TooManyFilters", String.valueOf(filterCount)));
             }

Modified: juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_080_SubscriptionIntegrationTest.java
URL: http://svn.apache.org/viewvc/juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_080_SubscriptionIntegrationTest.java?rev=1485899&r1=1485898&r2=1485899&view=diff
==============================================================================
--- juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_080_SubscriptionIntegrationTest.java (original)
+++ juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_080_SubscriptionIntegrationTest.java Thu May 23 23:36:44 2013
@@ -33,12 +33,20 @@ import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
 import org.junit.Test;
+import org.uddi.api_v3.AddPublisherAssertions;
 import org.uddi.api_v3.BusinessEntity;
+import org.uddi.api_v3.BusinessService;
+import org.uddi.api_v3.CompletionStatus;
+import org.uddi.api_v3.DeletePublisherAssertions;
 import org.uddi.api_v3.FindBusiness;
 import org.uddi.api_v3.FindQualifiers;
 import org.uddi.api_v3.FindService;
+import org.uddi.api_v3.GetAssertionStatusReport;
+import org.uddi.api_v3.KeyedReference;
 import org.uddi.api_v3.Name;
+import org.uddi.api_v3.PublisherAssertion;
 import org.uddi.api_v3.SaveBusiness;
+import org.uddi.api_v3.SaveService;
 import org.uddi.sub_v3.CoveragePeriod;
 import org.uddi.sub_v3.GetSubscriptionResults;
 import org.uddi.sub_v3.Subscription;
@@ -193,6 +201,7 @@ public class UDDI_080_SubscriptionIntegr
      */
     @Test
     public void JUDDI_606_1() {
+        System.out.println("JUDDI_606_1");
         // Null expiration time
 
         Subscription sub = new Subscription();
@@ -220,6 +229,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_2() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_2");
         // invalid expiration time
         DatatypeFactory df = DatatypeFactory.newInstance();
         GregorianCalendar gcal = new GregorianCalendar();
@@ -251,6 +261,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_3() {
+        System.out.println("JUDDI_606_3");
         //confirm a subscription key is returned when not specified
 
         Subscription sub = new Subscription();
@@ -278,6 +289,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_4() {
+        System.out.println("JUDDI_606_4");
         //null subscription filter
 
         Subscription sub = new Subscription();
@@ -300,6 +312,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_5() {
+        System.out.println("JUDDI_606_5");
         //empty subscription filter
 
         Subscription sub = new Subscription();
@@ -323,6 +336,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_6() {
+        System.out.println("JUDDI_606_6");
         //negative max entities
 
         Subscription sub = new Subscription();
@@ -349,12 +363,43 @@ public class UDDI_080_SubscriptionIntegr
     }
 
     @Test
-    public void JUDDI_606_7() {
-        //minimal settings 
+    public void JUDDI_606_7() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_7");
+        //more filters that expected
+        DatatypeFactory df = DatatypeFactory.newInstance();
+        try {
+
+            Holder<List<Subscription>> data = new Holder<List<Subscription>>();
+            data.value = new ArrayList<Subscription>();
+            Subscription sub = new Subscription();
+            sub.setBrief(false);
+            sub.setExpiresAfter(null);
+            sub.setMaxEntities(null);
+            sub.setNotificationInterval(null);
+            sub.setBindingKey(null);
+            sub.setSubscriptionFilter(new SubscriptionFilter());
+            sub.getSubscriptionFilter().setFindBusiness(new FindBusiness());
+            sub.getSubscriptionFilter().getFindBusiness().setFindQualifiers(new FindQualifiers());
+            sub.getSubscriptionFilter().getFindBusiness().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+            sub.getSubscriptionFilter().getFindBusiness().getName().add(new Name("%", null));
+            sub.getSubscriptionFilter().setFindService(new FindService());
+            sub.getSubscriptionFilter().getFindService().setFindQualifiers(new FindQualifiers());
+            sub.getSubscriptionFilter().getFindService().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+            sub.getSubscriptionFilter().getFindService().getName().add(new Name("%", null));
+
+            data.value.add(sub);
+
+            tckSubscription.subscription.saveSubscription(authInfoJoe, data);
+            Assert.fail();
+        } catch (Exception ex) {
+            HandleException(ex);
+
+        }
     }
 
     @Test
     public void JUDDI_606_8() {
+        System.out.println("JUDDI_606_8");
         //reset expiration
 
         try {
@@ -395,6 +440,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_9() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_9");
         //asynch subscriptions , key doesn't exist
 
         DatatypeFactory df = DatatypeFactory.newInstance();
@@ -426,6 +472,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_10() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_10");
         //asynch subscriptions, key exists , null interval
 
         DatatypeFactory df = DatatypeFactory.newInstance();
@@ -456,6 +503,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_11() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_11");
         //set subscription, make a change as the same user, get subscription results
         //no key specified
         DatatypeFactory df = DatatypeFactory.newInstance();
@@ -505,6 +553,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_12() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_12");
         //set subscription, make a change as the same user, get subscription results
         //no period specified
 
@@ -547,6 +596,7 @@ public class UDDI_080_SubscriptionIntegr
 
     @Test
     public void JUDDI_606_13() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_13");
         //set subscription, make a change as the same user, get subscription results
         //valid find_Business
         DatatypeFactory df = DatatypeFactory.newInstance();
@@ -594,7 +644,289 @@ public class UDDI_080_SubscriptionIntegr
             Assert.assertNotNull(subscriptionResults.getBusinessList().getBusinessInfos().getBusinessInfo().get(0));
             Assert.assertNotNull(subscriptionResults.getBusinessList().getBusinessInfos().getBusinessInfo().get(0).getBusinessKey());
             Assert.assertNotNull(subscriptionResults.getBusinessList().getBusinessInfos().getBusinessInfo().get(0).getName().get(0));
-            
+
+        } catch (Exception ex) {
+            HandleException(ex);
+            Assert.fail();
+        }
+    }
+
+    public void JUDDI_606_14() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_14");
+        //set subscription, make a change as the same user, get subscription results
+        //valid find_services
+        DatatypeFactory df = DatatypeFactory.newInstance();
+        try {
+
+            Holder<List<Subscription>> data = new Holder<List<Subscription>>();
+            data.value = new ArrayList<Subscription>();
+            Subscription sub = new Subscription();
+            sub.setBrief(false);
+            sub.setExpiresAfter(null);
+            sub.setMaxEntities(null);
+            sub.setNotificationInterval(null);
+            sub.setBindingKey(null);
+            sub.setSubscriptionFilter(new SubscriptionFilter());
+            sub.getSubscriptionFilter().setFindService(new FindService());
+            sub.getSubscriptionFilter().getFindService().setFindQualifiers(new FindQualifiers());
+            sub.getSubscriptionFilter().getFindService().getFindQualifiers().getFindQualifier().add(UDDIConstants.APPROXIMATE_MATCH);
+            sub.getSubscriptionFilter().getFindService().getName().add(new Name("%", null));
+            data.value.add(sub);
+
+            tckSubscription.subscription.saveSubscription(authInfoJoe, data);
+            SaveService sb = new SaveService();
+            sb.setAuthInfo(authInfoJoe);
+            BusinessService bs = new BusinessService();
+            bs.getName().add(new Name("svc", null));
+            sb.getBusinessService().add(bs);
+            publication.saveService(sb);
+
+            GetSubscriptionResults gsr = new GetSubscriptionResults();
+            gsr.setAuthInfo(authInfoJoe);
+            gsr.setSubscriptionKey(data.value.get(0).getSubscriptionKey());
+            gsr.setCoveragePeriod(new CoveragePeriod());
+            GregorianCalendar gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gcal.add(Calendar.HOUR, -1);
+            gsr.getCoveragePeriod().setStartPoint(df.newXMLGregorianCalendar(gcal));
+            gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gsr.getCoveragePeriod().setEndPoint(df.newXMLGregorianCalendar(gcal));
+            SubscriptionResultsList subscriptionResults = tckSubscription.subscription.getSubscriptionResults(gsr);
+            Assert.assertNotNull(subscriptionResults);
+            Assert.assertNull(subscriptionResults.getBusinessList());
+            Assert.assertNotNull(subscriptionResults.getCoveragePeriod());
+            Assert.assertNotNull(subscriptionResults.getServiceList());
+            Assert.assertNotNull(subscriptionResults.getServiceList().getServiceInfos().getServiceInfo().get(0));
+            Assert.assertNotNull(subscriptionResults.getServiceList().getServiceInfos().getServiceInfo().get(0).getBusinessKey());
+            Assert.assertNotNull(subscriptionResults.getServiceList().getServiceInfos().getServiceInfo().get(0).getName().get(0));
+
+        } catch (Exception ex) {
+            HandleException(ex);
+            Assert.fail();
+        }
+    }
+
+    public void JUDDI_606_15() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_15");
+        //set subscription, make a change as the same user, get subscription results
+        //valid publisher assertion, incomplete
+        DatatypeFactory df = DatatypeFactory.newInstance();
+        try {
+
+            Holder<List<Subscription>> data = new Holder<List<Subscription>>();
+            data.value = new ArrayList<Subscription>();
+            Subscription sub = new Subscription();
+            sub.setBrief(false);
+            sub.setExpiresAfter(null);
+            sub.setMaxEntities(null);
+            sub.setNotificationInterval(null);
+            sub.setBindingKey(null);
+            sub.setSubscriptionFilter(new SubscriptionFilter());
+            sub.getSubscriptionFilter().setGetAssertionStatusReport(new GetAssertionStatusReport());
+            sub.getSubscriptionFilter().getGetAssertionStatusReport().setCompletionStatus(CompletionStatus.STATUS_TO_KEY_INCOMPLETE);
+            data.value.add(sub);
+
+            tckSubscription.subscription.saveSubscription(authInfoJoe, data);
+
+            AddPublisherAssertions r = new AddPublisherAssertions();
+            r.setAuthInfo(authInfoJoe);
+            PublisherAssertion pa = new PublisherAssertion();
+            pa.setFromKey(TckBusiness.JOE_BUSINESS_KEY);
+            pa.setToKey(TckBusiness.SAM_BUSINESS_KEY);
+            pa.setKeyedReference(new KeyedReference());
+            pa.getKeyedReference().setKeyName("Subsidiary");
+            pa.getKeyedReference().setKeyValue("parent-child");
+
+            pa.getKeyedReference().setTModelKey("uddi:uddi.org:relationships");
+
+            r.getPublisherAssertion().add(pa);
+            publication.addPublisherAssertions(r);
+
+            GetSubscriptionResults gsr = new GetSubscriptionResults();
+            gsr.setAuthInfo(authInfoJoe);
+            gsr.setSubscriptionKey(data.value.get(0).getSubscriptionKey());
+            gsr.setCoveragePeriod(new CoveragePeriod());
+            GregorianCalendar gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gcal.add(Calendar.HOUR, -1);
+            gsr.getCoveragePeriod().setStartPoint(df.newXMLGregorianCalendar(gcal));
+            gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gsr.getCoveragePeriod().setEndPoint(df.newXMLGregorianCalendar(gcal));
+            SubscriptionResultsList subscriptionResults = tckSubscription.subscription.getSubscriptionResults(gsr);
+            Assert.assertNotNull(subscriptionResults);
+            Assert.assertNull(subscriptionResults.getBusinessList());
+            Assert.assertNotNull(subscriptionResults.getCoveragePeriod());
+            Assert.assertNull(subscriptionResults.getServiceList());
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport());
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem());
+            Assert.assertFalse(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().isEmpty());
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getFromKey(), TckBusiness.JOE_BUSINESS_KEY);
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getToKey(), TckBusiness.SAM_BUSINESS_KEY);
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getCompletionStatus());
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getCompletionStatus(), CompletionStatus.STATUS_TO_KEY_INCOMPLETE);
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getKeyedReference());
+        } catch (Exception ex) {
+            HandleException(ex);
+            Assert.fail();
+        }
+    }
+
+    public void JUDDI_606_16() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_16");
+        //set subscription, make a change as the same user, get subscription results
+        //valid publisher assertion, complete
+        DatatypeFactory df = DatatypeFactory.newInstance();
+        try {
+
+            Holder<List<Subscription>> data = new Holder<List<Subscription>>();
+            data.value = new ArrayList<Subscription>();
+            Subscription sub = new Subscription();
+            sub.setBrief(false);
+            sub.setExpiresAfter(null);
+            sub.setMaxEntities(null);
+            sub.setNotificationInterval(null);
+            sub.setBindingKey(null);
+            sub.setSubscriptionFilter(new SubscriptionFilter());
+            sub.getSubscriptionFilter().setGetAssertionStatusReport(new GetAssertionStatusReport());
+            sub.getSubscriptionFilter().getGetAssertionStatusReport().setCompletionStatus(CompletionStatus.STATUS_COMPLETE);
+            data.value.add(sub);
+
+            tckSubscription.subscription.saveSubscription(authInfoJoe, data);
+
+            AddPublisherAssertions r = new AddPublisherAssertions();
+            r.setAuthInfo(authInfoJoe);
+            PublisherAssertion pa = new PublisherAssertion();
+            pa.setFromKey(TckBusiness.JOE_BUSINESS_KEY);
+            pa.setToKey(TckBusiness.SAM_BUSINESS_KEY);
+            pa.setKeyedReference(new KeyedReference());
+            pa.getKeyedReference().setKeyName("Subsidiary");
+            pa.getKeyedReference().setKeyValue("parent-child");
+            pa.getKeyedReference().setTModelKey("uddi:uddi.org:relationships");
+            r.getPublisherAssertion().add(pa);
+            publication.addPublisherAssertions(r);
+
+
+            r = new AddPublisherAssertions();
+            r.setAuthInfo(authInfoSam);
+            pa = new PublisherAssertion();
+            pa.setFromKey(TckBusiness.JOE_BUSINESS_KEY);
+            pa.setToKey(TckBusiness.SAM_BUSINESS_KEY);
+            pa.setKeyedReference(new KeyedReference());
+            pa.getKeyedReference().setKeyName("Subsidiary");
+            pa.getKeyedReference().setKeyValue("parent-child");
+            pa.getKeyedReference().setTModelKey("uddi:uddi.org:relationships");
+            r.getPublisherAssertion().add(pa);
+            publication.addPublisherAssertions(r);
+
+
+
+            GetSubscriptionResults gsr = new GetSubscriptionResults();
+            gsr.setAuthInfo(authInfoJoe);
+            gsr.setSubscriptionKey(data.value.get(0).getSubscriptionKey());
+            gsr.setCoveragePeriod(new CoveragePeriod());
+            GregorianCalendar gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gcal.add(Calendar.HOUR, -1);
+            gsr.getCoveragePeriod().setStartPoint(df.newXMLGregorianCalendar(gcal));
+            gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gsr.getCoveragePeriod().setEndPoint(df.newXMLGregorianCalendar(gcal));
+            SubscriptionResultsList subscriptionResults = tckSubscription.subscription.getSubscriptionResults(gsr);
+            Assert.assertNotNull(subscriptionResults);
+            Assert.assertNull(subscriptionResults.getBusinessList());
+            Assert.assertNotNull(subscriptionResults.getCoveragePeriod());
+            Assert.assertNull(subscriptionResults.getServiceList());
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport());
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem());
+            Assert.assertFalse(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().isEmpty());
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getFromKey(), TckBusiness.JOE_BUSINESS_KEY);
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getToKey(), TckBusiness.SAM_BUSINESS_KEY);
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getCompletionStatus());
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getCompletionStatus(), CompletionStatus.STATUS_COMPLETE);
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getKeyedReference());
+        } catch (Exception ex) {
+            HandleException(ex);
+            Assert.fail();
+        }
+    }
+
+    public void JUDDI_606_17() throws DatatypeConfigurationException {
+        System.out.println("JUDDI_606_17");
+        //set subscription, make a change as the same user, get subscription results
+        //valid publisher assertion, deleted
+        DatatypeFactory df = DatatypeFactory.newInstance();
+        try {
+
+            Holder<List<Subscription>> data = new Holder<List<Subscription>>();
+            data.value = new ArrayList<Subscription>();
+            Subscription sub = new Subscription();
+            sub.setBrief(false);
+            sub.setExpiresAfter(null);
+            sub.setMaxEntities(null);
+            sub.setNotificationInterval(null);
+            sub.setBindingKey(null);
+            sub.setSubscriptionFilter(new SubscriptionFilter());
+            sub.getSubscriptionFilter().setGetAssertionStatusReport(new GetAssertionStatusReport());
+            sub.getSubscriptionFilter().getGetAssertionStatusReport().setCompletionStatus(CompletionStatus.STATUS_BOTH_INCOMPLETE);
+            data.value.add(sub);
+
+            tckSubscription.subscription.saveSubscription(authInfoJoe, data);
+
+            AddPublisherAssertions r = new AddPublisherAssertions();
+            r.setAuthInfo(authInfoJoe);
+            PublisherAssertion pa = new PublisherAssertion();
+            pa.setFromKey(TckBusiness.JOE_BUSINESS_KEY);
+            pa.setToKey(TckBusiness.SAM_BUSINESS_KEY);
+            pa.setKeyedReference(new KeyedReference());
+            pa.getKeyedReference().setKeyName("Subsidiary");
+            pa.getKeyedReference().setKeyValue("parent-child");
+            pa.getKeyedReference().setTModelKey("uddi:uddi.org:relationships");
+            r.getPublisherAssertion().add(pa);
+            publication.addPublisherAssertions(r);
+
+            //approve it
+            r = new AddPublisherAssertions();
+            r.setAuthInfo(authInfoSam);
+            r.getPublisherAssertion().add(pa);
+            publication.addPublisherAssertions(r);
+
+            DeletePublisherAssertions dp = new DeletePublisherAssertions();
+            dp.setAuthInfo(authInfoJoe);
+            dp.getPublisherAssertion().add(pa);
+            publication.deletePublisherAssertions(dp);
+
+            dp = new DeletePublisherAssertions();
+            dp.setAuthInfo(authInfoSam);
+            dp.getPublisherAssertion().add(pa);
+            publication.deletePublisherAssertions(dp);
+
+
+            GetSubscriptionResults gsr = new GetSubscriptionResults();
+            gsr.setAuthInfo(authInfoJoe);
+            gsr.setSubscriptionKey(data.value.get(0).getSubscriptionKey());
+            gsr.setCoveragePeriod(new CoveragePeriod());
+            GregorianCalendar gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gcal.add(Calendar.HOUR, -1);
+            gsr.getCoveragePeriod().setStartPoint(df.newXMLGregorianCalendar(gcal));
+            gcal = new GregorianCalendar();
+            gcal.setTimeInMillis(System.currentTimeMillis());
+            gsr.getCoveragePeriod().setEndPoint(df.newXMLGregorianCalendar(gcal));
+            SubscriptionResultsList subscriptionResults = tckSubscription.subscription.getSubscriptionResults(gsr);
+            Assert.assertNotNull(subscriptionResults);
+            Assert.assertNull(subscriptionResults.getBusinessList());
+            Assert.assertNotNull(subscriptionResults.getCoveragePeriod());
+            Assert.assertNull(subscriptionResults.getServiceList());
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport());
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem());
+            Assert.assertFalse(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().isEmpty());
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getFromKey(), TckBusiness.JOE_BUSINESS_KEY);
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getToKey(), TckBusiness.SAM_BUSINESS_KEY);
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getCompletionStatus());
+            Assert.assertEquals(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getCompletionStatus(), CompletionStatus.STATUS_BOTH_INCOMPLETE);
+            Assert.assertNotNull(subscriptionResults.getAssertionStatusReport().getAssertionStatusItem().get(0).getKeyedReference());
         } catch (Exception ex) {
             HandleException(ex);
             Assert.fail();

Modified: juddi/trunk/uddi-ws/src/main/java/org/uddi/api_v3/CompletionStatus.java
URL: http://svn.apache.org/viewvc/juddi/trunk/uddi-ws/src/main/java/org/uddi/api_v3/CompletionStatus.java?rev=1485899&r1=1485898&r2=1485899&view=diff
==============================================================================
--- juddi/trunk/uddi-ws/src/main/java/org/uddi/api_v3/CompletionStatus.java (original)
+++ juddi/trunk/uddi-ws/src/main/java/org/uddi/api_v3/CompletionStatus.java Thu May 23 23:36:44 2013
@@ -27,7 +27,39 @@ import javax.xml.bind.annotation.XmlType
 
 /**
  * <p>Java class for completionStatus.
- * 
+ * <p class="MsoBodyText" style="margin-left:1.0in;text-indent:-.25in"><span style="font-family:Symbol">·<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+</span></span><b><i>completionStatus</i></b>: This optional argument lets the
+publisher restrict the result set to only those relationships that have the
+specified status value.&nbsp; Assertion status is a calculated result based on the
+sum total of assertions made by the individuals that control specific business
+registrations.&nbsp; When no completionStatus element is provided, all assertions
+involving the businesses that the publisher owns are retrieved, without regard
+to the completeness of the relationship.&nbsp; completionStatus MUST contain one of
+the following values</p>
+
+<p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+</span></span><b>status:complete</b>: Passing this value causes only the
+publisher assertions that are complete to be returned.&nbsp; Each businessEntity
+listed in assertions that are complete has a visible relationship that directly
+reflects the data in a complete assertion (as described in the
+find_relatedBusinesses API).</p>
+
+<p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+</span></span><b>status:toKey_incomplete</b>: Passing this value causes only
+those publisher assertions where the party who controls the businessEntity
+referenced by the toKey value in an assertion, has not made a matching
+assertion, to be listed.</p>
+
+<p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+</span></span><b>status:fromKey_incomplete</b>: Passing this value causes only
+those publisher assertions where the party who controls the businessEntity
+referenced by the fromKey value in an assertion, has not made a matching
+assertion, to be listed.</p>
+
+<p class="MsoNormal" style="margin-left:1.5in;text-indent:-.25in"><span style="font-family:&quot;Courier New&quot;">o<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+</span></span><b>status:both_incomplete</b>. This status value, however, is only
+applicable to the context of UDDI subscription and SHOULD not be present as
+part of a response to a get_assertionStatusReport request.</p>  
  * <p>The following schema fragment specifies the expected content contained within this class.
  * <p>
  * <pre>
@@ -48,12 +80,25 @@ import javax.xml.bind.annotation.XmlType
 @XmlEnum
 public enum CompletionStatus implements Serializable{
 
+    /**
+     * causes only the publisher assertions that are complete to be returned
+     */
     @XmlEnumValue("status:complete")
     STATUS_COMPLETE("status:complete"),
+    /**
+     * causes only those publisher assertions where the party who controls the businessEntity referenced by the fromKey value in an assertion, has not made a matching assertion, to be listed.
+     */
     @XmlEnumValue("status:fromKey_incomplete")
     STATUS_FROM_KEY_INCOMPLETE("status:fromKey_incomplete"),
+    /**
+     *  causes only those publisher assertions where the party who controls the businessEntity referenced by the toKey value in an assertion, has not made a matching assertion, to be listed.
+     */
     @XmlEnumValue("status:toKey_incomplete")
     STATUS_TO_KEY_INCOMPLETE("status:toKey_incomplete"),
+    /**
+     * only applicable to the context of UDDI subscription and SHOULD not be present as part of a response to a get_assertionStatusReport request.
+     *  When appearing in an assertionStatusItem of a subscriptionResultsList, status:both_incomplete indicates that the publisher assertion embedded in the <b>assertionStatusItem has been deleted from both ends. </b>
+     */
     @XmlEnumValue("status:both_incomplete")
     STATUS_BOTH_INCOMPLETE("status:both_incomplete");
     private final String value;



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