diff options
author | Tarun Gupta <tarun1995gupta@gmail.com> | 2015-06-12 21:25:03 (GMT) |
---|---|---|
committer | Tarun Gupta <tarun1995gupta@gmail.com> | 2015-06-16 19:15:24 (GMT) |
commit | 1910b4f007f2cf2f19be8793fd7ad29a729d7997 (patch) | |
tree | 75fafb7f7969b88137139cd0313d5afb52fef221 /src/com/isode/stroke/serializer/payloadserializers/InBandRegistrationPayloadSerializer.java | |
parent | e868c966e23716d8a0261b222cccbeb04616e235 (diff) | |
download | stroke-1910b4f007f2cf2f19be8793fd7ad29a729d7997.zip stroke-1910b4f007f2cf2f19be8793fd7ad29a729d7997.tar.bz2 |
Add InBandRegistrationPayload Element.
Adds InBandRegistrationPayload Element, its Parser and Serializer.
License:
This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
Test-Information:
Test added for InBandRegistrationPayload Serializer, which passes.
Change-Id: Ic6cc1329f222b5a57f05ec2299e36b56f5767091
Diffstat (limited to 'src/com/isode/stroke/serializer/payloadserializers/InBandRegistrationPayloadSerializer.java')
-rw-r--r-- | src/com/isode/stroke/serializer/payloadserializers/InBandRegistrationPayloadSerializer.java | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/src/com/isode/stroke/serializer/payloadserializers/InBandRegistrationPayloadSerializer.java b/src/com/isode/stroke/serializer/payloadserializers/InBandRegistrationPayloadSerializer.java new file mode 100644 index 0000000..01fb7c8 --- /dev/null +++ b/src/com/isode/stroke/serializer/payloadserializers/InBandRegistrationPayloadSerializer.java @@ -0,0 +1,120 @@ +/* + * Copyright (c) 2010 Isode Limited. + * All rights reserved. + * See the COPYING file for more information. + */ +/* + * Copyright (c) 2015 Tarun Gupta. + * Licensed under the simplified BSD license. + * See Documentation/Licenses/BSD-simplified.txt for more information. + */ + +package com.isode.stroke.serializer.payloadserializers; + +import com.isode.stroke.serializer.GenericPayloadSerializer; +import com.isode.stroke.serializer.xml.XMLTextNode; +import com.isode.stroke.serializer.xml.XMLElement; +import com.isode.stroke.serializer.xml.XMLRawTextNode; +import com.isode.stroke.serializer.payloadserializers.FormSerializer; +import com.isode.stroke.elements.InBandRegistrationPayload; +import com.isode.stroke.elements.Form; +import com.isode.stroke.base.NotNull; + +public class InBandRegistrationPayloadSerializer extends GenericPayloadSerializer<InBandRegistrationPayload> { + + public InBandRegistrationPayloadSerializer() { + super(InBandRegistrationPayload.class); + } + + public String serializePayload(InBandRegistrationPayload registration) { + XMLElement registerElement = new XMLElement("query", "jabber:iq:register"); + + if (registration.isRegistered()) { + registerElement.addNode(new XMLElement("registered")); + } + + if (registration.isRemove()) { + registerElement.addNode(new XMLElement("remove")); + } + + if (registration.getInstructions() != null) { + registerElement.addNode(new XMLElement("instructions", "", registration.getInstructions())); + } + + + if (registration.getUsername() != null) { + registerElement.addNode(new XMLElement("username", "", registration.getUsername())); + } + + if (registration.getNick() != null) { + registerElement.addNode(new XMLElement("nick", "", registration.getNick())); + } + + if (registration.getPassword() != null) { + registerElement.addNode(new XMLElement("password", "", registration.getPassword())); + } + + if (registration.getName() != null) { + registerElement.addNode(new XMLElement("name", "", registration.getName())); + } + + if (registration.getFirst() != null) { + registerElement.addNode(new XMLElement("first", "", registration.getFirst())); + } + + if (registration.getLast() != null) { + registerElement.addNode(new XMLElement("last", "", registration.getLast())); + } + + if (registration.getEMail() != null) { + registerElement.addNode(new XMLElement("email", "", registration.getEMail())); + } + + if (registration.getAddress() != null) { + registerElement.addNode(new XMLElement("address", "", registration.getAddress())); + } + + if (registration.getCity() != null) { + registerElement.addNode(new XMLElement("city", "", registration.getCity())); + } + + if (registration.getState() != null) { + registerElement.addNode(new XMLElement("state", "", registration.getState())); + } + + if (registration.getZip() != null) { + registerElement.addNode(new XMLElement("zip", "", registration.getZip())); + } + + if (registration.getPhone() != null) { + registerElement.addNode(new XMLElement("phone", "", registration.getPhone())); + } + + if (registration.getURL() != null) { + registerElement.addNode(new XMLElement("url", "", registration.getURL())); + } + + if (registration.getDate() != null) { + registerElement.addNode(new XMLElement("date", "", registration.getDate())); + } + + if (registration.getMisc() != null) { + registerElement.addNode(new XMLElement("misc", "", registration.getMisc())); + } + + if (registration.getText() != null) { + registerElement.addNode(new XMLElement("text", "", registration.getText())); + } + + if (registration.getKey() != null) { + registerElement.addNode(new XMLElement("key", "", registration.getKey())); + } + + if (registration.getForm() != null) { + Form form = registration.getForm(); + registerElement.addNode(new XMLRawTextNode(new FormSerializer().serialize(form))); + } + + return registerElement.serialize(); + } +}
\ No newline at end of file |