source: ccr/trunk/nhin-vista/projects/NHINC/Current/Product/Production/Common/NhincLib/src/gov/hhs/fha/nhinc/connectmgr/data/CMInternalConnectionInfosXML.java@ 507

Last change on this file since 507 was 507, checked in by George Lilly, 15 years ago

NHIN gateway and adaptor for use on linux with VistA EHR and RPMS

File size: 2.4 KB
Line 
1package gov.hhs.fha.nhinc.connectmgr.data;
2
3import com.thoughtworks.xstream.XStream;
4
5/**
6 * This class is used to serialize/deserialize to/from XML using XStream.
7 *
8 * @author Les Westberg
9 */
10public class CMInternalConnectionInfosXML
11{
12 /**
13 * This method serializes an InternalConnectionInfos object to an
14 * XML string.
15 *
16 * @param oInternalConnectionInfos The object to be serialized.
17 * @return The XML string representation of the object.
18 */
19 public static String serialize(CMInternalConnectionInfos oInternalConnectionInfos)
20 {
21 String sXML = "";
22
23 XStream oXStream = new XStream();
24 oXStream.alias("InternalConnectionInfos", CMInternalConnectionInfos.class);
25 oXStream.addImplicitCollection(CMInternalConnectionInfos.class, "internalConnectionInfoList");
26 oXStream.alias("internalConnectionInfo", CMInternalConnectionInfo.class);
27 oXStream.addImplicitCollection(CMInternalConnInfoServices.class, "serviceList");
28 oXStream.alias("service", CMInternalConnInfoService.class);
29 oXStream.processAnnotations(CMInternalConnectionInfos.class);
30 sXML = oXStream.toXML(oInternalConnectionInfos);
31
32 return sXML;
33 }
34
35 /**
36 * This method takes an XML representation of CMInternalConnectionInfos and
37 * produces an instance of the object.
38 *
39 * @param sXML The serialized representation of the CMInternalConnectionInfos object.
40 * @return The object instance of the XML.
41 */
42 public static CMInternalConnectionInfos deserialize(String sXML)
43 {
44 CMInternalConnectionInfos oInternalConnectionInfos = new CMInternalConnectionInfos();
45
46 XStream oXStream = new XStream();
47 oXStream.alias("InternalConnectionInfos", CMInternalConnectionInfos.class);
48 oXStream.addImplicitCollection(CMInternalConnectionInfos.class, "internalConnectionInfoList");
49 oXStream.alias("internalConnectionInfo", CMInternalConnectionInfo.class);
50 oXStream.addImplicitCollection(CMInternalConnInfoServices.class, "serviceList");
51 oXStream.alias("service", CMInternalConnInfoService.class);
52 oXStream.processAnnotations(CMInternalConnectionInfos.class);
53 Object oObject = oXStream.fromXML(sXML);
54 if (oObject instanceof CMInternalConnectionInfos)
55 {
56 oInternalConnectionInfos = (CMInternalConnectionInfos) oObject;
57 }
58
59 return oInternalConnectionInfos;
60 }
61}
Note: See TracBrowser for help on using the repository browser.