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/15 03:02:50 UTC
svn commit: r825361 - in
/webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets:
client/ client/service/ server/service/
Author: kstam
Date: Thu Oct 15 01:02:49 2009
New Revision: 825361
URL: http://svn.apache.org/viewvc?rev=825361&view=rev
Log:
JUDDI-240 working on subscriptions
Modified:
webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/SubscriptionPanel.java
webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/UDDISubscription.java
webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionService.java
webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionServiceAsync.java
webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/server/service/SubscriptionServiceImpl.java
Modified: webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/SubscriptionPanel.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/SubscriptionPanel.java?rev=825361&r1=825360&r2=825361&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/SubscriptionPanel.java (original)
+++ webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/SubscriptionPanel.java Thu Oct 15 01:02:49 2009
@@ -99,12 +99,12 @@
}
- protected void deleteSubscription(){
+ protected void deleteSubscription(String authToken){
if (subscription!=null) {
subscription.setSubscriptionKey(subscriptionKeyBox.getText());
subscription.setClerkName(clerkNameBox.getText());
- subscriptionServiceAsync.deleteSubscription(subscription, new AsyncCallback<SubscriptionResponse>()
+ subscriptionServiceAsync.deleteSubscription(authToken, subscription, new AsyncCallback<SubscriptionResponse>()
{
public void onFailure(Throwable caught) {
Window.alert("Could not connect to the UDDI registry. " + caught.getMessage());
@@ -149,7 +149,7 @@
}
- protected void saveSubscription() {
+ protected void saveSubscription(String authToken) {
if (subscription!=null) {
subscription.setBindingKey(bindingKeyBox.getText());
@@ -161,7 +161,7 @@
subscription.setSubscriptionKey(subscriptionKeyBox.getText());
subscription.setClerkName(clerkNameBox.getText());
- subscriptionServiceAsync.saveSubscription(subscription, new AsyncCallback<SubscriptionResponse>()
+ subscriptionServiceAsync.saveSubscription(authToken, subscription, new AsyncCallback<SubscriptionResponse>()
{
public void onFailure(Throwable caught) {
Window.alert("Could not connect to the UDDI registry. " + caught.getMessage());
Modified: webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/UDDISubscription.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/UDDISubscription.java?rev=825361&r1=825360&r2=825361&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/UDDISubscription.java (original)
+++ webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/UDDISubscription.java Thu Oct 15 01:02:49 2009
@@ -99,7 +99,7 @@
public void saveSubscription() {
if (detailPanel!=null) {
- detailPanel.saveSubscription();
+ detailPanel.saveSubscription(getToken());
}
}
@@ -113,7 +113,7 @@
public void deleteSubscription() {
if (detailPanel!=null) {
- detailPanel.deleteSubscription();
+ detailPanel.deleteSubscription(getToken());
}
}
Modified: webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionService.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionService.java?rev=825361&r1=825360&r2=825361&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionService.java (original)
+++ webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionService.java Thu Oct 15 01:02:49 2009
@@ -29,6 +29,7 @@
public interface SubscriptionService extends RemoteService {
public SubscriptionResponse getSubscriptions();
- public SubscriptionResponse saveSubscription(Subscription subscription);
- public SubscriptionResponse deleteSubscription(Subscription subscription);
+ public SubscriptionResponse saveSubscription(String authToken, Subscription subscription);
+ public SubscriptionResponse deleteSubscription(String authToken, Subscription subscription);
+ public SubscriptionResponse invokeSyncSubscription(String authToken, Subscription subscription);
}
Modified: webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionServiceAsync.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionServiceAsync.java?rev=825361&r1=825360&r2=825361&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionServiceAsync.java (original)
+++ webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/client/service/SubscriptionServiceAsync.java Thu Oct 15 01:02:49 2009
@@ -27,8 +27,8 @@
*/
public interface SubscriptionServiceAsync extends RemoteService {
public void getSubscriptions(AsyncCallback<SubscriptionResponse> callback);
- public void saveSubscription(Subscription subscription, AsyncCallback<SubscriptionResponse> callback);
- public void deleteSubscription(Subscription subscription, AsyncCallback<SubscriptionResponse> callback);
-
+ public void saveSubscription(String authToken, Subscription subscription, AsyncCallback<SubscriptionResponse> callback);
+ public void deleteSubscription(String authToken, Subscription subscription, AsyncCallback<SubscriptionResponse> callback);
+ public void invokeSyncSubscription(String authToken, Subscription subscription, AsyncCallback<SubscriptionResponse> callback);
}
Modified: webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/server/service/SubscriptionServiceImpl.java
URL: http://svn.apache.org/viewvc/webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/server/service/SubscriptionServiceImpl.java?rev=825361&r1=825360&r2=825361&view=diff
==============================================================================
--- webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/server/service/SubscriptionServiceImpl.java (original)
+++ webservices/juddi/trunk/juddi-console/uddi-portlets/src/main/java/org/apache/juddi/portlets/server/service/SubscriptionServiceImpl.java Thu Oct 15 01:02:49 2009
@@ -28,6 +28,11 @@
import javax.xml.datatype.XMLGregorianCalendar;
import javax.xml.ws.Holder;
+import org.apache.juddi.api_v3.ClientSubscriptionInfo;
+import org.apache.juddi.api_v3.DeleteClientSubscriptionInfo;
+import org.apache.juddi.api_v3.SaveClerk;
+import org.apache.juddi.api_v3.SaveClientSubscriptionInfo;
+import org.apache.juddi.api_v3.SaveNode;
import org.apache.juddi.jaxb.JAXBMarshaller;
import org.apache.juddi.portlets.client.model.Node;
import org.apache.juddi.portlets.client.model.Subscription;
@@ -37,9 +42,11 @@
import org.apache.juddi.v3.client.config.UDDIClerkManager;
import org.apache.juddi.v3.client.config.UDDINode;
import org.apache.juddi.v3.client.transport.Transport;
+import org.apache.juddi.v3_service.JUDDIApiPortType;
import org.apache.log4j.Logger;
import org.apache.log4j.helpers.Loader;
import org.uddi.sub_v3.DeleteSubscription;
+import org.uddi.sub_v3.GetSubscriptionResults;
import org.uddi.sub_v3.ObjectFactory;
import org.uddi.sub_v3.SubscriptionFilter;
import org.uddi.v3_service.UDDISubscriptionPortType;
@@ -55,8 +62,8 @@
private static final long serialVersionUID = 6366224282740095468L;
private Logger logger = Logger.getLogger(this.getClass());
private final static String UP = "Up";
-
-
+
+
public SubscriptionResponse getSubscriptions()
{
SubscriptionResponse response = new SubscriptionResponse();
@@ -90,146 +97,206 @@
} catch (Exception e) {
response.setSuccess(false);
response.setMessage(e.getMessage());
- response.setErrorCode("102");
+ response.setErrorCode("102");
}
return response;
}
-
+
private Node getSubscriptions(HttpSession session, UDDIClerk clerk) {
-
+
Node modelNode = new Node();
UDDINode node = clerk.getUDDINode();
modelNode.setName(node.getName());
modelNode.setClerkName(clerk.getName());
modelNode.setDescription(node.getDescription());
try {
- String clazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(clerk.getUDDINode().getName()).getProxyTransport();
- Class<?> transportClass = Loader.loadClass(clazz);
- Transport transport = (Transport) transportClass.getConstructor(String.class).newInstance(clerk.getUDDINode().getName());
- String authToken = (String) session.getAttribute("token-" + clerk.getName());
-
- UDDISubscriptionPortType subscriptionService = transport.getUDDISubscriptionService();
- List<org.uddi.sub_v3.Subscription> subscriptions = subscriptionService.getSubscriptions(authToken);
- for (org.uddi.sub_v3.Subscription subscription : subscriptions) {
- String expiresAfter = null;
- if (subscription.getExpiresAfter()!=null) expiresAfter = subscription.getExpiresAfter().toString();
- String rawFilter = JAXBMarshaller.marshallToString(new ObjectFactory().createSubscriptionFilter(subscription.getSubscriptionFilter()), "org.uddi.sub_v3");
- Subscription modelSubscription = new Subscription(
- subscription.getBindingKey(),
- subscription.isBrief(),
- expiresAfter,
- subscription.getMaxEntities(),
- subscription.getNotificationInterval().toString(),
- rawFilter,
- subscription.getSubscriptionKey());
- modelSubscription.setNode(modelNode);
- modelNode.getSubscriptions().add(modelSubscription);
- }
- modelNode.setStatus(UP);
- } catch (Exception e) {
- logger.error("Could not obtain subscription due to " + e.getMessage(), e);
- modelNode.setStatus("Down, communication problem: " + e.getMessage());
- }
- return modelNode;
+ String clazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(clerk.getUDDINode().getName()).getProxyTransport();
+ Class<?> transportClass = Loader.loadClass(clazz);
+ Transport transport = (Transport) transportClass.getConstructor(String.class).newInstance(clerk.getUDDINode().getName());
+ String authToken = (String) session.getAttribute("token-" + clerk.getName());
+
+ UDDISubscriptionPortType subscriptionService = transport.getUDDISubscriptionService();
+ List<org.uddi.sub_v3.Subscription> subscriptions = subscriptionService.getSubscriptions(authToken);
+ for (org.uddi.sub_v3.Subscription subscription : subscriptions) {
+ String expiresAfter = null;
+ if (subscription.getExpiresAfter()!=null) expiresAfter = subscription.getExpiresAfter().toString();
+ String rawFilter = JAXBMarshaller.marshallToString(new ObjectFactory().createSubscriptionFilter(subscription.getSubscriptionFilter()), "org.uddi.sub_v3");
+ Subscription modelSubscription = new Subscription(
+ subscription.getBindingKey(),
+ subscription.isBrief(),
+ expiresAfter,
+ subscription.getMaxEntities(),
+ subscription.getNotificationInterval().toString(),
+ rawFilter,
+ subscription.getSubscriptionKey());
+ modelSubscription.setNode(modelNode);
+ modelNode.getSubscriptions().add(modelSubscription);
+ }
+ modelNode.setStatus(UP);
+ } catch (Exception e) {
+ logger.error("Could not obtain subscription due to " + e.getMessage(), e);
+ modelNode.setStatus("Down, communication problem: " + e.getMessage());
+ }
+ return modelNode;
}
-
- public SubscriptionResponse saveSubscription(Subscription modelSubscription) {
-
+
+ public SubscriptionResponse saveSubscription(String userAuthToken, Subscription modelSubscription) {
+
HttpServletRequest request = getThreadLocalRequest();
HttpSession session = request.getSession();
SubscriptionResponse response = new SubscriptionResponse();
-
- logger.debug("Sending saveSubscriptions request..");
+
+ logger.info("Sending saveSubscriptions request..");
try {
- UDDIClerk clerk = UDDIClerkManager.getClientConfig().getUDDIClerks().get(modelSubscription.getClerkName());
- String clazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(clerk.getUDDINode().getName()).getProxyTransport();
- Class<?> transportClass = Loader.loadClass(clazz);
- Transport transport = (Transport) transportClass.getConstructor(String.class).newInstance(clerk.getUDDINode().getName());
- UDDISubscriptionPortType subscriptionService = transport.getUDDISubscriptionService();
- List<org.uddi.sub_v3.Subscription> subscriptionList = new ArrayList<org.uddi.sub_v3.Subscription>();
- org.uddi.sub_v3.Subscription subscription = new org.uddi.sub_v3.Subscription();
- subscription.setBindingKey(modelSubscription.getBindingKey());
- subscription.setBrief(modelSubscription.getBrief());
- if (!"".equals(modelSubscription.getExpiresAfter())) {
- XMLGregorianCalendar calendar = DatatypeFactory.newInstance().newXMLGregorianCalendar(modelSubscription.getExpiresAfter());
- subscription.setExpiresAfter(calendar);
- }
- subscription.setMaxEntities(modelSubscription.getMaxEntities());
- if (!"".equals(modelSubscription.getNotificationInterval())) {
- Duration duration = DatatypeFactory.newInstance().newDuration(modelSubscription.getNotificationInterval());
- subscription.setNotificationInterval(duration);
- }
- if (!"".equals(modelSubscription.getSubscriptionFilter())) {
- SubscriptionFilter subscriptionFilter = (SubscriptionFilter)JAXBMarshaller.unmarshallFromString(modelSubscription.getSubscriptionFilter(), JAXBMarshaller.PACKAGE_SUBSCRIPTION);
- subscription.setSubscriptionFilter(subscriptionFilter);
- }
- subscription.setSubscriptionKey(modelSubscription.getSubscriptionKey());
- subscriptionList.add(subscription);
- Holder<List<org.uddi.sub_v3.Subscription>> subscriptionHolder = new Holder<List<org.uddi.sub_v3.Subscription>>();
- subscriptionHolder.value = subscriptionList;
- String authToken = (String) session.getAttribute("token-" + clerk.getName());
- subscriptionService.saveSubscription(authToken, subscriptionHolder);
- subscription = subscriptionHolder.value.get(0);
- String expiresAfter = null;
- if (subscription.getExpiresAfter()!=null) expiresAfter = subscription.getExpiresAfter().toString();
- String rawFilter = JAXBMarshaller.marshallToString(new ObjectFactory().createSubscriptionFilter(subscription.getSubscriptionFilter()), "org.uddi.sub_v3");
- Subscription savedModelSubscription = new Subscription(
- subscription.getBindingKey(),
- subscription.isBrief(),
- expiresAfter,
- subscription.getMaxEntities(),
- subscription.getNotificationInterval().toString(),
- rawFilter,
- subscription.getSubscriptionKey());
- savedModelSubscription.setNode(modelSubscription.getNode());
- response.setSubscription(savedModelSubscription);
- response.setSuccess(true);
- } catch (Exception e) {
- logger.error("Could not save subscription. " + e.getMessage(), e);
- response.setSuccess(false);
- response.setMessage(e.getMessage());
- response.setErrorCode("102");
- } catch (Throwable t) {
- logger.error("Could not save subscription. " + t.getMessage(), t);
- response.setSuccess(false);
- response.setMessage(t.getMessage());
- response.setErrorCode("102");
- }
-
+ //before sending this we need to ready the listener node
+ UDDIClerk clerk = UDDIClerkManager.getClientConfig().getUDDIClerks().get(modelSubscription.getClerkName());
+
+ logger.info("Updating default UDDI server..");
+ String defaultClazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(Constants.NODE_NAME).getProxyTransport();
+ Class<?> defaultTransportClass = Loader.loadClass(defaultClazz);
+ Transport defaultTransport = (Transport) defaultTransportClass.getConstructor(String.class).newInstance(Constants.NODE_NAME);
+ JUDDIApiPortType juddiApiService = defaultTransport.getJUDDIApiService();
+ //making sure our node info is there and up to date.
+ SaveNode saveNode = new SaveNode();
+ saveNode.setAuthInfo(userAuthToken);
+ saveNode.getNode().add(clerk.getApiClerk().getNode());
+ juddiApiService.saveNode(saveNode);
+ //making sure our clerk info is there and up to date
+ SaveClerk saveClerk = new SaveClerk();
+ saveClerk.setAuthInfo(userAuthToken);
+ saveClerk.getClerk().add(clerk.getApiClerk());
+ juddiApiService.saveClerk(saveClerk);
+ logger.debug("Updating default UDDI server completed.");
+
+ SaveClientSubscriptionInfo saveClientSubscriptionInfo = new SaveClientSubscriptionInfo();
+ saveClientSubscriptionInfo.setAuthInfo(userAuthToken);
+ ClientSubscriptionInfo clientSubscriptionInfo = new ClientSubscriptionInfo();
+ clientSubscriptionInfo.setSubscriptionKey(modelSubscription.getSubscriptionKey());
+ clientSubscriptionInfo.setClerk(clerk.getApiClerk());
+ saveClientSubscriptionInfo.getClientSubscriptionInfo().add(clientSubscriptionInfo);
+ //save clientSubscription to the listening UDDI default server.
+ juddiApiService.saveClientSubscriptionInfo(saveClientSubscriptionInfo);
+ logger.debug("Saved ClientSubscriptionInfo to the default UDDI server");
+
+ //the listening server is ready; now add the subscription
+ String clazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(clerk.getUDDINode().getName()).getProxyTransport();
+ Class<?> transportClass = Loader.loadClass(clazz);
+ Transport transport = (Transport) transportClass.getConstructor(String.class).newInstance(clerk.getUDDINode().getName());
+ UDDISubscriptionPortType subscriptionService = transport.getUDDISubscriptionService();
+ List<org.uddi.sub_v3.Subscription> subscriptionList = new ArrayList<org.uddi.sub_v3.Subscription>();
+ org.uddi.sub_v3.Subscription subscription = new org.uddi.sub_v3.Subscription();
+ subscription.setBindingKey(modelSubscription.getBindingKey());
+ subscription.setBrief(modelSubscription.getBrief());
+ if (!"".equals(modelSubscription.getExpiresAfter())) {
+ XMLGregorianCalendar calendar = DatatypeFactory.newInstance().newXMLGregorianCalendar(modelSubscription.getExpiresAfter());
+ subscription.setExpiresAfter(calendar);
+ }
+ subscription.setMaxEntities(modelSubscription.getMaxEntities());
+ if (!"".equals(modelSubscription.getNotificationInterval())) {
+ Duration duration = DatatypeFactory.newInstance().newDuration(modelSubscription.getNotificationInterval());
+ subscription.setNotificationInterval(duration);
+ }
+ if (!"".equals(modelSubscription.getSubscriptionFilter())) {
+ SubscriptionFilter subscriptionFilter = (SubscriptionFilter)JAXBMarshaller.unmarshallFromString(modelSubscription.getSubscriptionFilter(), JAXBMarshaller.PACKAGE_SUBSCRIPTION);
+ subscription.setSubscriptionFilter(subscriptionFilter);
+ }
+ subscription.setSubscriptionKey(modelSubscription.getSubscriptionKey());
+ subscriptionList.add(subscription);
+ Holder<List<org.uddi.sub_v3.Subscription>> subscriptionHolder = new Holder<List<org.uddi.sub_v3.Subscription>>();
+ subscriptionHolder.value = subscriptionList;
+ String authToken = (String) session.getAttribute("token-" + clerk.getName());
+ subscriptionService.saveSubscription(authToken, subscriptionHolder);
+ subscription = subscriptionHolder.value.get(0);
+ String expiresAfter = null;
+ if (subscription.getExpiresAfter()!=null) expiresAfter = subscription.getExpiresAfter().toString();
+ String rawFilter = JAXBMarshaller.marshallToString(new ObjectFactory().createSubscriptionFilter(subscription.getSubscriptionFilter()), "org.uddi.sub_v3");
+ Subscription savedModelSubscription = new Subscription(
+ subscription.getBindingKey(),
+ subscription.isBrief(),
+ expiresAfter,
+ subscription.getMaxEntities(),
+ subscription.getNotificationInterval().toString(),
+ rawFilter,
+ subscription.getSubscriptionKey());
+ savedModelSubscription.setNode(modelSubscription.getNode());
+ response.setSubscription(savedModelSubscription);
+
+ response.setSuccess(true);
+ } catch (Exception e) {
+ logger.error("Could not save subscription. " + e.getMessage(), e);
+ response.setSuccess(false);
+ response.setMessage(e.getMessage());
+ response.setErrorCode("102");
+ } catch (Throwable t) {
+ logger.error("Could not save subscription. " + t.getMessage(), t);
+ response.setSuccess(false);
+ response.setMessage(t.getMessage());
+ response.setErrorCode("102");
+ }
+
return response;
}
-
-public SubscriptionResponse deleteSubscription(Subscription modelSubscription) {
-
+
+ public SubscriptionResponse deleteSubscription(String userAuthToken, Subscription modelSubscription) {
+
HttpServletRequest request = getThreadLocalRequest();
HttpSession session = request.getSession();
SubscriptionResponse response = new SubscriptionResponse();
-
- logger.debug("Sending deleteSubscriptions request for subscriptionKey="
+
+ logger.info("Sending deleteSubscriptions request for subscriptionKey="
+ modelSubscription.getSubscriptionKey());
try {
- UDDIClerk clerk = UDDIClerkManager.getClientConfig().getUDDIClerks().get(modelSubscription.getClerkName());
- String clazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(clerk.getUDDINode().getName()).getProxyTransport();
- Class<?> transportClass = Loader.loadClass(clazz);
- Transport transport = (Transport) transportClass.getConstructor(String.class).newInstance(clerk.getUDDINode().getName());
- UDDISubscriptionPortType subscriptionService = transport.getUDDISubscriptionService();
- DeleteSubscription deleteSubscription = new DeleteSubscription();
- String authToken = (String) session.getAttribute("token-" + clerk.getName());
- deleteSubscription.setAuthInfo(authToken);
- deleteSubscription.getSubscriptionKey().add(modelSubscription.getSubscriptionKey());
- subscriptionService.deleteSubscription(deleteSubscription);
- response.setSuccess(true);
- } catch (Exception e) {
- logger.error("Could not delete subscription. " + e.getMessage(), e);
- response.setSuccess(false);
- response.setMessage(e.getMessage());
- response.setErrorCode("102");
- } catch (Throwable t) {
- logger.error("Could not delete subscription. " + t.getMessage(), t);
- response.setSuccess(false);
- response.setMessage(t.getMessage());
- response.setErrorCode("102");
- }
+ UDDIClerk clerk = UDDIClerkManager.getClientConfig().getUDDIClerks().get(modelSubscription.getClerkName());
+ String clazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(clerk.getUDDINode().getName()).getProxyTransport();
+ Class<?> transportClass = Loader.loadClass(clazz);
+ Transport transport = (Transport) transportClass.getConstructor(String.class).newInstance(clerk.getUDDINode().getName());
+ UDDISubscriptionPortType subscriptionService = transport.getUDDISubscriptionService();
+ DeleteSubscription deleteSubscription = new DeleteSubscription();
+ String authToken = (String) session.getAttribute("token-" + clerk.getName());
+ deleteSubscription.setAuthInfo(authToken);
+ deleteSubscription.getSubscriptionKey().add(modelSubscription.getSubscriptionKey());
+ subscriptionService.deleteSubscription(deleteSubscription);
+
+ //now remove it from the listener UDDI server too
+ String defaultClazz = UDDIClerkManager.getClientConfig().getUDDINodes().get(Constants.NODE_NAME).getProxyTransport();
+ Class<?> defaultTransportClass = Loader.loadClass(defaultClazz);
+ Transport defaultTransport = (Transport) defaultTransportClass.getConstructor(String.class).newInstance(Constants.NODE_NAME);
+ JUDDIApiPortType juddiApiService = defaultTransport.getJUDDIApiService();
+
+ DeleteClientSubscriptionInfo deleteClientSubscriptionInfo = new DeleteClientSubscriptionInfo();
+ deleteClientSubscriptionInfo.setAuthInfo(userAuthToken);
+ deleteClientSubscriptionInfo.getSubscriptionKey().add(modelSubscription.getSubscriptionKey());
+ //remove the clientSubscription to the listening UDDI default server.
+ juddiApiService.deleteClientSubscriptionInfo(deleteClientSubscriptionInfo);
+ logger.debug("Deleted ClientSubscriptionInfo to the default UDDI server");
+
+ response.setSuccess(true);
+ } catch (Exception e) {
+ logger.error("Could not delete subscription. " + e.getMessage(), e);
+ response.setSuccess(false);
+ response.setMessage(e.getMessage());
+ response.setErrorCode("102");
+ } catch (Throwable t) {
+ logger.error("Could not delete subscription. " + t.getMessage(), t);
+ response.setSuccess(false);
+ response.setMessage(t.getMessage());
+ response.setErrorCode("102");
+ }
+
+ return response;
+ }
+
+ public SubscriptionResponse invokeSyncSubscription(String userAuthToken, Subscription modelSubscription) {
+
+ HttpServletRequest request = getThreadLocalRequest();
+ HttpSession session = request.getSession();
+ SubscriptionResponse response = new SubscriptionResponse();
+
+ //Send a request to the listener serverNode
+ GetSubscriptionResults getSubscriptionResults = new GetSubscriptionResults();
+ getSubscriptionResults.setAuthInfo(userAuthToken);
+ getSubscriptionResults.setSubscriptionKey(modelSubscription.getSubscriptionKey());
+ //getSubscriptionResults.set
return response;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: juddi-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: juddi-cvs-help@ws.apache.org