Data received from the network are read from the network sockets as bytes by code in the
tigase.io package. Bytes then are changed into characters in classes of
tigase.net package and as characters they are sent to the XML parser (
tigase.xml) which turns them to XML DOM structures.
All data inside the server is exchanged in XML DOM form as this is the format used by XMPP protocol. For basic XML data processing (parsing characters stream, building DOM, manipulate XML elements and attributes) we use Tigase XML parser and DOM builder.
Each stanza is stored in the
tigase.xml.Element object. Every Element can contain any number of
child Elements and any number of attributes. You can access all these data through the class API.
To simplify some, most common operations Element is wrapped in
tigase.server.Packet class which offers another level of API for the most common operations like preparation of response stanza based on the element it contains (swap to/from values, put type=result attribute and others).