com.topcoder.shared.problem
Class Constraint

java.lang.Object
  |
  +--com.topcoder.shared.problem.BaseElement
        |
        +--com.topcoder.shared.problem.Constraint
All Implemented Interfaces:
java.lang.Cloneable, com.topcoder.shared.netCommon.CustomSerializable, Element, java.io.Serializable
Direct Known Subclasses:
SizeConstraint, UserConstraint, ValidValuesConstraint

public abstract class Constraint
extends com.topcoder.shared.problem.BaseElement
implements Element

The Constraint class is intended to be a generalization of input constraints in problem statements.

Author:
Logan Hanks
See Also:
UserConstraint, Element, com.topcoder.shared.problemParser.ConstraintFactory, Serialized Form

Constructor Summary
Constraint()
          Empty constructor required by custom serialization.
Constraint(java.lang.String param)
          Constructs the constraint with the passed free-form text information.
 
Method Summary
 void customReadObject(com.topcoder.shared.netCommon.CSReader reader)
          Custom serialization.
 void customWriteObject(com.topcoder.shared.netCommon.CSWriter writer)
          Custom serialization.
static java.lang.String encodeHTML(java.lang.String text)
          Utility function for encoding HTML entities in text.
 ElementRenderer getRenderer()
          Returns this elements renderer.
 void setRenderer(ElementRenderer renderer)
          Sets the renderer for this element.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.topcoder.shared.problem.Element
getRenderer, setRenderer, toXML
 

Constructor Detail

Constraint

public Constraint()
Empty constructor required by custom serialization.


Constraint

public Constraint(java.lang.String param)
Constructs the constraint with the passed free-form text information.

Parameters:
param - the free-form text for the constraint.
Method Detail

customWriteObject

public void customWriteObject(com.topcoder.shared.netCommon.CSWriter writer)
                       throws java.io.IOException
Custom serialization.

Specified by:
customWriteObject in interface Element
Parameters:
writer - the writer to write to.
Throws:
java.io.IOException - if an I/O error has occurred in the stream that backs the writer.

customReadObject

public void customReadObject(com.topcoder.shared.netCommon.CSReader reader)
                      throws java.io.IOException,
                             java.io.ObjectStreamException
Custom serialization.

Specified by:
customReadObject in interface Element
Parameters:
reader - the reader to read from.
Throws:
java.io.ObjectStreamException - if the information that is read is inconsistent (stream corrupted or incompatibility between writers and readers)
java.io.IOException - if an I/O error has occurred in the stream that backs the reader.

setRenderer

public void setRenderer(ElementRenderer renderer)
Sets the renderer for this element.

Specified by:
setRenderer in interface Element
Parameters:
renderer - the element renderer.
See Also:
ElementRenderer

getRenderer

public ElementRenderer getRenderer()
Returns this elements renderer.

Specified by:
getRenderer in interface Element
Returns:
this elements renderer.
See Also:
ElementRenderer

encodeHTML

public static java.lang.String encodeHTML(java.lang.String text)
Utility function for encoding HTML entities in text. All occurrences of the <, >, and & characters are converted to &lt;, &gt;, and &amp;, respectively.

Parameters:
text - the text to encode.
Returns:
the encoded text.