com.sun.im.service
Class PollHelper

java.lang.Object
  extended byorg.xml.sax.helpers.DefaultHandler
      extended bycom.sun.im.service.PollHelper
All Implemented Interfaces:
org.xml.sax.ContentHandler, org.xml.sax.DTDHandler, org.xml.sax.EntityResolver, org.xml.sax.ErrorHandler

public class PollHelper
extends org.xml.sax.helpers.DefaultHandler

Helper class for recipients of a poll message. This class can be used to parse the xml from the poll message and generate a poll response based on user input.


Field Summary
static java.lang.String ATTRIBUTE_ACCESS
           
static java.lang.String ATTRIBUTE_CUSTOM
           
static java.lang.String ATTRIBUTE_ID
           
static java.lang.String ATTRIBUTE_LABEL
           
static java.lang.String ATTRIBUTE_POLLTYPE
           
static java.lang.String ATTRIBUTE_QUESTION
           
static java.lang.String ATTRIBUTE_VAR
           
static java.lang.String ELEMENT_FIELD
           
static java.lang.String ELEMENT_OPTION
           
static java.lang.String ELEMENT_VALUE
           
 
Constructor Summary
PollHelper(java.io.InputStream in)
          Constructor used by poll message receiver
PollHelper(java.lang.String message)
          Constructor used by poll message receiver
 
Method Summary
 void characters(char[] ch, int start, int length)
           
 int countAnswers()
           
 java.lang.String createResponse(int index)
           
 java.lang.String createResponse(java.lang.String answer)
          returns a serialized pollr element based on the specified custom answer.
 java.io.InputStream createResponseStream(java.lang.String answer)
           
 void endDocument()
           
 void endElement(java.lang.String nsuri, java.lang.String localName, java.lang.String fqName)
           
 java.lang.String getAnswer(int index)
           
 java.lang.String getPollID()
           
 java.lang.String getQuestion()
           
 boolean isCustomAnswerAllowed()
           
 void startDocument()
           
 void startElement(java.lang.String nsuri, java.lang.String localName, java.lang.String fqName, org.xml.sax.Attributes attributes)
           
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ELEMENT_FIELD

public static final java.lang.String ELEMENT_FIELD
See Also:
Constant Field Values

ELEMENT_VALUE

public static final java.lang.String ELEMENT_VALUE
See Also:
Constant Field Values

ELEMENT_OPTION

public static final java.lang.String ELEMENT_OPTION
See Also:
Constant Field Values

ATTRIBUTE_VAR

public static final java.lang.String ATTRIBUTE_VAR
See Also:
Constant Field Values

ATTRIBUTE_LABEL

public static final java.lang.String ATTRIBUTE_LABEL
See Also:
Constant Field Values

ATTRIBUTE_ID

public static final java.lang.String ATTRIBUTE_ID
See Also:
Constant Field Values

ATTRIBUTE_QUESTION

public static final java.lang.String ATTRIBUTE_QUESTION
See Also:
Constant Field Values

ATTRIBUTE_POLLTYPE

public static final java.lang.String ATTRIBUTE_POLLTYPE
See Also:
Constant Field Values

ATTRIBUTE_ACCESS

public static final java.lang.String ATTRIBUTE_ACCESS
See Also:
Constant Field Values

ATTRIBUTE_CUSTOM

public static final java.lang.String ATTRIBUTE_CUSTOM
See Also:
Constant Field Values
Constructor Detail

PollHelper

public PollHelper(java.io.InputStream in)
           throws java.lang.Exception
Constructor used by poll message receiver

Parameters:
in - xml content's input stream. The stream must be UTF-8 encoded.

PollHelper

public PollHelper(java.lang.String message)
           throws java.lang.Exception
Constructor used by poll message receiver

Parameters:
message - content of the application/x-iim-poll message
Method Detail

characters

public void characters(char[] ch,
                       int start,
                       int length)
                throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

startDocument

public void startDocument()
                   throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

endDocument

public void endDocument()
                 throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

endElement

public void endElement(java.lang.String nsuri,
                       java.lang.String localName,
                       java.lang.String fqName)
                throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

startElement

public void startElement(java.lang.String nsuri,
                         java.lang.String localName,
                         java.lang.String fqName,
                         org.xml.sax.Attributes attributes)
                  throws org.xml.sax.SAXException
Throws:
org.xml.sax.SAXException

getPollID

public java.lang.String getPollID()

getQuestion

public java.lang.String getQuestion()

countAnswers

public int countAnswers()

getAnswer

public java.lang.String getAnswer(int index)
                           throws java.lang.IndexOutOfBoundsException
Throws:
java.lang.IndexOutOfBoundsException

createResponse

public java.lang.String createResponse(int index)

createResponse

public java.lang.String createResponse(java.lang.String answer)
                                throws CollaborationException
returns a serialized pollr element based on the specified custom answer. The returned string is suitable for use in a poll response message.

Throws:
CollaborationException

createResponseStream

public java.io.InputStream createResponseStream(java.lang.String answer)
                                         throws CollaborationException
Throws:
CollaborationException

isCustomAnswerAllowed

public boolean isCustomAnswerAllowed()