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 2009/10/19 18:40:45 UTC
svn commit: r826718 - in /webservices/juddi/trunk: docs/
juddi-core/src/main/java/org/apache/juddi/api/impl/
juddi-core/src/main/java/org/apache/juddi/model/
juddi-core/src/main/java/org/apache/juddi/subscription/
juddi-core/src/main/resources/ juddi-c...
Author: kstam
Date: Mon Oct 19 16:40:45 2009
New Revision: 826718
URL: http://svn.apache.org/viewvc?rev=826718&view=rev
Log:
JUDDI-240 fixing date handling
Added:
webservices/juddi/trunk/juddiv3-samples/src/test/
webservices/juddi/trunk/juddiv3-samples/src/test/xml/
webservices/juddi/trunk/juddiv3-samples/src/test/xml/finder.xml
Modified:
webservices/juddi/trunk/docs/jUDDI-UserGuide.odt
webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java
webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/model/Subscription.java
webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/subscription/SubscriptionNotifier.java
webservices/juddi/trunk/juddi-core/src/main/resources/messages.properties
webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/subscription/SubscriptionNotifierTest.java
webservices/juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_090_SubscriptionListenerIntegrationTest.java
Modified: webservices/juddi/trunk/docs/jUDDI-UserGuide.odt
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/docs/jUDDI-UserGuide.odt?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
Binary files - no diff available.
Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/api/impl/InquiryHelper.java Mon Oct 19 16:40:45 2009
@@ -276,6 +276,7 @@
keysFound = FindServiceByCategoryGroupQuery.select(em, findQualifiers, body.getCategoryBag(), body.getBusinessKey(), keysFound);
keysFound = FindServiceByNameQuery.select(em, findQualifiers, body.getName(), body.getBusinessKey(), keysFound);
+ if (body.getTModelBag().getTModelKey().size()==0) body.setTModelBag(null);
return keysFound;
}
@@ -343,6 +344,10 @@
subscriptionStartIndex.value = null;
}
+ if (result.getServiceInfos()==null || result.getServiceInfos().getServiceInfo().size()==0) {
+ return null;
+ }
+
return result;
}
Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/model/Subscription.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/model/Subscription.java?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/model/Subscription.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/model/Subscription.java Mon Oct 19 16:40:45 2009
@@ -95,7 +95,7 @@
this.bindingKey = bindingKey;
}
- @Column(name = "notification_interval", nullable = false)
+ @Column(name = "notification_interval")
public String getNotificationInterval() {
return this.notificationInterval;
}
Modified: webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/subscription/SubscriptionNotifier.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/subscription/SubscriptionNotifier.java?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/subscription/SubscriptionNotifier.java (original)
+++ webservices/juddi/trunk/juddi-core/src/main/java/org/apache/juddi/subscription/SubscriptionNotifier.java Mon Oct 19 16:40:45 2009
@@ -59,16 +59,17 @@
public class SubscriptionNotifier extends TimerTask {
private Logger log = Logger.getLogger(this.getClass());
- private Timer timer = new Timer();
+ private Timer timer = null;
private long startBuffer = AppConfig.getConfiguration().getLong(Property.JUDDI_NOTIFICATION_START_BUFFER, 20000l); // 20s startup delay default
private long interval = AppConfig.getConfiguration().getLong(Property.JUDDI_NOTIFICATION_INTERVAL, 300000l); //5 min default
private UDDISubscriptionImpl subscriptionImpl = new UDDISubscriptionImpl();
- private static long ACCEPTABLE_LAG_TIME = 500l; //20 milliseconds
+ private static long ACCEPTABLE_LAG_TIME = 500l; //500 milliseconds
private static String SUBR_V3_NAMESPACE = "urn:uddi-org:subr_v3_portType";
private static String SUBSCRIPTION_LISTENER = "UDDISubscriptionListenerService";
public SubscriptionNotifier() throws ConfigurationException {
super();
+ timer = new Timer();
timer.scheduleAtFixedRate(this, startBuffer, interval);
}
@@ -78,11 +79,11 @@
long startTime = System.currentTimeMillis();
log.debug("Start Notification background task; checking if subscription notifications need to be send out..");
- Collection<Subscription> subscriptions = getAllSubscriptions();
+ Collection<Subscription> subscriptions = getAllAsyncSubscriptions();
for (Subscription subscription : subscriptions) {
if (subscription.getExpiresAfter()==null || subscription.getExpiresAfter().getTime() > startTime) {
try {
- GetSubscriptionResults getSubscriptionResults = buildGetSubscriptionResults(subscription);
+ GetSubscriptionResults getSubscriptionResults = buildGetSubscriptionResults(subscription, new Date(scheduledExecutionTime()));
getSubscriptionResults.setSubscriptionKey(subscription.getSubscriptionKey());
UddiEntityPublisher publisher = new UddiEntityPublisher();
publisher.setAuthorizedName(subscription.getAuthorizedName());
@@ -129,16 +130,15 @@
return false;
}
}
- protected GetSubscriptionResults buildGetSubscriptionResults(Subscription subscription)
+ protected GetSubscriptionResults buildGetSubscriptionResults(Subscription subscription, Date endPoint)
throws DispositionReportFaultMessage, DatatypeConfigurationException {
GetSubscriptionResults getSubscriptionResults = null;
Date startPoint = subscription.getLastNotified();
- if (startPoint==null) startPoint = subscription.getCreateDate();
- Date endPoint = new Date(scheduledExecutionTime());
+ if (startPoint==null) startPoint = new Date(0);
Duration duration = TypeConvertor.convertStringToDuration(subscription.getNotificationInterval());
- Date nextDesiredNotificationDate = startPoint;
+ Date nextDesiredNotificationDate = new Date(startPoint.getTime());
duration.addTo(nextDesiredNotificationDate);
if (subscription.getLastNotified()==null || nextDesiredNotificationDate.after(startPoint) && nextDesiredNotificationDate.before(endPoint)) {
@@ -172,7 +172,7 @@
* @return Collection of All Subscriptions in the system.
*/
@SuppressWarnings("unchecked")
- protected Collection<Subscription> getAllSubscriptions() {
+ protected Collection<Subscription> getAllAsyncSubscriptions() {
Collection<Subscription> subscriptions = null;
EntityManager em = PersistenceManager.getEntityManager();
EntityTransaction tx = em.getTransaction();
Modified: webservices/juddi/trunk/juddi-core/src/main/resources/messages.properties
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/main/resources/messages.properties?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/main/resources/messages.properties (original)
+++ webservices/juddi/trunk/juddi-core/src/main/resources/messages.properties Mon Oct 19 16:40:45 2009
@@ -148,7 +148,7 @@
errors.findrelatedbusiness.NoInput=At least one businessKey, fromKey or toKey must be supplied
errors.findrelatedbusiness.MultipleInput=Only one businessKey, fromKey or toKey can be supplied
errors.findrelatedbusiness.BlankKeyedRef=All fields of the keyedReference provided in find_relatedBusiness must contain values
-errors.tmodelbag.NoInput=At tModel key must be supplied in the tModelBag
+errors.tmodelbag.NoInput=A tModel key must be supplied in the tModelBag
errors.keybag.NoInput=A key bag must have at least one key
errors.discardtransfertoken.NoInput=A discard_transferToken request must contain either a transferToken or keyBag
errors.gettransfertoken.KeyExists=The key already exists in a transfer request
Modified: webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/subscription/SubscriptionNotifierTest.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/subscription/SubscriptionNotifierTest.java?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/subscription/SubscriptionNotifierTest.java (original)
+++ webservices/juddi/trunk/juddi-core/src/test/java/org/apache/juddi/subscription/SubscriptionNotifierTest.java Mon Oct 19 16:40:45 2009
@@ -17,6 +17,7 @@
import java.net.MalformedURLException;
import java.rmi.RemoteException;
import java.util.Collection;
+import java.util.Date;
import javax.xml.datatype.DatatypeConfigurationException;
@@ -71,7 +72,7 @@
tckBusinessService.saveJoePublisherService(authInfoJoe);
tckBindingTemplate.saveJoePublisherBinding(authInfoJoe);
tckSubscription.saveJoePublisherSubscription(authInfoJoe);
- tckSubscription.getJoePublisherSubscriptionResults(authInfoJoe);
+ //tckSubscription.getJoePublisherSubscriptionResults(authInfoJoe);
} catch (RemoteException e) {
logger.error(e.getMessage(), e);
Assert.fail("Could not obtain authInfo token.");
@@ -83,10 +84,10 @@
{
SubscriptionNotifier notifier = new SubscriptionNotifier();
notifier.cancel();
- Collection<Subscription> subscriptions = notifier.getAllSubscriptions();
+ Collection<Subscription> subscriptions = notifier.getAllAsyncSubscriptions();
Assert.assertEquals(1, subscriptions.size());
Subscription subscription = subscriptions.iterator().next();
- GetSubscriptionResults getSubscriptionResults = notifier.buildGetSubscriptionResults(subscription);
+ GetSubscriptionResults getSubscriptionResults = notifier.buildGetSubscriptionResults(subscription, new Date());
getSubscriptionResults.setSubscriptionKey(subscription.getSubscriptionKey());
UddiEntityPublisher publisher = new UddiEntityPublisher();
publisher.setAuthorizedName(subscription.getAuthorizedName());
Added: webservices/juddi/trunk/juddiv3-samples/src/test/xml/finder.xml
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddiv3-samples/src/test/xml/finder.xml?rev=826718&view=auto
==============================================================================
--- webservices/juddi/trunk/juddiv3-samples/src/test/xml/finder.xml (added)
+++ webservices/juddi/trunk/juddiv3-samples/src/test/xml/finder.xml Mon Oct 19 16:40:45 2009
@@ -0,0 +1,8 @@
+<subscriptionFilter xmlns="urn:uddi-org:sub_v3">
+ <find_service xmlns="urn:uddi-org:api_v3" xmlns:xml="http://www.w3.org/XML/1998/namespace">
+ <findQualifiers>
+ <findQualifier>exactMatch</findQualifier>
+ </findQualifiers>
+ <name xml:lang="en">HelloWorld</name>
+ </find_service>
+</subscriptionFilter>
\ No newline at end of file
Modified: webservices/juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_090_SubscriptionListenerIntegrationTest.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_090_SubscriptionListenerIntegrationTest.java?rev=826718&r1=826717&r2=826718&view=diff
==============================================================================
--- webservices/juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_090_SubscriptionListenerIntegrationTest.java (original)
+++ webservices/juddi/trunk/uddi-tck/src/test/java/org/apache/juddi/v3/tck/UDDI_090_SubscriptionListenerIntegrationTest.java Mon Oct 19 16:40:45 2009
@@ -112,7 +112,7 @@
//waiting up to 10 seconds for the listener to notice the change.
String test="";
- for (int i=0; i<20; i++) {
+ for (int i=0; i<200; i++) {
Thread.sleep(500);
test = readLogAsString("./target/uddiclient.log");
System.out.print(".");
---------------------------------------------------------------------
To unsubscribe, e-mail: juddi-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: juddi-cvs-help@ws.apache.org