Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/artifacts/states/DefaultState.java @ 9277:2323d005f9a5
compile error fix
author | gernotbelger |
---|---|
date | Fri, 20 Jul 2018 10:39:02 +0200 |
parents | 7d1a32a543cb |
children |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/artifacts/states/DefaultState.java Thu Jul 19 17:54:10 2018 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/artifacts/states/DefaultState.java Fri Jul 20 10:39:02 2018 +0200 @@ -9,35 +9,26 @@ package org.dive4elements.river.artifacts.states; import java.text.NumberFormat; +import java.util.List; import java.util.Locale; import java.util.Map; -import java.util.List; import org.apache.log4j.Logger; - -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.Node; - +import org.dive4elements.artifactdatabase.ProtocolUtils; +import org.dive4elements.artifactdatabase.data.StateData; +import org.dive4elements.artifactdatabase.state.AbstractState; +import org.dive4elements.artifactdatabase.state.Facet; import org.dive4elements.artifacts.Artifact; import org.dive4elements.artifacts.ArtifactNamespaceContext; import org.dive4elements.artifacts.CallContext; import org.dive4elements.artifacts.CallMeta; - import org.dive4elements.artifacts.common.utils.XMLUtils; import org.dive4elements.artifacts.common.utils.XMLUtils.ElementCreator; - -import org.dive4elements.artifactdatabase.ProtocolUtils; - -import org.dive4elements.artifactdatabase.data.StateData; - -import org.dive4elements.artifactdatabase.state.AbstractState; -import org.dive4elements.artifactdatabase.state.Facet; - import org.dive4elements.river.artifacts.D4EArtifact; - import org.dive4elements.river.artifacts.resources.Resources; - +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.Node; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> @@ -47,129 +38,97 @@ /** The log that is used in this class. */ private static Logger log = Logger.getLogger(DefaultState.class); - /** The three possible compute types. */ public static enum ComputeType { FEED, ADVANCE, INIT } - - protected StateData getData(D4EArtifact artifact, String name) { + protected StateData getData(final D4EArtifact artifact, final String name) { return artifact.getData(name); } - /** * Append to a node and return xml description relevant for gui. */ - public Element describeStatic( - Artifact artifact, - Document document, - Node root, - CallContext context, - String uuid) - { - ElementCreator creator = new ElementCreator( - document, - ArtifactNamespaceContext.NAMESPACE_URI, - ArtifactNamespaceContext.NAMESPACE_PREFIX); + public Element describeStatic(final Artifact artifact, final Document document, final Node root, final CallContext context, final String uuid) { + final ElementCreator creator = new ElementCreator(document, ArtifactNamespaceContext.NAMESPACE_URI, ArtifactNamespaceContext.NAMESPACE_PREFIX); - CallMeta meta = context.getMeta(); + final CallMeta meta = context.getMeta(); String helpText = getHelpText(); if (helpText != null) { - helpText = replaceHelpUrl( - Resources.getMsg(meta, helpText, helpText)); + helpText = replaceHelpUrl(Resources.getMsg(meta, helpText, helpText)); } - String label = Resources.getMsg(meta, getID(), getID()); - Element ui = ProtocolUtils.createArtNode( - creator, "state", - new String[] { "name", "uiprovider", "label", "helpText"}, - new String[] { getID(), getUIProvider(), label, helpText }); + final String label = Resources.getMsg(meta, getID(), getID()); + final Element ui = ProtocolUtils.createArtNode(creator, "state", new String[] { "name", "uiprovider", "label", "helpText" }, + new String[] { getID(), getUIProvider(), label, helpText }); - Map<String, StateData> theData = getData(); + final Map<String, StateData> theData = getData(); if (theData == null) { return ui; } - D4EArtifact flys = (D4EArtifact)artifact; + final D4EArtifact flys = (D4EArtifact) artifact; - for (String name: theData.keySet()) { + for (final String name : theData.keySet()) { appendStaticData(flys, context, creator, ui, name); } return ui; } - - protected void appendStaticData( - D4EArtifact flys, - CallContext context, - ElementCreator cr, - Element ui, - String name - ) { - StateData data = getData(flys, name); - String value = (data != null) ? (String) data.getValue() : null; + protected void appendStaticData(final D4EArtifact flys, final CallContext context, final ElementCreator cr, final Element ui, final String name) { + final StateData data = getData(flys, name); + final String value = (data != null) ? (String) data.getValue() : null; if (value == null) { return; } - String type = data.getType(); + final String type = data.getType(); if (log.isDebugEnabled()) { - log.debug( - "Append element " + type + "'" + - name + "' (" + value + ")"); + log.debug("Append element " + type + "'" + name + "' (" + value + ")"); } - Element e = createStaticData(flys, cr, context, name, value, type); + final Element e = createStaticData(flys, cr, context, name, value, type); ui.appendChild(e); } - /** * Creates a <i>data</i> element used in the static part of the DESCRIBE * document. * - * @param creator The ElementCreator that is used to build new Elements. - * @param cc The CallContext object used for nested i18n retrieval. - * @param name The name of the data item. - * @param value The value as string. + * @param creator + * The ElementCreator that is used to build new Elements. + * @param cc + * The CallContext object used for nested i18n retrieval. + * @param name + * The name of the data item. + * @param value + * The value as string. * * @return an Element. */ - protected Element createStaticData( - D4EArtifact flys, - ElementCreator creator, - CallContext cc, - String name, - String value, - String type - ) { - Element dataElement = creator.create("data"); + protected Element createStaticData(final D4EArtifact flys, final ElementCreator creator, final CallContext cc, final String name, final String value, + final String type) { + final Element dataElement = creator.create("data"); creator.addAttr(dataElement, "name", name, true); creator.addAttr(dataElement, "type", type, true); - Element itemElement = creator.create("item"); + final Element itemElement = creator.create("item"); creator.addAttr(itemElement, "value", value, true); - creator.addAttr( - itemElement, - "label", - getLabelFor(cc, name, value, type), - true); + creator.addAttr(itemElement, "label", getLabelFor(cc, name, value, type), true); dataElement.appendChild(itemElement); return dataElement; } - /** * @param cc * @param name @@ -178,29 +137,23 @@ * * @return */ - protected String getLabelFor( - CallContext cc, - String name, - String value, - String type - ) { - CallMeta meta = cc.getMeta(); + protected String getLabelFor(final CallContext cc, final String name, final String value, final String type) { + final CallMeta meta = cc.getMeta(); try { // XXX A better way to format the output would be to use the // 'type' value of the data objects. - double doubleVal = Double.parseDouble(value); - Locale l = Resources.getLocale(meta); - NumberFormat nf = NumberFormat.getInstance(l); + final double doubleVal = Double.parseDouble(value); + final Locale l = Resources.getLocale(meta); + final NumberFormat nf = NumberFormat.getInstance(l); return nf.format(doubleVal); } - catch (NumberFormatException nfe) { + catch (final NumberFormatException nfe) { return Resources.getMsg(meta, value, value); } } - /** * This method returns the default value and label for <i>data</i>. * @@ -210,69 +163,54 @@ * but shall not be null. * * Example implementation: - * if (data != null && data.getName().equals("the_answer")) { - * return new String[] {"42", "the_answer"}; - * } + * if (data != null && data.getName().equals("the_answer")) { + * return new String[] {"42", "the_answer"}; + * } * - * @param context The CallContext used for i18n. - * @param data The data objects that the defaults are for. + * @param context + * The CallContext used for i18n. + * @param data + * The data objects that the defaults are for. * @return a String[] with [default value, default label]. */ - protected String[] getDefaultsFor(CallContext context, StateData data) { + protected String[] getDefaultsFor(final CallContext context, final StateData data) { return null; } - - public Element describe( - Artifact artifact, - Document document, - Node root, - CallContext context, - String uuid) - { - ElementCreator creator = new ElementCreator( - document, - ArtifactNamespaceContext.NAMESPACE_URI, - ArtifactNamespaceContext.NAMESPACE_PREFIX); + @Override + public Element describe(final Artifact artifact, final Document document, final Node root, final CallContext context, final String uuid) { + final ElementCreator creator = new ElementCreator(document, ArtifactNamespaceContext.NAMESPACE_URI, ArtifactNamespaceContext.NAMESPACE_PREFIX); String helpText = getHelpText(); if (helpText != null) { - helpText = replaceHelpUrl( - Resources.getMsg(context.getMeta(), helpText, helpText)); + helpText = replaceHelpUrl(Resources.getMsg(context.getMeta(), helpText, helpText)); } - Element ui = null; - String uiprovider = getUIProvider(); + Element ui = null; + final String uiprovider = getUIProvider(); if (uiprovider != null) { - ui = ProtocolUtils.createArtNode( - creator, "dynamic", - new String[] { "uiprovider", "helpText" }, - new String[] { uiprovider, helpText }); - } - else { - ui = ProtocolUtils.createArtNode( - creator, "dynamic", - new String[] { "helpText" }, - new String[] { helpText }); + ui = ProtocolUtils.createArtNode(creator, "dynamic", new String[] { "uiprovider", "helpText" }, new String[] { uiprovider, helpText }); + } else { + ui = ProtocolUtils.createArtNode(creator, "dynamic", new String[] { "helpText" }, new String[] { helpText }); } - Map<String, StateData> theData = getData(); + final Map<String, StateData> theData = getData(); if (theData == null) { return ui; } - D4EArtifact flys = (D4EArtifact)artifact; + final D4EArtifact flys = (D4EArtifact) artifact; - for (String name: theData.keySet()) { + for (final String name : theData.keySet()) { StateData data = getData(flys, name); if (data == null) { data = getData(name); } - Element select = createData(creator, artifact, data, context); + final Element select = createData(creator, artifact, data, context); - String[] defaults = getDefaultsFor(context, data); + final String[] defaults = getDefaultsFor(context, data); if (defaults != null && defaults.length > 1) { creator.addAttr(select, "defaultValue", defaults[0], true); creator.addAttr(select, "defaultLabel", defaults[1], true); @@ -285,7 +223,6 @@ return ui; } - /** * @param artifact * @param creator @@ -293,95 +230,75 @@ * @param context * @param select */ - protected void appendItems( - Artifact artifact, - ElementCreator creator, - String name, - CallContext context, - Element select - ) { - Element choices = ProtocolUtils.createArtNode( - creator, "choices", null, null); + protected void appendItems(final Artifact artifact, final ElementCreator creator, final String name, final CallContext context, final Element select) { + final Element choices = ProtocolUtils.createArtNode(creator, "choices", null, null); select.appendChild(choices); - Element[] items = createItems(creator, artifact, name, context); + final Element[] items = createItems(creator, artifact, name, context); if (items != null) { - for (Element item: items) { + for (final Element item : items) { choices.appendChild(item); } } } - /** * This method creates the root node that contains the list of selectable * items. * - * @param cr The ElementCreator. + * @param cr + * The ElementCreator. * * @return the root node of the item list. */ - protected Element createData( - ElementCreator cr, - Artifact artifact, - StateData data, - CallContext context) - { - Element select = ProtocolUtils.createArtNode( - cr, "select", null, null); + protected Element createData(final ElementCreator cr, final Artifact artifact, final StateData data, final CallContext context) { + final Element select = ProtocolUtils.createArtNode(cr, "select", null, null); cr.addAttr(select, "name", data.getName(), true); - Element label = ProtocolUtils.createArtNode( - cr, "label", null, null); + final Element label = ProtocolUtils.createArtNode(cr, "label", null, null); select.appendChild(label); - label.setTextContent(Resources.getMsg( - context.getMeta(), - getID(), - getID())); + label.setTextContent(Resources.getMsg(context.getMeta(), getID(), getID())); return select; } - /** * This method creates a list of items. These items represent the amount of * input data that is possible for this state. * - * @param cr The ElementCreator. - * @param name The name of the amount of data. + * @param cr + * The ElementCreator. + * @param name + * The name of the amount of data. * * @return a list of items. */ - protected Element[] createItems( - ElementCreator cr, - Artifact artifact, - String name, - CallContext context - ) { + protected Element[] createItems(final ElementCreator cr, final Artifact artifact, final String name, final CallContext context) { return null; } - /** * This method is used to create an <i>item</i> Element that contains two * further elements <i>label</i> and <i>value</i>. The label and value * elements both have text nodes. * - * @param cr The ElementCreator used to build new Elements. - * @param obj This implementation awaits a String array with [0] = label and - * [1] = value. + * @param cr + * The ElementCreator used to build new Elements. + * @param obj + * This implementation awaits a String array with [0] = label and + * [1] = value. * * @return an Element. */ - protected Element createItem(XMLUtils.ElementCreator cr, Object obj) { - Element item = ProtocolUtils.createArtNode(cr, "item", null, null); - Element label = ProtocolUtils.createArtNode(cr, "label", null, null); - Element value = ProtocolUtils.createArtNode(cr, "value", null, null); + protected static Element createItem(final XMLUtils.ElementCreator cr, final Object obj) { + final Element item = ProtocolUtils.createArtNode(cr, "item", null, null); + final Element label = ProtocolUtils.createArtNode(cr, "label", null, null); + final Element value = ProtocolUtils.createArtNode(cr, "value", null, null); - String[] arr = (String[]) obj; + final String[] arr = (String[]) obj; label.setTextContent(arr[0]); value.setTextContent(arr[1]); @@ -392,23 +309,35 @@ return item; } + // protected static Element createItem(final XMLUtils.ElementCreator cr, final Object obj) { + // final Element item = ProtocolUtils.createArtNode(cr, "item", null, null); + // final Element label = ProtocolUtils.createArtNode(cr, "label", null, null); + // final Element value = ProtocolUtils.createArtNode(cr, "value", null, null); + // + // final String[] arr = (String[]) obj; + // + // label.setTextContent(arr[0]); + // value.setTextContent(arr[1]); + // + // item.appendChild(label); + // item.appendChild(value); + // + // return item; + // } /** * This method transform a given value into a StateData object. * - * @param flys The D4EArtifact. - * @param name The name of the data object. - * @param val The value of the data object. + * @param flys + * The D4EArtifact. + * @param name + * The name of the data object. + * @param val + * The value of the data object. * * @return a StateData object with <i>name</i> and <i>val</i>ue. */ - public StateData transform( - D4EArtifact flys, - CallContext cc, - StateData stateData, - String name, - String val - ) { + public StateData transform(final D4EArtifact flys, final CallContext cc, final StateData stateData, final String name, final String val) { if (log.isDebugEnabled()) { log.debug("Transform data ('" + name + "','" + val + "')"); } @@ -418,29 +347,29 @@ return stateData; } - - /** Override this to do validation. + /** + * Override this to do validation. * * Throw an IllegalArgumentException with a localized * error message that should be presented to the user in case - * the date provided is invalid. */ - public void validate(Artifact artifact, CallContext context) - throws IllegalArgumentException { - validate(artifact); /* For compatibility so that classes that - override this method still work. */ + * the date provided is invalid. + */ + public void validate(final Artifact artifact, final CallContext context) throws IllegalArgumentException { + validate(artifact); /* + * For compatibility so that classes that + * override this method still work. + */ } + /** * This method is deprecated. * Override the function with the callcontext instead to do * localization of error.s */ - public boolean validate(Artifact artifact) - throws IllegalArgumentException - { + public boolean validate(final Artifact artifact) throws IllegalArgumentException { return true; } - /** * Returns which UIProvider shall be used to aid user input. */ @@ -448,36 +377,15 @@ return null; } - - public Object computeAdvance( - D4EArtifact artifact, - String hash, - CallContext context, - List<Facet> facets, - Object old - ) { + public Object computeAdvance(final D4EArtifact artifact, final String hash, final CallContext context, final List<Facet> facets, final Object old) { return null; } - - public Object computeFeed( - D4EArtifact artifact, - String hash, - CallContext context, - List<Facet> facets, - Object old - ) { + public Object computeFeed(final D4EArtifact artifact, final String hash, final CallContext context, final List<Facet> facets, final Object old) { return null; } - - public Object computeInit( - D4EArtifact artifact, - String hash, - Object context, - CallMeta meta, - List<Facet> facets) - { + public Object computeInit(final D4EArtifact artifact, final String hash, final Object context, final CallMeta meta, final List<Facet> facets) { return null; } }