Class StringQuestion

java.lang.Object
com.sun.interview.Question
com.sun.interview.StringQuestion

public abstract class StringQuestion extends Question
A question to which the response is a string.
  • Field Details

    • value

      protected String value
      The current response for this question.
    • suggestions

      protected String[] suggestions
      Suggested values for this question.
    • nominalMaxLength

      protected int nominalMaxLength
      The nominal maximum length for the string.
  • Constructor Details

    • StringQuestion

      protected StringQuestion(Interview interview, String tag)
      Create a question with a nominated tag.
      Parameters:
      interview - The interview containing this question.
      tag - A unique tag to identify this specific question.
  • Method Details

    • equal

      protected static boolean equal(String s1, String s2)
      Compare two strings for equality.
      Parameters:
      s1 - the first string to be compared, or null
      s2 - the other string to be compared, or null
      Returns:
      true if both parameters are null, or if both are non-null and equal.
    • getDefaultValue

      public String getDefaultValue()
      Get the default response for this question.
      Returns:
      the default response for this question.
      See Also:
    • setDefaultValue

      public void setDefaultValue(String v)
      Set the default response for this question, used by the clear method.
      Parameters:
      v - the default response for this question.
      See Also:
    • getValue

      public String getValue()
      Get the current (default or latest) response to this question.
      Returns:
      The current value.
      See Also:
    • setValue

      public void setValue(String newValue)
      Set the current value.
      Specified by:
      setValue in class Question
      Parameters:
      newValue - The value to be set.
      See Also:
    • getValueOnPath

      public String getValueOnPath() throws Interview.NotOnPathFault
      Verify this question is on the current path, and if it is, return the current value.
      Returns:
      the current value of this question
      Throws:
      Interview.NotOnPathFault - if this question is not on the current path
      See Also:
    • getStringValue

      public String getStringValue()
      Description copied from class: Question
      Get the response to this question as a string.
      Specified by:
      getStringValue in class Question
      Returns:
      a string representing the current response to this question, or null.
      See Also:
    • isValueValid

      public boolean isValueValid()
      Description copied from class: Question
      Check if the question currently has a valid response.
      Specified by:
      isValueValid in class Question
      Returns:
      true if the question currently has a valid response, and false otherwise.
    • isValueAlwaysValid

      public boolean isValueAlwaysValid()
      Description copied from class: Question
      Check if the question always has a valid response. This may be true, for example, for a choice question with a default response.
      Specified by:
      isValueAlwaysValid in class Question
      Returns:
      true if the question always has a valid response, and false otherwise.
    • getNominalMaxLength

      public int getNominalMaxLength()
      Get the nominal maximum length for the string.
      Returns:
      the nominal maximum length for the string.
      See Also:
    • setNominalMaxLength

      public void setNominalMaxLength(int nominalMaxLength)
      Set the expected maximum length for the string.
      Parameters:
      nominalMaxLength - the nominal maximum length for the string.
      See Also:
    • getSuggestions

      public String[] getSuggestions()
      Get the suggested responses to this question, or null if none.
      Returns:
      The suggestions.
      See Also:
    • setSuggestions

      public void setSuggestions(String... newSuggestions)
      Set the set of suggested responses.
      Parameters:
      newSuggestions - The values to be set, or null if none
      Throws:
      IllegalArgumentException - if any of the values in the array are null
      See Also:
    • clear

      public void clear()
      Clear any response to this question, resetting the value back to its initial state.
      Specified by:
      clear in class Question
    • save

      protected void save(Map<String,String> data)
      Save the value for this question in a dictionary, using the tag as the key.
      Specified by:
      save in class Question
      Parameters:
      data - The map in which to save the value for this question.