This project has retired. For details please refer to its
Attic page.
API_100_ClientSubscriptionInfoTest xref
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 package org.apache.juddi.api.impl;
16
17 import java.rmi.RemoteException;
18 import java.util.ArrayList;
19 import java.util.List;
20
21 import org.apache.commons.configuration.ConfigurationException;
22 import org.apache.commons.logging.Log;
23 import org.apache.commons.logging.LogFactory;
24 import org.apache.juddi.Registry;
25 import org.apache.juddi.api_v3.Clerk;
26 import org.apache.juddi.api_v3.ClerkDetail;
27 import org.apache.juddi.api_v3.ClientSubscriptionInfo;
28 import org.apache.juddi.api_v3.ClientSubscriptionInfoDetail;
29 import org.apache.juddi.api_v3.DeleteClientSubscriptionInfo;
30 import org.apache.juddi.api_v3.GetClientSubscriptionInfoDetail;
31 import org.apache.juddi.api_v3.Node;
32 import org.apache.juddi.api_v3.NodeDetail;
33 import org.apache.juddi.api_v3.SaveClerk;
34 import org.apache.juddi.api_v3.SaveClientSubscriptionInfo;
35 import org.apache.juddi.api_v3.SaveNode;
36 import org.apache.juddi.v3.error.InvalidKeyPassedException;
37 import org.apache.juddi.v3.error.ValueNotAllowedException;
38 import org.apache.juddi.v3.tck.TckPublisher;
39 import org.apache.juddi.v3.tck.TckSecurity;
40 import org.junit.AfterClass;
41 import org.junit.Assert;
42 import org.junit.BeforeClass;
43 import org.junit.Test;
44 import org.uddi.v3_service.DispositionReportFaultMessage;
45 import org.uddi.v3_service.UDDISecurityPortType;
46
47
48
49
50 public class API_100_ClientSubscriptionInfoTest {
51
52 private JUDDIApiImpl publisher = new JUDDIApiImpl();
53 private static Log logger = LogFactory.getLog(API_100_ClientSubscriptionInfoTest.class);
54 private static API_010_PublisherTest api010 = new API_010_PublisherTest();
55 private static String authInfoJoe = null;
56
57 @BeforeClass
58 public static void setup() throws ConfigurationException, RemoteException {
59 Registry.start();
60 logger.debug("Getting auth tokens..");
61 try {
62 api010.saveJoePublisher();
63 UDDISecurityPortType security = new UDDISecurityImpl();
64 authInfoJoe = TckSecurity.getAuthToken(security, TckPublisher.getJoePublisherId(), TckPublisher.getJoePassword());
65 } catch (DispositionReportFaultMessage e) {
66 logger.error(e.getMessage(), e);
67 Assert.fail("Could not obtain authInfo token.");
68 }
69 }
70
71 @AfterClass
72 public static void stopRegistry() throws ConfigurationException {
73 Registry.stop();
74 }
75
76 @Test
77 public void addClientSubscriptionInfo() {
78 ClientSubscriptionInfo clientSubscriptionInfo = new ClientSubscriptionInfo();
79
80 Node node = new Node();
81 node.setSecurityUrl("http://localhost:8080/services/securityUrl");
82 node.setCustodyTransferUrl("http://localhost:8080/services/securityUrl");
83 node.setDescription("description");
84 node.setInquiryUrl("http://localhost:8080/services/securityUrl");
85 node.setPublishUrl("http://localhost:8080/services/publishUrl");
86 node.setSubscriptionListenerUrl("http://localhost:8080/services/subUrladdClientSubscriptionInfo");
87 node.setProxyTransport("org.apache.juddi.v3.client.transport.JAXWSTransport");
88 node.setSubscriptionUrl("http://localhost:8080/services/securityUrl");
89 node.setName("default");
90 node.setClientName("defaultClient");
91 SaveNode saveNode = new SaveNode();
92 saveNode.setAuthInfo(authInfoJoe);
93 saveNode.getNode().add(node);
94
95 Clerk clerk = new Clerk();
96 clerk.setName("clerkName");
97 clerk.setPublisher("root");
98 clerk.setNode(node);
99 SaveClerk saveClerk = new SaveClerk();
100 saveClerk.setAuthInfo(authInfoJoe);
101 saveClerk.getClerk().add(clerk);
102
103 clientSubscriptionInfo.setFromClerk(clerk);
104
105 Node node2 = new Node();
106 node2.setSecurityUrl("http://localhost:8080/services/securityUrl2");
107 node2.setCustodyTransferUrl("https://localhost:8080/services/securityUrl2");
108 node2.setDescription("description2");
109 node2.setInquiryUrl("http://localhost:8080/services/securityUrl2");
110 node2.setPublishUrl("http://localhost:8080/services/securityUrl2");
111 node2.setProxyTransport("org.apache.juddi.v3.client.transport.JAXWSTransport");
112 node2.setSubscriptionUrl("http://localhost:8080/services/securityUrl2");
113 node2.setSubscriptionListenerUrl("http://localhost:8080/services/securityUrl2");
114 node2.setName("default2");
115 node2.setClientName("default2Client");
116 saveNode.getNode().add(node2);
117
118 Clerk clerk2 = new Clerk();
119 clerk2.setName("clerkName2");
120 clerk2.setPublisher("root");
121 clerk2.setNode(node2);
122 saveClerk.getClerk().add(clerk2);
123
124 clientSubscriptionInfo.setFromClerk(clerk);
125
126 clientSubscriptionInfo.setSubscriptionKey("mykey");
127
128 SaveClientSubscriptionInfo saveClientSubscriptionInfo = new SaveClientSubscriptionInfo();
129 saveClientSubscriptionInfo.setAuthInfo(authInfoJoe);
130 saveClientSubscriptionInfo.getClientSubscriptionInfo().add(clientSubscriptionInfo);
131
132 ClientSubscriptionInfo clientSubscriptionInfo2 = new ClientSubscriptionInfo();
133 clientSubscriptionInfo2.setSubscriptionKey("mykey2");
134 clientSubscriptionInfo2.setFromClerk(clerk2);
135 saveClientSubscriptionInfo.getClientSubscriptionInfo().add(clientSubscriptionInfo2);
136
137 try {
138
139 NodeDetail nodeDetail = publisher.saveNode(saveNode);
140 ClerkDetail clerkDetail = publisher.saveClerk(saveClerk);
141 Assert.assertEquals(2,nodeDetail.getNode().size());
142 Assert.assertEquals(2,clerkDetail.getClerk().size());
143
144 ClientSubscriptionInfoDetail detail = publisher.saveClientSubscriptionInfo(saveClientSubscriptionInfo);
145 Assert.assertEquals("mykey", detail.getClientSubscriptionInfo().get(0).getSubscriptionKey());
146
147
148
149
150 List<String>keys = new ArrayList<String>();
151 keys.add("mykey");
152 GetClientSubscriptionInfoDetail req = new GetClientSubscriptionInfoDetail();
153 req.setAuthInfo(authInfoJoe);
154 req.getClientSubscriptionKey().addAll(keys);
155 ClientSubscriptionInfoDetail detail2 = publisher.getClientSubscriptionInfoDetail(req);
156 Assert.assertEquals("mykey", detail2.getClientSubscriptionInfo().get(0).getSubscriptionKey());
157
158 DeleteClientSubscriptionInfo deleteInfo = new DeleteClientSubscriptionInfo();
159 deleteInfo.setAuthInfo(authInfoJoe);
160 deleteInfo.getSubscriptionKey().add("mykey");
161 publisher.deleteClientSubscriptionInfo(deleteInfo);
162
163 try {
164 @SuppressWarnings("unused")
165
166 ClientSubscriptionInfoDetail detail3 = publisher.getClientSubscriptionInfoDetail(req);
167 Assert.fail("We're expecting an InvalidKeyPassedException");
168 } catch (Exception e) {
169 Assert.assertEquals(InvalidKeyPassedException.class, e.getClass());
170 }
171 } catch(Exception e) {
172 logger.error(e.getMessage(), e);
173 Assert.fail("No exception should be thrown");
174 }
175 }
176
177
178
179 @Test(expected = ValueNotAllowedException.class)
180 public void addNodeInvalidProxy() throws Exception {
181
182 Node node = new Node();
183 node.setSecurityUrl("http://localhost:8080/services/securityUrl");
184 node.setCustodyTransferUrl("http://localhost:8080/services/securityUrl");
185 node.setDescription("description");
186 node.setInquiryUrl("http://localhost:8080/services/securityUrl");
187 node.setPublishUrl("http://localhost:8080/services/publishUrl");
188 node.setSubscriptionListenerUrl("http://localhost:8080/services/subUrladdClientSubscriptionInfo");
189 node.setProxyTransport("orgasdasdasdasd.apache.juddi.v3.client.transport.JAXWSTransport");
190 node.setSubscriptionUrl("http://localhost:8080/services/securityUrl");
191 node.setName("default");
192 node.setClientName("defaultClient");
193 SaveNode saveNode = new SaveNode();
194 saveNode.setAuthInfo(authInfoJoe);
195 saveNode.getNode().add(node);
196
197 NodeDetail nodeDetail = publisher.saveNode(saveNode);
198 Assert.fail();
199
200
201 }
202
203 }