Mercurial > dive4elements > river
diff flys-client/src/main/java/de/intevation/flys/client/server/DataFactory.java @ 2532:261347ea60b8
Added new Data type StringOptionsData; allow this Data type for ParameterMatrixPanel.
flys-client/trunk@4428 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 16 May 2012 14:52:39 +0000 |
parents | 33e2a1e23ae8 |
children | d0a9acddbea2 |
line wrap: on
line diff
--- a/flys-client/src/main/java/de/intevation/flys/client/server/DataFactory.java Wed May 16 13:43:15 2012 +0000 +++ b/flys-client/src/main/java/de/intevation/flys/client/server/DataFactory.java Wed May 16 14:52:39 2012 +0000 @@ -20,6 +20,7 @@ import de.intevation.flys.client.shared.model.IntegerOptionsData; import de.intevation.flys.client.shared.model.IntegerRangeData; import de.intevation.flys.client.shared.model.StringData; +import de.intevation.flys.client.shared.model.StringOptionsData; import de.intevation.flys.client.shared.model.LongRangeData; @@ -63,6 +64,9 @@ else if (type.equals(IntegerData.TYPE)) { return createIntegerData(element, name, label); } + else if (type.equals(StringOptionsData.TYPE)) { + return createStringOptionsData(element, name, label); + } else if (type.equals(IntegerOptionsData.TYPE)) { return createIntegerOptionsData(element, name, label); } @@ -134,6 +138,20 @@ /** + * This method creates a new instance of StringOptionsData which has a type + * "options" set. + * + * @param ele The Data element. + * @param name The name of the Data instance. + * + * @return an instance of StringOptionsData. + */ + protected static Data createStringOptionsData(Element ele, String name, String label) { + return new StringOptionsData(name, label, extractDataItems(ele)); + } + + + /** * This method creates a new instance of DefaultData which has a type * "intoptions" set. * @@ -243,7 +261,7 @@ ArtifactNamespaceContext.INSTANCE); if (itemList == null || itemList.getLength() == 0) { - logger.debug("No old data items found."); + logger.debug("No data items found."); return null; } @@ -251,12 +269,18 @@ DataItem[] items = new DataItem[count]; + logger.debug("There are " + count + " data items in element."); + for (int i = 0; i < count; i++) { Element tmp = (Element) itemList.item(i); String value = tmp.getAttributeNS(NS_URI, "value"); String label = tmp.getAttributeNS(NS_URI, "label"); + logger.debug("Found data item:"); + logger.debug(" label: " + label); + logger.debug(" value: " + value); + items[i] = new DefaultDataItem(label, label, value); }