com.genesyslab.platform.commons.connection.impl.EncodingSupport
, com.genesyslab.platform.commons.connection.impl.xml.XmlStructureHandler
, ConfigurationSupport
, com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
MailPropertiesCodec
public class XmlKeyValueCodec extends java.lang.Object implements com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec, com.genesyslab.platform.commons.connection.impl.xml.XmlStructureHandler, ConfigurationSupport, com.genesyslab.platform.commons.connection.impl.EncodingSupport
Modifier and Type | Field | Description |
---|---|---|
protected static java.lang.String |
VALUE_TYPE_BINARY |
|
protected static java.lang.String |
VALUE_TYPE_INT |
|
protected static java.lang.String |
VALUE_TYPE_KVLIST |
|
protected static java.lang.String |
VALUE_TYPE_UTF |
Constructor | Description |
---|---|
XmlKeyValueCodec() |
Modifier and Type | Method | Description |
---|---|---|
void |
appendLogValue(java.lang.StringBuffer buf,
java.lang.Object customTypeObject,
boolean truncate,
boolean hide) |
Appends value of the custom-type object to the buffer.
|
void |
configure(ConnectionConfiguration config) |
|
java.lang.Object |
decodeFromXml(javax.xml.transform.Source attributeElement,
AttributeDescription attributeDescription) |
Deserializes custom-type object from xml representation.
|
java.lang.Object |
encodeForConnection(java.lang.Object customTypeObject,
java.lang.String id,
MessageTransport transport,
java.lang.Object transportState) |
Serializes custom-type object to the form, that can be accepted
by connection.
|
void |
encodeToXml(java.lang.Object customTypeObject,
javax.xml.transform.Result attributeElement) |
Serializes custom-type object to xml.
|
protected java.lang.Object |
getComplexAttributeValue() |
|
ConnectionConfiguration |
getConfiguration() |
|
protected java.lang.String |
getKeyText(int depth) |
|
KeyValueCollection |
getList() |
|
java.lang.String |
getLogType() |
Returns type signature for attribute record written to log.
|
protected java.lang.String |
getNodeName(int depth,
java.lang.String key,
java.lang.Object value) |
|
java.lang.String |
getNS() |
Returns Xml namespace of custom type or null
if namespace is default for protocol.
|
protected java.lang.String |
getTypeText(int depth) |
|
boolean |
needsProcessing(java.lang.Object state,
java.lang.String attributeId,
org.w3c.dom.Element complexElement) |
|
java.lang.Object |
onComplexAttribute(java.lang.Object state,
java.lang.String attributeId,
org.w3c.dom.Element complexElement) |
Indicates that complex (compound) attribute is processed.
|
java.lang.Object |
onComplexEnd(java.lang.Object state,
java.lang.String attributeId) |
|
protected void |
setAdditionalAttributes(MessageTransport transport,
java.lang.Object transportState,
java.lang.String key,
int depth) |
|
void |
setMessage(Message message) |
Sets message this codec works on.
|
void |
setProtocolData(java.lang.Object protocolData) |
Sets additional protocol specific data for this codec.
|
void |
setStringAttributesEncoding(java.lang.String stringAttributesEncoding) |
protected static final java.lang.String VALUE_TYPE_INT
protected static final java.lang.String VALUE_TYPE_UTF
protected static final java.lang.String VALUE_TYPE_BINARY
protected static final java.lang.String VALUE_TYPE_KVLIST
public void setStringAttributesEncoding(java.lang.String stringAttributesEncoding)
setStringAttributesEncoding
in interface com.genesyslab.platform.commons.connection.impl.EncodingSupport
public ConnectionConfiguration getConfiguration()
getConfiguration
in interface ConfigurationSupport
public void configure(ConnectionConfiguration config)
configure
in interface ConfigurationSupport
public void setProtocolData(java.lang.Object protocolData)
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
It is highly recommended to implement the protocolData object
as set of interfaces that in turn provide access to codec specific
data. Do not use protocolData as an object for a single codec,
since it will be impossible to extend such object.
Wrong: CodecData data = (CodecData) protocolData;
Right: CodecData data =
((CodecDataHolder) protocolData).getCodecData();
setProtocolData
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
protocolData
- protocol specific datapublic void setMessage(Message message)
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
setMessage
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
message
- protocol specific dataprotected java.lang.String getKeyText(int depth)
protected java.lang.String getTypeText(int depth)
protected java.lang.String getNodeName(int depth, java.lang.String key, java.lang.Object value)
protected void setAdditionalAttributes(MessageTransport transport, java.lang.Object transportState, java.lang.String key, int depth) throws PlatformException
PlatformException
public java.lang.Object encodeForConnection(java.lang.Object customTypeObject, java.lang.String id, MessageTransport transport, java.lang.Object transportState) throws PlatformException
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
encodeForConnection
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
customTypeObject
- object to serializeid
- attribute idtransport
- message transporttransportState
- state of the transportPlatformException
- if some problems occurredpublic java.lang.String getNS()
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
getNS
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
public void encodeToXml(java.lang.Object customTypeObject, javax.xml.transform.Result attributeElement) throws com.genesyslab.platform.commons.protocol.runtime.codec.CodecException
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
encodeToXml
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
customTypeObject
- object to serializeattributeElement
- xml attribute to store the data incom.genesyslab.platform.commons.protocol.runtime.codec.CodecException
- if some codec problems occurredpublic java.lang.Object decodeFromXml(javax.xml.transform.Source attributeElement, AttributeDescription attributeDescription) throws com.genesyslab.platform.commons.protocol.runtime.codec.CodecException
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
decodeFromXml
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
attributeElement
- xml attribute to restore the data fromattributeDescription
- attribute description objectcom.genesyslab.platform.commons.protocol.runtime.codec.CodecException
- if there is problems with xml datapublic java.lang.String getLogType()
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
LogTypes
class to return standard values.getLogType
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
public void appendLogValue(java.lang.StringBuffer buf, java.lang.Object customTypeObject, boolean truncate, boolean hide) throws com.genesyslab.platform.commons.protocol.runtime.codec.CodecException
com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
appendLogValue
in interface com.genesyslab.platform.commons.protocol.runtime.codec.CustomTypeCodec
buf
- buffer to append datacustomTypeObject
- value of custom-type objecttruncate
- whether long value should be truncatedhide
- whether value should be hiddencom.genesyslab.platform.commons.protocol.runtime.codec.CodecException
- if some codec problems occurredpublic boolean needsProcessing(java.lang.Object state, java.lang.String attributeId, org.w3c.dom.Element complexElement)
needsProcessing
in interface com.genesyslab.platform.commons.connection.impl.xml.XmlStructureHandler
public java.lang.Object onComplexAttribute(java.lang.Object state, java.lang.String attributeId, org.w3c.dom.Element complexElement)
com.genesyslab.platform.commons.connection.impl.xml.XmlStructureHandler
onComplexAttribute
in interface com.genesyslab.platform.commons.connection.impl.xml.XmlStructureHandler
state
- state of the handlerattributeId
- attribute namecomplexElement
- DOM element of complex typepublic java.lang.Object onComplexEnd(java.lang.Object state, java.lang.String attributeId)
onComplexEnd
in interface com.genesyslab.platform.commons.connection.impl.xml.XmlStructureHandler
protected java.lang.Object getComplexAttributeValue()
public KeyValueCollection getList()
Send comments on this topicTechpubs.webadmin@genesys.com.
Document version: 9.0.006.00
Copyright © 2006–2019 Genesys Telecommunications Laboratories, Inc. All rights reserved.