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)


Method Summary
 void appendItem(java.lang.StringBuffer retval)
           
 java.lang.String toString()
           
 

Method Detail

appendItem

public void appendItem(java.lang.StringBuffer retval)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object