com.rubecula.jquantity
Class ValuePresentation

java.lang.Object
  |
  +--com.rubecula.util.Presentation
        |
        +--com.rubecula.jquantity.ValuePresentation
All Implemented Interfaces:
Auditable, java.lang.Cloneable, Mutable

public class ValuePresentation
extends Presentation
implements Mutable

Presentation class to deal with value objects.

Version:
$Revision: 1.1 $
Author:
Robin Hillyard

Field Summary
(package private)  NumberPresentation _Number
          A NumberPresentation representing the number part of this value.
(package private)  java.lang.String _Type
          A String representing the type of this value.
static char $Shriek
          The character value "!".
 
Fields inherited from class com.rubecula.util.Presentation
$empty, $Stars
 
Constructor Summary
ValuePresentation(NumberPresentation number, java.lang.String type)
          Primary constructor to create a value presentation from a NumberPresentation and a type string.
 
Method Summary
 java.lang.String audit(java.lang.String label)
          Method to return a detailed string from an object for debugging purposes.
 java.lang.String getIdentifier()
          Method to get the specific identifier for an object.
static void main(java.lang.String[] args)
          Main method for testing this class.
 Presentable parse()
          Convert this Presentation into a Presentable object.
 java.lang.String toString(int width)
          Render this Presentation as a String with the given width limitation.
static ValuePresentation valueOf(java.lang.String value)
          Factory method to create a new instance of ValuePresentation from a string value.
 
Methods inherited from class com.rubecula.util.Presentation
audit, audit, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

$Shriek

public static final char $Shriek
The character value "!".

See Also:
Constant Field Values

_Number

NumberPresentation _Number
A NumberPresentation representing the number part of this value.


_Type

java.lang.String _Type
A String representing the type of this value.

Constructor Detail

ValuePresentation

public ValuePresentation(NumberPresentation number,
                         java.lang.String type)
                  throws PresentationException
Primary constructor to create a value presentation from a NumberPresentation and a type string.

Parameters:
number - the NumberPresentation.
type - the type as a string (without the "!").
Throws:
PresentationException - if parsing problem.
Method Detail

main

public static void main(java.lang.String[] args)
Main method for testing this class.

Parameters:
args - String[] : the command line options.

valueOf

public static ValuePresentation valueOf(java.lang.String value)
                                 throws PresentationException
Factory method to create a new instance of ValuePresentation from a string value.

Parameters:
value - the string in the form: number@units where number can be formed into a NumberPresentation and where units is a recognized units name.
Returns:
a new ValuePresentation as appropriate.
Throws:
PresentationException

toString

public java.lang.String toString(int width)
                          throws PresentationException
Render this Presentation as a String with the given width limitation.

Specified by:
toString in class Presentation
Parameters:
width - the maximum number of characters allowed for depiction of this presentation.
Returns:
a representation (rendering) of this Presentation.
Throws:
PresentationException - when width is insufficient.

parse

public Presentable parse()
                  throws PresentationException
Convert this Presentation into a Presentable object.

Specified by:
parse in class Presentation
Returns:
an appropriate instance of WholeNumber.
Throws:
PresentationException

audit

public java.lang.String audit(java.lang.String label)
Description copied from interface: Auditable
Method to return a detailed string from an object for debugging purposes.

Specified by:
audit in interface Auditable
Parameters:
label - the label to associate with the data. If label is non-null, a more detailed audit will be returned (this normally occurs only at the top level).
Returns:
the detailed string.

getIdentifier

public java.lang.String getIdentifier()
Description copied from interface: Auditable
Method to get the specific identifier for an object.

Specified by:
getIdentifier in interface Auditable
Returns:
the identifier.