Esri Geoportal Server
1.0

com.esri.gpt.catalog.schema
Class InputSelectWithOther

java.lang.Object
  extended by com.esri.gpt.catalog.schema.Component
      extended by com.esri.gpt.catalog.schema.UiComponent
          extended by com.esri.gpt.catalog.schema.Input
              extended by com.esri.gpt.catalog.schema.InputSelectOneMenu
                  extended by com.esri.gpt.catalog.schema.InputSelectWithOther

public class InputSelectWithOther
extends InputSelectOneMenu

Select one menu input component with an "Other" option for inputing text.

The drop down choices are based upon the codes defined for the parameter.

The component is configured from a node with a schema configuration XML document.


Field Summary
 
Fields inherited from class com.esri.gpt.catalog.schema.Input
INPUTTYPE_DELIMITEDTEXTAREA, INPUTTYPE_MAP, INPUTTYPE_SELECTMANYCHECKBOX, INPUTTYPE_SELECTONEMEMU, INPUTTYPE_SELECTWITHOTHER, INPUTTYPE_TEXT, INPUTTYPE_TEXTAREA, INPUTTYPE_TEXTARRAY, INPUTTYPE_UNKNOWN
 
Constructor Summary
InputSelectWithOther()
          Default constructor.
InputSelectWithOther(InputSelectWithOther objectToDuplicate)
          Construct by duplicating an existing object.
 
Method Summary
 void configure(CfgContext context, Node node, NamedNodeMap attributes)
          Configures the object based upon a node loaded from a schema configuration XML.
 InputSelectWithOther duplicate()
          Produces a deep clone of the object.
 void echo(StringBuffer sb)
          Appends property information for the component to a StringBuffer.
 String getOtherCodeKey()
          Gets the code key associated with the "Other" option.
 InputText getOtherComponent()
          Gets the component for inputting "Other" text.
 UIComponent makeInputComponent(UiContext context, Section section, Parameter parameter)
          Makes a Faces HtmlSelectOneMenu and an HtmlInputText (for "Other" option) components for a parameter.
 void setFacesId(String id)
          Sets the Faces ID for the component.
 void setOtherCodeKey(String key)
          Sets the code key associated with the "Other" option.
 void setOtherComponent(InputText otherComponent)
          Sets the component for inputting "Other" text.
 void unBind(UiContext context, UIComponent editorForm, Parameter parameter)
          Triggered on the save event from the metadata editor.
 
Methods inherited from class com.esri.gpt.catalog.schema.InputSelectOneMenu
makeSelectOneMenu
 
Methods inherited from class com.esri.gpt.catalog.schema.Input
applyHint, evaluateDefault, findInputComponent, formatValue, getDefaultValue, getEditable, getFacesId, getHintMode, getHintResourceKey, getInputValue, getOnChange, getOnClick, getTestResourceKey, makeOutputComponent, setComponentValue, setDefaultValue, setEditable, setHintMode, setHintResourceKey, setOnChange, setOnClick, setTestResourceKey
 
Methods inherited from class com.esri.gpt.catalog.schema.UiComponent
getStyleClass, makeBR, makeNBSP, setStyleClass
 
Methods inherited from class com.esri.gpt.catalog.schema.Component
getKey, setKey, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

InputSelectWithOther

public InputSelectWithOther()
Default constructor.


InputSelectWithOther

public InputSelectWithOther(InputSelectWithOther objectToDuplicate)
Construct by duplicating an existing object.

Parameters:
objectToDuplicate - the object to duplicate
Method Detail

setFacesId

public void setFacesId(String id)
Sets the Faces ID for the component.
The '.' character will be replaced with the '.' character.

Overrides:
setFacesId in class Input
Parameters:
id - Faces ID

getOtherCodeKey

public String getOtherCodeKey()
Gets the code key associated with the "Other" option.

Returns:
the key

setOtherCodeKey

public void setOtherCodeKey(String key)
Sets the code key associated with the "Other" option.

Parameters:
key - the key

getOtherComponent

public InputText getOtherComponent()
Gets the component for inputting "Other" text.

Returns:
the InputText component associated with the "Other" option

setOtherComponent

public void setOtherComponent(InputText otherComponent)
Sets the component for inputting "Other" text.

Parameters:
otherComponent - the InputText component associated with the "Other" option

configure

public void configure(CfgContext context,
                      Node node,
                      NamedNodeMap attributes)
Configures the object based upon a node loaded from a schema configuration XML.
The super.configure method should be invoked prior to any sub-class configuration.

The following attributes are configured:
otherCodeKey

The InputText component associated with the "Other" option is also configured from this node.

Overrides:
configure in class InputSelectOneMenu
Parameters:
context - the configuration context
node - the configuration node
attributes - the attributes of the configuration node

duplicate

public InputSelectWithOther duplicate()
Produces a deep clone of the object.
The duplication constructor is invoked.
return new InputSelectWithOther(this);

Overrides:
duplicate in class InputSelectOneMenu

echo

public void echo(StringBuffer sb)
Appends property information for the component to a StringBuffer.
The method is intended to support "FINEST" logging.
super.echo should be invoked prior appending any local information.

Overrides:
echo in class InputSelectOneMenu
Parameters:
sb - the StringBuffer to use when appending information

makeInputComponent

public UIComponent makeInputComponent(UiContext context,
                                      Section section,
                                      Parameter parameter)
Makes a Faces HtmlSelectOneMenu and an HtmlInputText (for "Other" option) components for a parameter.

The menu items are based upon the defined codes for the parameter.

Overrides:
makeInputComponent in class InputSelectOneMenu
Parameters:
context - the UI context
section - the parent section
parameter - the associated parameter
Returns:
the UI component

unBind

public void unBind(UiContext context,
                   UIComponent editorForm,
                   Parameter parameter)
            throws SchemaException
Triggered on the save event from the metadata editor.

On this event, either HtmlSelectOneMenu input value or the HtmlInputText value is propagated to the parameter's singleValue (depending on the whether or not the user has selected the "Other" option).

Overrides:
unBind in class InputSelectOneMenu
Parameters:
context - the UI context
editorForm - the Faces HtmlForm for the metadata editor
parameter - the associated parameter
Throws:
SchemaException - if an associated Faces UIComponent cannot be located

Esri Geoportal Server
1.0

Copyright 2011 Environmental Systems Research Institute. All rights reserved. Use is subject to license terms.