Package com.tangosol.run.xml
Class ArrayAdapter
- All Implemented Interfaces:
Serializable
An ArrayAdapter supports properties of Java array types (not including
arrays of primitive types).
<property>
<name>People</name>
<xml-name>people</xml-name> <!-- defaults to <name> -->
<type>com...Person[]</type> <!-- defaults via reflection -->
<class>com...Person[]</class> <!-- defaults from <type> -->
<sparse>true</sparse> <!-- defaults to false -->
<empty-is-null>true</empty-is-null> <!-- defaults to false -->
<element> <!-- optional -->
<xml-name>person</xml-name> <!-- optional, nests the elements -->
<type>com...Person</type> <!-- auto-set from <property><class> -->
<adapter>...</adapter> <!-- optional -->
<...> <!-- for the type-specific adapter -->
</element>
</property>
Example of collection nested within collection tags:
<doc>
<people>
<person>
<...>
</person>
<person>
<...>
</person>
...
</people>
</doc>
- Version:
- 1.00 2001.03.18
- Author:
- cp
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.tangosol.util.ExternalizableHelper
ExternalizableHelper.DecoratedMultiBufferReadBuffer, ExternalizableHelper.DefaultObjectStreamFactory, ExternalizableHelper.FormatAwareCompressor, ExternalizableHelper.IntDecoratedObject, ExternalizableHelper.Shielded, ExternalizableHelper.ShieldedDataOutputStream, ExternalizableHelper.ShieldedInputStream, ExternalizableHelper.ShieldedObjectOutputStream, ExternalizableHelper.ShieldedOutputStream, ExternalizableHelper.SimpleXmlBeanClassCache, ExternalizableHelper.Stats, ExternalizableHelper.XmlBeanClassCache
Nested classes/interfaces inherited from class com.tangosol.util.Base
Base.LoggingWriter
-
Field Summary
Fields inherited from class com.tangosol.run.xml.IterableAdapter
m_fEmptyIsNull, m_fSparse, m_sElement
Fields inherited from class com.tangosol.run.xml.PropertyAdapter
m_clzType, m_fAttribute, m_infoBean, m_methodClone, m_methodGet, m_methodSet, m_sName, m_sNmsPrefix, m_sNmsUri, m_sXml, NOPARAMS
Fields inherited from class com.tangosol.util.ExternalizableHelper
BINARY_SIZE, CHUNK_SIZE, CHUNK_THRESHOLD, CONVERTER_FROM_BINARY, CONVERTER_STRIP_INTDECO, CONVERTER_TO_BINARY, DECO_APP_1, DECO_APP_2, DECO_APP_3, DECO_BACKUP, DECO_CUSTOM, DECO_EXPIRY, DECO_ID_MAX, DECO_ID_MIN, DECO_JCACHE, DECO_JCACHE_SYNTHETIC, DECO_MEMCACHED, DECO_PUSHREP, DECO_QUEUE_METADATA, DECO_RSVD_1, DECO_STORE, DECO_TX, DECO_VALUE, DECO_WLS, EMPTY_BINARY_ARRAY, FMT_B_ARRAY, FMT_BIN_DECO, FMT_BIN_EXT_DECO, FMT_BINARY, FMT_BOOLEAN, FMT_BYTE, FMT_DECIMAL, FMT_DOUBLE, FMT_EXT, FMT_FLOAT, FMT_IDO, FMT_INT, FMT_INTEGER, FMT_LONG, FMT_NONE, FMT_NULL, FMT_OBJ_EXT, FMT_OBJ_SER, FMT_OPT, FMT_OPT_DOUBLE, FMT_OPT_INT, FMT_OPT_LONG, FMT_SHORT, FMT_STRING, FMT_UNKNOWN, FMT_XML_BEAN, FMT_XML_SER, FORCE_RESOLVING_STREAMS, LAMBDA_SERIALIZATION, MAX_DECO_HEADER_BYTES, PACKED_INT_SIZE, PACKED_LONG_SIZE, PROPERTY_CONFIG, s_streamfactory, TRINT_DOMAIN_SPAN, TRINT_MAX_VALUE, TRINT_MAX_VARIANCE, USE_POF_STREAMS, USE_XMLBEAN_CLASS_CACHE, XMLBEAN_CLASS_CACHE
-
Constructor Summary
ConstructorDescriptionArrayAdapter
(XmlBean.BeanInfo infoBean, Class clzType, String sName, String sXml, XmlElement xml) Construct a ArrayAdapter. -
Method Summary
Modifier and TypeMethodDescriptionMake a clone of the passed object.boolean
equalsValue
(Object o1, Object o2) Compare the two passed objects for equality.int
compute a hash code for the passed object.boolean
Determine if the specified value is empty.protected Object[]
Read an array of specified length from the passed DataInput object.protected Object
readElements
(XmlElement xml) Read a value from the passed DataInput object.protected Object[]
readLargeArray
(DataInput in, int c) Read an array of property data with length larger thanExternalizableHelper.CHUNK_THRESHOLD
>> 4.protected void
writeElements
(XmlElement xml, Object o) void
writeExternal
(DataOutput out, Object o) Write the specified data to the passed DataOutput object.Methods inherited from class com.tangosol.run.xml.IterableAdapter
findAdapter, fromXml, getElementName, isCloneRequired, isEmptyIsNull, isNested, isSparse, toXml
Methods inherited from class com.tangosol.run.xml.PropertyAdapter
findAttribute, findElement, fromUri, get, getAccessor, getBeanInfo, getCloner, getElements, getLocalXmlName, getMutator, getName, getNamespacePrefix, getNamespaceUri, getType, getXmlName, isAnonymous, isAttribute, isElementMatch, readXml, set, setNamespacePrefix, toString, toUri, writeXml
Methods inherited from class com.tangosol.util.ExternalizableHelper
asBinary, calculatePackedLength, calculatePackedLength, checkObjectInputFilter, checkObjectInputFilter, checkObjectInputFilter, convertUTF, decodeExpiry, decorate, decorate, decorate, decorate, decorate, decorateBinary, encodeExpiry, ensureSerializer, extractIntDecoration, fromBinary, fromBinary, fromBinary, fromBinary, fromBinary, fromBinary, fromByteArray, fromByteArray, getClass, getConfigSerialFilter, getConfigSerialFilterFactory, getDecoration, getDecoration, getDecorations, getDeltaCompressor, getInputStream, getNewObjectInput, getObjectInput, getObjectInputFilter, getObjectOutput, getObjectStreamFactory, getOutputStream, getShieldedOutputStream, getStreamFormat, getUndecorated, getUndecorated, isDecorated, isDecorated, isIntDecorated, isIntDecorated, isResolving, isSerializable, isSerializerCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, loadClass, loadResource, main, makeTrint, readBigDecimal, readBigInteger, readBooleanArray, readBooleanArray, readByteArray, readCharArray, readCharArray, readCollection, readDate, readDoubleArray, readDoubleArray, readExternalizableLite, readExternalizableLite, readFloatArray, readFloatArray, readInt, readInt, readIntArray, readIntArray, readIntArray2d, readLargeBooleanArray, readLargeByteArray, readLargeCharArray, readLargeDoubleArray, readLargeFloatArray, readLargeIntArray, readLargeLongArray, readLargeObjectArray, readLargeStringArray, readLong, readLong, readLongArray, readLongArray, readMap, readMap, readObject, readObject, readObjectArray, readObjectArray, readSafeUTF, readSafeUTF, readSerializable, readSerializable, readStringArray, readStringArray, readTime, readTimestamp, readTrint, readUnsignedTrint, readUTF, readXmlBean, readXmlSerializable, readXmlSerializable, realize, removeIntDecoration, removeIntDecoration, replace, reportIncompatibleSerializers, setObjectStreamFactory, toBinary, toBinary, toBinary, toByteArray, toByteArray, toByteArray, toLiteBinary, toLong, undecorate, undecorate, validateBufferSize, validateLoadArray, validateLoadClass, writeBigDecimal, writeBigInteger, writeBooleanArray, writeByteArray, writeCollection, writeDate, writeDoubleArray, writeExternalizableLite, writeFloatArray, writeInt, writeInt, writeIntArray2d, writeLong, writeLong, writeMap, writeObject, writeSafeUTF, writeSafeUTF, writeSerializable, writeStringArray, writeTime, writeTimestamp, writeTrint, writeTrint, writeUTF, writeXmlBean, writeXmlSerializable
Methods inherited from class com.tangosol.util.BitHelper
countBits, countBits, countBits, indexOfLSB, indexOfLSB, indexOfLSB, indexOfMSB, indexOfMSB, indexOfMSB, rotateLeft, rotateLeft, rotateLeft, rotateRight, rotateRight, rotateRight, toBitString, toBitString, toBitString, toBytes, toBytes, toBytes, toBytes, toInt, toInt, toLong
Methods inherited from class com.tangosol.util.Base
azzert, azzert, azzert, azzertFailed, breakLines, breakLines, capitalize, checkNotEmpty, checkNotNull, checkRange, computeSafeWaitTime, decimalValue, dup, dup, ensureBigDecimal, ensureClassLoader, ensureRuntimeException, ensureRuntimeException, equals, equalsDeep, err, err, err, err, err, escape, formatDateTime, getCallerStackFrame, getCommonMonitor, getCommonMonitor, getCommonMonitor, getContextClassLoader, getContextClassLoader, getDeepMessage, getErr, getLastSafeTimeMillis, getLog, getMaxDecDigits, getMaxHexDigits, getOriginalException, getOut, getProcessRandom, getRandom, getRandomBinary, getRandomBinary, getRandomString, getSafeTimeMillis, getStackFrame, getStackFrames, getStackTrace, getStackTrace, getStackTrace, getThreadFactory, getTimeZone, getUpTimeMillis, hashCode, hexValue, indentString, indentString, isDecimal, isHex, isLogEcho, isOctal, log, log, log, log, log, makeInteger, makeLong, makeThread, mergeArray, mergeBooleanArray, mergeByteArray, mergeCharArray, mergeDoubleArray, mergeFloatArray, mergeIntArray, mergeLongArray, mod, mod, octalValue, out, out, out, out, out, pad, parseBandwidth, parseBandwidth, parseDelimitedString, parseHex, parseHex, parseMemorySize, parseMemorySize, parsePercentage, parseTime, parseTime, parseTimeNanos, parseTimeNanos, printStackTrace, randomize, randomize, randomize, randomize, read, read, read, read, read, read, read, replace, setErr, setLog, setLogEcho, setOut, sleep, toBandwidthString, toBandwidthString, toCharEscape, toCrc, toCrc, toCrc, toCrc, toCrc, toDecString, toDelimitedString, toDelimitedString, toDelimitedString, toDelimitedString, toHex, toHex, toHexDump, toHexEscape, toHexEscape, toHexEscape, toHexEscape, toHexString, toMemorySizeString, toMemorySizeString, toQuotedCharEscape, toQuotedStringEscape, toSqlString, toString, toString, toStringEscape, toUnicodeEscape, trace, trace, trace, trace, trace, trace, trace, trace, trace, truncateString, truncateString, wait
-
Constructor Details
-
ArrayAdapter
public ArrayAdapter(XmlBean.BeanInfo infoBean, Class clzType, String sName, String sXml, XmlElement xml) Construct a ArrayAdapter.- Parameters:
infoBean
- BeanInfo for a bean containing this propertyclzType
- the type of the propertysName
- the property namesXml
- the XML tag namexml
- additional XML information
-
-
Method Details
-
hash
compute a hash code for the passed object.- Overrides:
hash
in classPropertyAdapter
- Parameters:
o
- the object to compute a hash code for- Returns:
- an integer hash code
-
equalsValue
Compare the two passed objects for equality.- Overrides:
equalsValue
in classPropertyAdapter
- Parameters:
o1
- the first objecto2
- the second object- Returns:
- true if the two objects are equal
-
clone
Make a clone of the passed object.- Overrides:
clone
in classPropertyAdapter
- Parameters:
o
- the object to clone- Returns:
- a clone of the passed object
-
readElements
- Specified by:
readElements
in classIterableAdapter
- Parameters:
xml
- the XML element containing the XML elements to deserialize from- Returns:
- the object deserialized from the XML (not null)
-
writeElements
- Specified by:
writeElements
in classIterableAdapter
- Parameters:
xml
- the XML element to which the iterable elements are writteno
- the object to serialize (not null)
-
readExternal
Read a value from the passed DataInput object.- Overrides:
readExternal
in classPropertyAdapter
- Parameters:
in
- the DataInput stream to read property data from- Returns:
- the data read from the DataInput; never null
- Throws:
IOException
- if an I/O exception occurs
-
readArray
Read an array of specified length from the passed DataInput object.- Parameters:
in
- the DataInput stream to read property data from- Returns:
- the data read from the DataInput; never null
- Throws:
IOException
- if an I/O exception occurs
-
readLargeArray
Read an array of property data with length larger thanExternalizableHelper.CHUNK_THRESHOLD
>> 4.- Parameters:
in
- the DataInput stream to read property data from- Returns:
- the data read from the DataInput; never null
- Throws:
IOException
- if an I/O exception occurs
-
writeExternal
Write the specified data to the passed DataOutput object.- Overrides:
writeExternal
in classPropertyAdapter
- Parameters:
out
- the DataOutput stream to write too
- the data to write to the DataOutput; never null- Throws:
IOException
- if an I/O exception occurs
-
isEmpty
Determine if the specified value is empty.- Overrides:
isEmpty
in classPropertyAdapter
- Parameters:
o
- the value- Returns:
- true if the object is considered to be empty for persistence and XML-generation purposes
-