[prev in list] [next in list] [prev in thread] [next in thread]
List: pubscribe-dev
Subject: svn commit: r151587 - in
From: lischke () apache ! org
Date: 2005-02-06 14:23:15
Message-ID: 20050206142315.94125.qmail () minotaur ! apache ! org
[Download RAW message or body]
Author: lischke
Date: Sun Feb 6 06:23:12 2005
New Revision: 151587
URL: http://svn.apache.org/viewcvs?view=rev&rev=151587
Log:
added porttypes (apollo styler)
Added:
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/EventSourcePortType.java
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionEndPortType.java
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionManagerPortType.java
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/EventSourcePortTypeImpl.java
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/NotificationPortTypeImpl.java
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionEndPortTypeImpl.java
incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionManagerPortTypeImpl.java
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/EventSourcePortType.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/EventSourcePortType.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/EventSourcePortType.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/EventSourcePortType.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,22 @@
+/* Generated by Together */
+
+package org.apache.ws.eventing.porttype;
+
+import java.rmi.RemoteException;
+
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.SubscribeDocument;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.SubscribeResponseDocument;
+
+/**
+ * This is the Port of the Publisher,
+ * it enables Subscriptions.
+ */
+public interface EventSourcePortType {
+ /**
+ *
+ * @param body
+ * @throws RemoteException
+ * @return
+ */
+ SubscribeResponseDocument subscribe(SubscribeDocument body) throws \
RemoteException; +}
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionEndPortType.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionEndPortType.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionEndPortType.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionEndPortType.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,10 @@
+/* Generated by Together */
+
+package org.apache.ws.eventing.porttype;
+
+import java.rmi.RemoteException;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.SubscriptionEndDocument;
+
+public interface SubscriptionEndPortType {
+ void subscriptionEnd(SubscriptionEndDocument body) throws RemoteException;
+}
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionManagerPortType.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionManagerPortType.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionManagerPortType.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/SubscriptionManagerPortType.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,19 @@
+/* Generated by Together */
+
+package org.apache.ws.eventing.porttype;
+
+import java.rmi.RemoteException;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.RenewDocument;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.RenewResponseDocument;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.UnsubscribeDocument;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.GetStatusDocument;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.GetStatusResponseDocument;
+
+
+public interface SubscriptionManagerPortType {
+ RenewResponseDocument renewMsg(RenewDocument body) throws RemoteException;
+
+ void unsubscribeMsg(UnsubscribeDocument body) throws RemoteException;
+
+ GetStatusResponseDocument getStatusMsg(GetStatusDocument body) throws \
RemoteException; +}
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/EventSourcePortTypeImpl.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/EventSourcePortTypeImpl.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/EventSourcePortTypeImpl.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/EventSourcePortTypeImpl.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,69 @@
+/*
+ * Copyright 2001-2004 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.ws.eventing.porttype.impl;
+import org.apache.ws.addressing.*;
+
+import org.apache.ws.eventing.YFilterStore;
+import org.apache.ws.eventing.RemoteSubscription;
+
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.SubscribeDocument;
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.SubscribeResponseDocument;
+
+import javax.xml.namespace.QName;
+import java.rmi.RemoteException;
+
+import org.apache.ws.eventing.porttype.EventSourcePortType;
+
+public class EventSourcePortTypeImpl implements EventSourcePortType {
+
+ public SubscribeResponseDocument subscribe(SubscribeDocument body) throws \
RemoteException { + //create Subscription
+ Context initialContext = new InitialContext( );
+ RemoteSubscriptionHome sH = (RemoteSubscriptionHome) initialContext.lookup( \
SubscriptionHome.HOME_LOCATION ); +
+ RemoteSubscription subscription = sH.create(, getResourceKey(), \
((AbstractResourceContext)getResourceContext()).getResourceHomeLocation()); + \
try{ + YFilterStore b = YFilterStore.instance();
+ RemoteSubscription s = new RemoteSubscription(body);
+
+ String id = b.addSubscription(s);
+
+ //build response
+ SubscribeResponseDocument responseDom= \
SubscribeResponseDocument.Factory.newInstance(); + \
SubscribeResponseDocument.SubscribeResponse response = \
responseDom.addNewSubscribeResponse(); +
+ org.xmlsoap.schemas.ws.x2004.x08.addressing.EndpointReferenceType e = \
response.addNewSubscriptionManager(); + \
org.xmlsoap.schemas.ws.x2004.x08.addressing.AttributedURI auri = e.addNewAddress(); + \
auri.setStringValue("http://localhost:7070/axis/services/SubscriptionManagerPort"); + \
org.xmlsoap.schemas.ws.x2004.x08.addressing.ReferencePropertiesType rp = \
e.addNewReferenceProperties(); + \
org.apache.ws.util.XmlBeanUtils.addChildElement(rp,new \
javax.xml.namespace.QName("http://schemas.xmlsoap.org/ws/2004/08/eventing", \
"Identifier")); + //wrapper
+ //EndpointReference ep= new XmlBeansEndpointReference(e);
+
+ //TODO why not ExpirationType???
+ //ExpirationType et = response.aExpirationType.Factory.("now");
+
+ return responseDom;
+ }catch(Exception e){
+ //TODO error
+ e.printStackTrace();
+ }
+ //TODO error
+ return null;
+ }
+
+}
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/NotificationPortTypeImpl.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/NotificationPortTypeImpl.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/NotificationPortTypeImpl.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/NotificationPortTypeImpl.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,34 @@
+/*
+ * Copyright 2001-2004 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.ws.eventing.porttype.impl;
+
+import org.apache.axis.message.*;
+
+import org.apache.ws.eventing.SubscriberStore;
+
+
+public class NotificationPortTypeImpl{
+
+ //TODO maybe remove Axis dep
+ public void filter(SOAPEnvelope req, SOAPEnvelope resp){
+ SubscriberStore b = SubscriberStore.instance();
+ System.out.println("Notifier.filter()");
+ b.notify(req);
+ }
+}
+
+
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionEndPortTypeImpl.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionEndPortTypeImpl.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionEndPortTypeImpl.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionEndPortTypeImpl.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,25 @@
+/*
+ * Copyright 2001-2004 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.ws.eventing.porttype.impl;
+
+import java.rmi.RemoteException;
+import org.apache.ws.eventing.porttype.SubscriptionEndPortType;
+public class SubscriptionEndPortTypeImpl implements SubscriptionEndPortType{
+ public void subscriptionEnd(org.xmlsoap.schemas.ws.x2004.x08.eventing.SubscriptionEndDocument \
body) throws RemoteException { + \
System.out.println("SubscriptionEnd"+body.xmlText()); + }
+}
Added: incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionManagerPortTypeImpl.java
URL: http://svn.apache.org/viewcvs/incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionManagerPortTypeImpl.java?view=auto&rev=151587
==============================================================================
--- incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionManagerPortTypeImpl.java \
(added)
+++ incubator/hermes/trunk/src/java/org/apache/ws/eventing/porttype/impl/SubscriptionManagerPortTypeImpl.java \
Sun Feb 6 06:23:12 2005 @@ -0,0 +1,92 @@
+/**
+ * SubscriptionManagerBindingImpl.java
+ *
+ * This file was auto-generated from WSDL
+ * by the Apache Axis 1.2RC2 Dec 19, 2004 (04:36:14 CET) WSDL2Java emitter.
+ */
+
+package org.apache.ws.eventing.porttype.impl;
+import org.apache.ws.addressing.*;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import javax.xml.soap.SOAPHeader;
+
+import org.apache.ws.eventing.Subscription;
+import org.apache.ws.eventing.YFilterStore;
+
+import org.xmlsoap.schemas.ws.x2004.x08.eventing.*;
+import java.rmi.RemoteException;
+import org.apache.ws.eventing.porttype.SubscriptionManagerPortType;
+
+public class SubscriptionManagerPortTypeImpl implements SubscriptionManagerPortType \
{ +
+ public static String extractIdentifier() /*throws \
javax.xml.soap.SOAPException*/{ + //TODO !!!! extract identifier from Header
+ //first try to become wse:Identifier
+/*
+ MessageContext mC = MessageContext.getCurrentContext();
+ SOAPHeader h =mC.getMessage().getSOAPHeader();
+ NodeList it = \
h.getElementsByTagNameNS("http://schemas.xmlsoap.org/ws/2004/08/eventing", \
"Identifier"); + if(it.getLength()==0)
+ throw new javax.xml.soap.SOAPException("<wse:Identifier> Tag is missing \
in the Header.... i dunno which Subscription you mean"); + Node idnode = \
it.item(0); + \
if((idnode.getFirstChild()!=null)&&(idnode.getFirstChild().getNodeType()==Node.TEXT_NODE))
+ return(idnode.getFirstChild().getNodeValue());
+ else
+ throw new javax.xml.soap.SOAPException("<wse:Identifier> Tag is empty in \
the Header.... i dunno which Subscription you mean"); + **/
+ return("1");
+ }
+
+ public RenewResponseDocument renewMsg(RenewDocument body) throws RemoteException \
{ + String id = extractIdentifier();
+
+ YFilterStore b = YFilterStore.instance();
+ Subscription s = (org.apache.ws.eventing.Subscription)b.getSubscription(id);
+ //update expiration
+ //TODO test Calendar
+ s.setTerminationTime((java.util.Calendar)body.getRenew().getExpires());
+
+ RenewResponseDocument responseDom = \
RenewResponseDocument.Factory.newInstance(); + \
RenewResponseDocument.RenewResponse response = responseDom.addNewRenewResponse(); + \
//TODO test Calendar + response.setExpires(s.getTerminationTime());
+
+ return(responseDom);
+ }
+
+ public GetStatusResponseDocument getStatusMsg(GetStatusDocument body) throws \
RemoteException { +// try{
+ String id = extractIdentifier();
+ //ask the Broker about the Status
+ YFilterStore b = YFilterStore.instance();
+ Subscription s = \
(org.apache.ws.eventing.Subscription)b.getSubscription(id); +
+ //build response
+ GetStatusResponseDocument responseDom = \
GetStatusResponseDocument.Factory.newInstance(); + \
GetStatusResponseDocument.GetStatusResponse response = \
responseDom.addNewGetStatusResponse(); + //TODO check calendar
+ response.setExpires(s.getTerminationTime());
+ return(responseDom);
+/* }catch(Exception e){
+ e.printStackTrace();
+ throw new java.rmi.RemoteException("getStatusMsg",e);
+ }
+ **/
+ }
+
+ public void unsubscribeMsg(UnsubscribeDocument body) throws RemoteException {
+ try{
+ String id = extractIdentifier();
+ System.out.println("unsubscribe Subscription: "+id);
+ YFilterStore b = YFilterStore.instance();
+ b.removeSubscription(id);
+
+ }catch(Exception e){
+ e.printStackTrace();
+ throw new java.rmi.RemoteException("unsubscribeMsg",e);
+ }
+ }
+
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: hermes-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: hermes-dev-help@ws.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic