From e6144cfe09bb148638911660eeb492fee7ab8079 Mon Sep 17 00:00:00 2001 From: Florian Reimair Date: Thu, 20 Mar 2014 11:43:22 +0100 Subject: fixed serializable issues in stork2-commons --- .../ComplexAttributesMarshalling.java.svn-base | 187 +++++++++++++++++++++ 1 file changed, 187 insertions(+) create mode 100644 id/server/stork2-commons/src/test/java/eu/stork/peps/tests/.svn/text-base/ComplexAttributesMarshalling.java.svn-base (limited to 'id/server/stork2-commons/src/test/java/eu/stork/peps/tests/.svn/text-base/ComplexAttributesMarshalling.java.svn-base') diff --git a/id/server/stork2-commons/src/test/java/eu/stork/peps/tests/.svn/text-base/ComplexAttributesMarshalling.java.svn-base b/id/server/stork2-commons/src/test/java/eu/stork/peps/tests/.svn/text-base/ComplexAttributesMarshalling.java.svn-base new file mode 100644 index 000000000..c7e195fa6 --- /dev/null +++ b/id/server/stork2-commons/src/test/java/eu/stork/peps/tests/.svn/text-base/ComplexAttributesMarshalling.java.svn-base @@ -0,0 +1,187 @@ +/* + * This work is Open Source and licensed by the European Commission under the + * conditions of the European Public License v1.1 + * + * (http://www.osor.eu/eupl/european-union-public-licence-eupl-v.1.1); + * + * any use of this file implies acceptance of the conditions of this license. + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + * + * --- + * + * Test cases for marshalling complex attributes. + * + * Implemented are two testcases for marshalling and unmarshalling. These testcases are + * for canonical residenc address and has bank account. + */ + +package eu.stork.peps.tests; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; + +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBElement; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Marshaller; +import javax.xml.bind.Unmarshaller; +import javax.xml.transform.stream.StreamSource; + +import org.junit.Test; + +import eu.stork.peps.complex.attributes.CanonicalAddressType; +import eu.stork.peps.complex.attributes.HasAccountInBankType; +import eu.stork.peps.complex.attributes.ObjectFactory; + +/** + * @author Advania + * + * Examples on how to use the jaxb marshaller. + * + * The classes are created from the StorkcomplexAttributes.xsd schema located in resources. + * + * @version $Revision: 1.00 $, $Date: 2014-17-02 11:15:00 $ + * + */ + +public class ComplexAttributesMarshalling { + + /** + * Test marshalling canonical address + * + * + * IS + * Reykjavik + * RVK + * Reykjavik + * 101 + * Laugavegur + * 1 + * 10 + * + */ + @Test + public void testMarshallCanonicalResidencAddress() + { + try + { + final CanonicalAddressType object = new CanonicalAddressType(); + object.setApartmentNumber("10"); + object.setCountryCodeAddress("IS"); + object.setMunicipalityCode("RVK"); + object.setPostalCode("101"); + object.setState("Reykjavik"); + object.setStreetName("Laugavegur"); + object.setStreetNumber("1"); + object.setTown("Reykjavik"); + + final JAXBContext context = JAXBContext.newInstance(CanonicalAddressType.class); + final Marshaller m = context.createMarshaller(); + m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); + final ObjectFactory objf = new ObjectFactory(); + + m.marshal(objf.createCanonicalResidenceAddress(object), new FileOutputStream("CanonicalAddressType.xml")); + m.marshal(objf.createCanonicalResidenceAddress(object), System.out); + } + catch (JAXBException | FileNotFoundException e) + { + e.printStackTrace(); + } + } + + /** + * Test unmarshalling canonical address + * + * + * IS + * Reykjavik + * RVK + * Reykjavik + * 101 + * Laugavegur + * 1 + * 10 + * + */ + @Test + public void testUnmarshallCanonicalAddress() + { + JAXBContext uContext; + try + { + uContext = JAXBContext.newInstance(CanonicalAddressType.class); + final Unmarshaller u = uContext.createUnmarshaller(); + final File file = new File("CanonicalAddressType.xml"); + + final JAXBElement root = u.unmarshal(new StreamSource(file), CanonicalAddressType.class); + final CanonicalAddressType foo = root.getValue(); + + final String A = foo.getStreetName(); + final String B = foo.getStreetNumber(); + + System.out.println("Streetname: " + A); + System.out.println("Streetnumber: " + B); + + } + catch (final JAXBException e) + { + e.printStackTrace(); + } + } + + /** + * Test marshalling has bank account + * + * + * Arion + * 3 + * + */ + @Test + public void testMarshallHasBankAccount() + { + try + { + final HasAccountInBankType object = new HasAccountInBankType(); + object.setAQAA(3); + object.setBankName("Arion Bank"); + final JAXBContext context = JAXBContext.newInstance(HasAccountInBankType.class); + final Marshaller m = context.createMarshaller(); + final ObjectFactory o = new ObjectFactory(); + m.marshal(o.createHasAccountInBank(object), new FileOutputStream ("hasbankaccount.xml")); + m.marshal(o.createHasAccountInBank(object), System.out); + + } catch (JAXBException | FileNotFoundException e) { + e.printStackTrace(); + } + } + /** + * Test unmarshalling has bank account + * + * + * Arion + * 3 + * + */ + @Test + public void testUnmarshallHasBankAccount() + { + try + { + final JAXBContext context = JAXBContext.newInstance(HasAccountInBankType.class); + final Unmarshaller um = context.createUnmarshaller(); + final File file = new File("hasbankaccount.xml"); + final JAXBElement root = um.unmarshal(new StreamSource(file), HasAccountInBankType.class); + final HasAccountInBankType foo = root.getValue(); + System.out.println(foo.getBankName()); + } catch (final JAXBException e) { + e.printStackTrace(); + } + } + +} -- cgit v1.2.3