Show / Hide Table of Contents

Class SimpleValue

A simple implementation of the IXmlValue interface.

Inheritance
object
SimpleValue
SimpleElement
Implements
IXmlValue
ICloneable
IPortableObject
Inherited Members
object.Equals(object, object)
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
Namespace: Tangosol.Run.Xml
Assembly: Coherence.dll
Syntax
public class SimpleValue : IXmlValue, ICloneable, IPortableObject
Remarks

Protected methods are provided to support inheriting classes.

Constructors

SimpleValue()

Construct an empty SimpleValue.

Declaration
public SimpleValue()

SimpleValue(object)

Construct a SimpleValue.

Declaration
public SimpleValue(object value)
Parameters
Type Name Description
object value

The initial value for this SimpleValue.

Remarks

Constructs an element's content value from the passed object value. If the object is a string, then the string should be un-escaped by this point; it must not still be in the form of the CDATA construct.

Exceptions
Type Condition
ArgumentException

If the string value is illegal.

SimpleValue(object, bool)

Construct a SimpleValue.

Declaration
public SimpleValue(object value, bool isAttribute)
Parameters
Type Name Description
object value

The initial value for this SimpleValue.

bool isAttribute

true if this SimpleValue is an element attribute value; false if an element's content's value.

Remarks

Constructs an element's content or attribute value from the passed string value. The string should be un-escaped by this point; it must not still be in the form of the CDATA construct.

Exceptions
Type Condition
ArgumentException

If the string value is illegal.

SimpleValue(object, bool, bool)

Construct a SimpleValue.

Declaration
public SimpleValue(object value, bool isAttribute, bool isReadOnly)
Parameters
Type Name Description
object value

The initial value for this SimpleValue.

bool isAttribute

true if this SimpleValue is an element attribute value; false if an element's content's value.

bool isReadOnly

true if this SimpleValue is intended to be read-only once the constructor has finished.

Remarks

Constructs an element's content or attribute value from the passed string value, and also allows the caller to specify that the value is immutable. The string should be un-escaped by this point; it must not still be in the form of the CDATA construct.

Exceptions
Type Condition
ArgumentException

If the string value is illegal.

Properties

InternalValue

Get or set the internal value of this IXmlValue.

Declaration
protected virtual object InternalValue { get; set; }
Property Value
Type Description
object

The current value of this SimpleValue object or null.

Remarks

This property acts as a single point to which all accessor calls route. As such, it is intended to be extended by inheriting implementations.

Exceptions
Type Condition
InvalidOperationException

If trying to set value when this IXmlValue is not mutable.

IsAttribute

Determine if this value is an element attribute.

Declaration
public virtual bool IsAttribute { get; set; }
Property Value
Type Description
bool

true if this value is an element attribute, otherwise false.

IsContent

Determine if this value is an element's content.

Declaration
public virtual bool IsContent { get; }
Property Value
Type Description
bool

true if this value is an element's content, otherwise false.

IsEmpty

Determine if the value is empty.

Declaration
public virtual bool IsEmpty { get; }
Property Value
Type Description
bool

true if the value is empty.

IsMutable

Determine if this value can be modified.

Declaration
public virtual bool IsMutable { get; set; }
Property Value
Type Description
bool

true if this value can be modified, otherwise false to indicate that this value is read-only.

Remarks

If the value can not be modified, all mutating methods are required to throw an InvalidOperationException.

Parent

Get or set the parent element of this value.

Declaration
public virtual IXmlElement Parent { get; set; }
Property Value
Type Description
IXmlElement

The parent element, or null if this value has no parent.

Remarks

The parent can not be modified once set.

Exceptions
Type Condition
ArgumentNullException

If the specified parent is null.

InvalidOperationException

If trying to set parent that is already set.

Value

Get the value as an object.

Declaration
public virtual object Value { get; }
Property Value
Type Description
object

The value as an object or null if the IXmlValue does not have a value; attributes never have a null value.

Remarks

The following types are supported:

  • Boolean
  • Integer
  • Long
  • Double
  • Decimal
  • String
  • Binary
  • DateTime
It is always legal for an implementation to return the value as a string, for example returning a binary value in a Base64 encoding. This method exists to allow one value to copy from another value.

Methods

Clone()

Creates and returns a copy of this SimpleValue.

Declaration
public virtual object Clone()
Returns
Type Description
object

A clone of this instance.

Remarks

The returned copy is "unlinked" from the parent and mutable.

Convert(object, XmlValueType)

Convert the passed object to the specified type.

Declaration
protected virtual object Convert(object o, XmlValueType type)
Parameters
Type Name Description
object o

The object value.

XmlValueType type

The enumerated type to convert to.

Returns
Type Description
object

An object of the specified type.

EnsureType(XmlValueType)

Change the type of the internal representation of the IXmlValue.

Declaration
protected virtual object EnsureType(XmlValueType type)
Parameters
Type Name Description
XmlValueType type

The enumerated type to convert to.

Returns
Type Description
object

The current value of this SimpleValue object as the specified type or null.

Remarks

A failed conversion will leave the value as null.

Equals(object)

Compare this XML value with another XML value for equality.

Declaration
public override bool Equals(object o)
Parameters
Type Name Description
object o

The object to compare to.

Returns
Type Description
bool

true if the values are equal, false otherwise.

Overrides
object.Equals(object)

GetBinary()

Get the value as Binary.

Declaration
public virtual Binary GetBinary()
Returns
Type Description
Binary

The value as a Binary object.

Remarks

The XML format is expected to be Base64.

GetBinary(Binary)

Get the value as Binary.

Declaration
public virtual Binary GetBinary(Binary defaultValue)
Parameters
Type Name Description
Binary defaultValue

The default return value if the internal value can not be translated into a legal value of type Binary.

Returns
Type Description
Binary

The value as a Binary object.

Remarks

The XML format is expected to be Base64.

GetBoolean()

Get the value as a boolean.

Declaration
public virtual bool GetBoolean()
Returns
Type Description
bool

The value as a boolean.

GetBoolean(bool)

Get the value as a boolean.

Declaration
public virtual bool GetBoolean(bool defaultValue)
Parameters
Type Name Description
bool defaultValue

The default return value if the internal value can not be translated into a legal value of type boolean.

Returns
Type Description
bool

The value as a boolean.

GetDateTime()

Get the value as a DateTime.

Declaration
public virtual DateTime GetDateTime()
Returns
Type Description
DateTime

The value as a DateTime.

GetDateTime(DateTime)

Get the value as a DateTime.

Declaration
public virtual DateTime GetDateTime(DateTime defaultValue)
Parameters
Type Name Description
DateTime defaultValue

The default return value if the internal value can not be translated into a legal value of type DateTime.

Returns
Type Description
DateTime

The value as a DateTime.

GetDecimal()

Get the value as a decimal.

Declaration
public virtual decimal GetDecimal()
Returns
Type Description
decimal

The value as a decimal.

GetDecimal(decimal)

Get the value as a Decimal.

Declaration
public virtual decimal GetDecimal(decimal defaultValue)
Parameters
Type Name Description
decimal defaultValue

The default return value if the internal value can not be translated into a legal value of type decimal.

Returns
Type Description
decimal

The value as a Decimal.

GetDouble()

Get the value as a double.

Declaration
public virtual double GetDouble()
Returns
Type Description
double

The value as a double.

GetDouble(double)

Get the value as a double.

Declaration
public virtual double GetDouble(double defaultValue)
Parameters
Type Name Description
double defaultValue

The default return value if the internal value can not be translated into a legal value of type double.

Returns
Type Description
double

The value as a double.

GetHashCode()

Provide a hash value for this XML value.

Declaration
public override int GetHashCode()
Returns
Type Description
int

The hash value for this XML value.

Overrides
object.GetHashCode()
Remarks

The hash value is defined as one of the following:

  1. 0 if Value is null
  2. otherwise the hash value is the GetHashCode() of the string representation of the value

GetInt()

Get the value as an int.

Declaration
public virtual int GetInt()
Returns
Type Description
int

The value as an int.

GetInt(int)

Get the value as an int.

Declaration
public virtual int GetInt(int defaultValue)
Parameters
Type Name Description
int defaultValue

The default return value if the internal value can not be translated into a legal value of type int.

Returns
Type Description
int

The value as an int.

GetLong()

Get the value as a long.

Declaration
public virtual long GetLong()
Returns
Type Description
long

The value as a long.

GetLong(long)

Get the value as a long.

Declaration
public virtual long GetLong(long defaultValue)
Parameters
Type Name Description
long defaultValue

The default return value if the internal value can not be translated into a legal value of type long.

Returns
Type Description
long

The value as a long.

GetString()

Get the value as a string.

Declaration
public virtual string GetString()
Returns
Type Description
string

The value as a string.

GetString(string)

Get the value as a string.

Declaration
public virtual string GetString(string defaultValue)
Parameters
Type Name Description
string defaultValue

The default return value if the internal value can not be translated into a legal value of type string.

Returns
Type Description
string

The value as a string.

ReadExternal(IPofReader)

Restore the contents of a user type instance by reading its state using the specified IPofReader object.

Declaration
public virtual void ReadExternal(IPofReader reader)
Parameters
Type Name Description
IPofReader reader

The IPofReader from which to read the object's state.

Exceptions
Type Condition
IOException

If an I/O error occurs.

SetBinary(Binary)

Set the Binary value.

Declaration
public virtual void SetBinary(Binary val)
Parameters
Type Name Description
Binary val

A new value of type Binary.

SetBoolean(bool)

Set the boolean value.

Declaration
public virtual void SetBoolean(bool val)
Parameters
Type Name Description
bool val

A new value of type boolean.

SetDateTime(DateTime)

Set the value as a DateTime.

Declaration
public virtual void SetDateTime(DateTime val)
Parameters
Type Name Description
DateTime val

A new value of type DateTime.

SetDecimal(decimal)

Set the decimal value.

Declaration
public virtual void SetDecimal(decimal val)
Parameters
Type Name Description
decimal val

A new value of type decimal.

SetDouble(double)

Set the double value.

Declaration
public virtual void SetDouble(double val)
Parameters
Type Name Description
double val

A new value of type double.

SetInt(int)

Set the int value.

Declaration
public virtual void SetInt(int val)
Parameters
Type Name Description
int val

A new value of type int.

SetLong(long)

Set the long value.

Declaration
public virtual void SetLong(long val)
Parameters
Type Name Description
long val

A new value of type long.

SetString(string)

Set the string value.

Declaration
public virtual void SetString(string val)
Parameters
Type Name Description
string val

A new value of type string.

ToString()

Format the XML value into a string in a display format.

Declaration
public override string ToString()
Returns
Type Description
string

A string representation of the XML value.

Overrides
object.ToString()

WriteExternal(IPofWriter)

Save the contents of a POF user type instance by writing its state using the specified IPofWriter object.

Declaration
public virtual void WriteExternal(IPofWriter writer)
Parameters
Type Name Description
IPofWriter writer

The IPofWriter to which to write the object's state.

Exceptions
Type Condition
IOException

If an I/O error occurs.

WriteValue(TextWriter, bool)

Write the value as it will appear in XML.

Declaration
public virtual void WriteValue(TextWriter writer, bool isPretty)
Parameters
Type Name Description
TextWriter writer

A TextWriter object to use to write to.

bool isPretty

true to specify that the output is intended to be as human readable as possible.

Implements

IXmlValue
ICloneable
IPortableObject
In this article
Back to top Copyright © 2000, 2024, Oracle and/or its affiliates.