diff options
Diffstat (limited to 'src/com/isode/stroke/parser/payloadparsers/MUCDestroyPayloadParser.java')
-rw-r--r-- | src/com/isode/stroke/parser/payloadparsers/MUCDestroyPayloadParser.java | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/com/isode/stroke/parser/payloadparsers/MUCDestroyPayloadParser.java b/src/com/isode/stroke/parser/payloadparsers/MUCDestroyPayloadParser.java new file mode 100644 index 0000000..f6b7790 --- /dev/null +++ b/src/com/isode/stroke/parser/payloadparsers/MUCDestroyPayloadParser.java @@ -0,0 +1,38 @@ +/* + * Copyright (c) 2012, Isode Limited, London, England. + * All rights reserved. + */ +/* + * Copyright (c) 2011, Kevin Smith + * All rights reserved. + */ +package com.isode.stroke.parser.payloadparsers; + +import com.isode.stroke.elements.MUCDestroyPayload; +import com.isode.stroke.jid.JID; +import com.isode.stroke.parser.GenericPayloadTreeParser; +import com.isode.stroke.parser.tree.ParserElement; + +/** + * Class representing a parser for MUC Destroy payload + * + */ +public class MUCDestroyPayloadParser extends GenericPayloadTreeParser<MUCDestroyPayload> { + + /** + * Create the parser + */ + public MUCDestroyPayloadParser() { + super(new MUCDestroyPayload()); + } + + @Override + public void handleTree(ParserElement root) { + String ns = root.getNamespace(); + String jid = root.getAttributes().getAttribute("jid"); + if (jid != null && !jid.isEmpty()) { + getPayloadInternal().setNewVenue(new JID(jid)); + } + getPayloadInternal().setReason(root.getChild("reason", ns).getText()); + } +} |