1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.juddi.handler;
17
18 import java.util.Vector;
19
20 import org.apache.juddi.datatype.RegistryObject;
21 import org.apache.juddi.datatype.request.AuthInfo;
22 import org.apache.juddi.datatype.request.GetRegisteredInfo;
23 import org.apache.juddi.util.xml.XMLUtils;
24 import org.w3c.dom.Element;
25
26 /***
27 * @author Steve Viens (sviens@apache.org)
28 */
29 public class GetRegisteredInfoHandler extends AbstractHandler
30 {
31 public static final String TAG_NAME = "get_registeredInfo";
32
33 private HandlerMaker maker = null;
34
35 protected GetRegisteredInfoHandler(HandlerMaker maker)
36 {
37 this.maker = maker;
38 }
39
40 public RegistryObject unmarshal(Element element)
41 {
42 GetRegisteredInfo obj = new GetRegisteredInfo();
43 Vector nodeList = null;
44 AbstractHandler handler = null;
45
46
47 String generic = element.getAttribute("generic");
48 if ((generic != null && (generic.trim().length() > 0)))
49 obj.setGeneric(generic);
50
51
52
53
54
55 nodeList = XMLUtils.getChildElementsByTagName(element,AuthInfoHandler.TAG_NAME);
56 if (nodeList.size() > 0)
57 {
58 handler = maker.lookup(AuthInfoHandler.TAG_NAME);
59 obj.setAuthInfo((AuthInfo)handler.unmarshal((Element)nodeList.elementAt(0)));
60 }
61
62 return obj;
63 }
64
65 public void marshal(RegistryObject object,Element parent)
66 {
67 GetRegisteredInfo request = (GetRegisteredInfo)object;
68 String generic = request.getGeneric();
69 generic = getGeneric(generic);
70 String namespace = getUDDINamespace(generic);
71 Element element = parent.getOwnerDocument().createElementNS(namespace,TAG_NAME);
72 AbstractHandler handler = null;
73
74 element.setAttribute("generic",generic);
75
76 AuthInfo authInfo = request.getAuthInfo();
77 if (authInfo != null)
78 {
79 handler = maker.lookup(AuthInfoHandler.TAG_NAME);
80 handler.marshal(authInfo,element);
81 }
82
83 parent.appendChild(element);
84 }
85
86
87 /****************************************************************************/
88 /****************************** TEST DRIVER *********************************/
89 /****************************************************************************/
90
91
92 public static void main(String args[])
93 throws Exception
94 {
95 HandlerMaker maker = HandlerMaker.getInstance();
96 AbstractHandler handler = maker.lookup(GetRegisteredInfoHandler.TAG_NAME);
97
98 Element parent = XMLUtils.newRootElement();
99 Element child = null;
100
101 AuthInfo authInfo = new AuthInfo();
102 authInfo.setValue("6f157513-844e-4a95-a856-d257e6ba9726");
103
104 GetRegisteredInfo service = new GetRegisteredInfo();
105 service.setAuthInfo(authInfo);
106
107 System.out.println();
108
109 RegistryObject regObject = service;
110 handler.marshal(regObject,parent);
111 child = (Element)parent.getFirstChild();
112 parent.removeChild(child);
113 XMLUtils.writeXML(child,System.out);
114
115 System.out.println();
116
117 regObject = handler.unmarshal(child);
118 handler.marshal(regObject,parent);
119 child = (Element)parent.getFirstChild();
120 parent.removeChild(child);
121 XMLUtils.writeXML(child,System.out);
122 }
123 }