org.jabber.jabberbeans.Extension
Interface Extension
- All Superinterfaces:
- java.io.Serializable
- All Known Subinterfaces:
- MessageExtension, PresenceExtension, QueryExtension
- All Known Implementing Classes:
- Agent, BrowseItem, ContentPacket, DefaultExtension, HashExtension, IQAgents, IQAuth, IQAutoUpdate, IQPass, IQPrivate, IQRegister, IQSearchRequest, IQSearchResult, IQTime, IQVersion, OOB, PacketError, Roster, XAutoUpdate, XConference, XDelay
- public interface Extension
- extends java.io.Serializable
An Extension
is the base interface for all and
type extensions on tags. Obejcts that implement Extension
should be immutable, meaning that if the construction is overly complicated
a Builder object should be used (for example,
org.jabber.jabberbeans.Message
and org.jabber.jabberbeans.MessageBuilder).
Extensions also need to be parsed, meaning that if the object needs
to use an XML parser, that implementation of the Extension needs to
have the associated parser. So there could be a DOM, a SAX, etc version of
the builder for a message extension; these would be packaged with the
protocol handler (see jabberbeans-sax for examples)
The interface uses toString() to export an XML representation of contained
data, and uses the Serializable interface for an object-based representation
(if someone was to implement a non-XML based client-server arch)
appendItem
public void appendItem(java.lang.StringBuffer retval)
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object