From d7bc205420bc07578aee49087b3988429e22372b Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Tue, 1 Aug 2017 13:19:11 +0200 Subject: use publish-options instead of always pushing node configuration --- src/main/java/de/pixart/messenger/xmpp/forms/Data.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/main/java/de/pixart/messenger/xmpp/forms') diff --git a/src/main/java/de/pixart/messenger/xmpp/forms/Data.java b/src/main/java/de/pixart/messenger/xmpp/forms/Data.java index c2653a5e9..ed426f397 100644 --- a/src/main/java/de/pixart/messenger/xmpp/forms/Data.java +++ b/src/main/java/de/pixart/messenger/xmpp/forms/Data.java @@ -39,13 +39,14 @@ public class Data extends Element { return null; } - public void put(String name, String value) { + public Field put(String name, String value) { Field field = getFieldByName(name); if (field == null) { field = new Field(name); this.addChild(field); } field.setValue(value); + return field; } public void put(String name, Collection values) { @@ -91,7 +92,8 @@ public class Data extends Element { } public void setFormType(String formType) { - this.put(FORM_TYPE, formType); + Field field = this.put(FORM_TYPE, formType); + field.setAttribute("type", "hidden"); } public String getFormType() { @@ -107,4 +109,14 @@ public class Data extends Element { public String getTitle() { return findChildContent("title"); } + + public static Data create(String type, Bundle bundle) { + Data data = new Data(); + data.setFormType(type); + data.setAttribute("type", "submit"); + for (String key : bundle.keySet()) { + data.put(key, bundle.getString(key)); + } + return data; + } } -- cgit v1.2.3