1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.gridsystems.innergrid.kernel.client;
18
19 import java.net.URL;
20
21 import javax.xml.namespace.QName;
22
23 import com.gridsystems.innergrid.api.ClientApiFactory;
24
25
26
27
28
29
30 public final class KernelApiFactory extends ClientApiFactory {
31
32
33
34
35 @SuppressWarnings("unchecked")
36 private static final Class[] IFACES = {
37 com.gridsystems.innergrid.kernel.services.ApiKernelManager.class,
38 com.gridsystems.innergrid.kernel.services.ApiTomcatManager.class,
39 };
40
41
42
43
44 private static final String[] LOCAL_NAMES = {
45 "ApiKernelManager",
46 "ApiTomcatManager",
47 };
48
49
50
51
52 private static final String[] NS = {
53 "http://services.kernel.innergrid.gridsystems.com",
54 "http://services.kernel.innergrid.gridsystems.com",
55 };
56
57
58
59
60 private static final String[] WSDL = {
61 "/com/gridsystems/innergrid/kernel/services/ApiKernelManager.wsdl",
62 "/com/gridsystems/innergrid/kernel/services/ApiTomcatManager.wsdl",
63 };
64
65
66
67
68 @Override protected void registerApis() {
69 assert IFACES.length == LOCAL_NAMES.length;
70 assert IFACES.length == NS.length;
71 assert IFACES.length == WSDL.length;
72
73
74 URL wsdd = this.getClass().getResource("client-config.wsdd");
75
76 for (int i = 0; i < LOCAL_NAMES.length; i++) {
77 ClientApiFactory.ApiEntry entry = new ClientApiFactory.ApiEntry();
78 entry.factory = this;
79 entry.iface = IFACES[i];
80 entry.portName = new QName(NS[i], LOCAL_NAMES[i]);
81 entry.serviceName = new QName(NS[i], LOCAL_NAMES[i] + "Service");
82 entry.wsdd = (i == 0) ? wsdd : null;
83 entry.wsdl = this.getClass().getResource(WSDL[i]);
84 register(entry);
85 }
86 }
87 }