Package com.tangosol.run.xml
Class MapAdapter
-
- All Implemented Interfaces:
Serializable
public class MapAdapter extends IterableAdapter
A MapAdapter supports properties whose types implement the java.util.Map interface.<property> <name>People</name> <xml-name>people</xml-name> <!-- defaults to <name> --> <type>java.util.Map</type> <!-- defaults via reflection --> <class>java.util.HashMap</class> <!-- defaults to <type> --> <empty-is-null>true</empty-is-null> <!-- defaults to false --> <element> <xml-name>person</xml-name> <!-- required --> <key> <name>ssn</name> <!-- defaults to "key" --> <xml-name>ssn</xml-name> <!-- defaults to <name> --> <type>String</type> <!-- required --> <adapter>...</adapter> <!-- optional --> <...> <!-- for the type-specific adapter --> </key> <value> <name>info</name> <!-- defaults to "value" --> <xml-name>info</xml-name> <!-- defaults to <name> --> <type>com...PersonBean</type> <!-- required --> <adapter>...</adapter> <!-- optional --> <...> <!-- for the type-specific adapter --> </value> </elelemt> </property> Example of map nested within collection tags: <doc> <people> <person> <ssn>...</ssn> <info>...</info> </person> <person> <ssn>...</ssn> <info>...</info> </person> ... </people> </doc>
- Version:
- 1.00 2001.03.18
- Author:
- cp
- See Also:
- Serialized Form
-
-
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
Constructors Constructor Description MapAdapter(XmlBean.BeanInfo infoBean, Class clzType, String sName, String sXml, XmlElement xml)
Construct a MapAdapter.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
clone(Object o)
Make a clone of the passed object.PropertyAdapter
getKeyAdapter()
PropertyAdapter
getValueAdapter()
protected Map
instantiateMap()
boolean
isEmpty(Object o)
Determine if the specified value is empty.protected Object
readElements(XmlElement xml)
Object
readExternal(DataInput in)
Read a value from the passed DataInput object.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
equalsValue, findAttribute, findElement, fromUri, get, getAccessor, getBeanInfo, getCloner, getElements, getLocalXmlName, getMutator, getName, getNamespacePrefix, getNamespaceUri, getType, getXmlName, hash, 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, isPatchCompatible, isPatchCompatible, isResolving, isSerializable, isSerializerCompatible, isVersionCompatible, isVersionCompatible, 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 Detail
-
MapAdapter
public MapAdapter(XmlBean.BeanInfo infoBean, Class clzType, String sName, String sXml, XmlElement xml)
Construct a MapAdapter.- 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 Detail
-
clone
public Object clone(Object o)
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
protected Object readElements(XmlElement xml)
- 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
protected void writeElements(XmlElement xml, Object o)
- Specified by:
writeElements
in classIterableAdapter
- Parameters:
xml
- the XML element to which the iterable elements are writteno
- the object to serialize (not null)
-
readExternal
public Object readExternal(DataInput in) throws IOException
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
-
writeExternal
public void writeExternal(DataOutput out, Object o) throws IOException
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
public boolean isEmpty(Object o)
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
-
getKeyAdapter
public PropertyAdapter getKeyAdapter()
- Returns:
- a PropertyAdapter for map entry keys
-
getValueAdapter
public PropertyAdapter getValueAdapter()
- Returns:
- a PropertyAdapter for map entry values
-
instantiateMap
protected Map instantiateMap()
- Returns:
- a new Map instance
-
-