Overview | Package | Class | Tree | Deprecated | Index | Help
| Openfire 3.4.3 Javadoc
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.xmpp.packet
Class Message

    java.lang.Object
      org.xmpp.packet.Packet
          org.xmpp.packet.Message

Direct Known Subclasses:
  Invitation, OfflineMessage

    public class Message

extends Packet

Message packet.

A message can have one of several `Types`. For each message type, different message fields are typically used as follows:

| Message type
Field | Normal | Chat | Group Chat | Headline | Error
subject | SHOULD | SHOULD NOT | SHOULD NOT | SHOULD NOT | SHOULD NOT
thread | OPTIONAL | SHOULD | OPTIONAL | OPTIONAL | SHOULD NOT
body | SHOULD | SHOULD | SHOULD | SHOULD | SHOULD NOT
error | MUST NOT | MUST NOT | MUST NOT | MUST NOT | MUST

Nested Class Summary
`static class` | `Message.Type` Type-safe enumeration for the type of a message.

Field Summary

Fields inherited from class org.xmpp.packet.Packet
`docFactory, element, fromJID, toJID`

Constructor Summary
`Message()` Constructs a new Message.
`Message(org.dom4j.Element element)` Constructs a new Message using an existing Element.
`Message(org.dom4j.Element element, boolean skipValidation)` Constructs a new Message using an existing Element.

Method Summary
`org.dom4j.Element` | `addChildElement(String name, String namespace)` Adds a new child element to this packet with the given name and namespace.
`Message` | `createCopy()` Returns a deep copy of this Message.
`String` | `getBody()` Returns the body of this message or `null` if there is no body.
`org.dom4j.Element` | `getChildElement(String name, String namespace)` Returns the first child element of this packet that matches the given name and namespace.
`String` | `getSubject()` Returns the subject of this message or `null` if there is no subject..
`String` | `getThread()` Returns the thread value of this message, an identifier that is used for tracking a conversation thread ("instant messaging session") between two entities.
`Message.Type` | `getType()` Returns the type of this message
`void` | `setBody(String body)` Sets the body of this message.
`void` | `setSubject(String subject)` Sets the subject of this message.
`void` | `setThread(String thread)` Sets the thread value of this message, an identifier that is used for tracking a conversation thread ("instant messaging session") between two entities.
`void` | `setType(Message.Type type)` Sets the type of this message.

Methods inherited from class org.xmpp.packet.Packet
`addExtension, deleteExtension, getElement, getError, getExtension, getFrom, getID, getTo, setError, setError, setFrom, setFrom, setID, setTo, setTo, toString, toXML`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### Message

    public Message()

  Constructs a new Message.

### Message

    public Message(org.dom4j.Element element)

  Constructs a new Message using an existing Element. This is useful for parsing incoming message Elements into Message objects.

  Parameters:
    `element` - the message Element.

### Message

    public Message(org.dom4j.Element element,
                   boolean skipValidation)

  Constructs a new Message using an existing Element. This is useful for parsing incoming message Elements into Message objects. Stringprep validation on the TO address can be disabled. The FROM address will not be validated since the server is the one that sets that value.

  Parameters:
    `element` - the message Element.
    `skipValidation` - true if stringprep should not be applied to the TO address.

Method Detail

### getType

    public Message.Type getType()

  Returns the type of this message

  Returns:
    the message type.
  See Also:
    `Message.Type`

### setType

    public void setType(Message.Type type)

  Sets the type of this message.

  Parameters:
    `type` - the message type.
  See Also:
    `Message.Type`

### getSubject

    public String getSubject()

  Returns the subject of this message or `null` if there is no subject..

  Returns:
    the subject.

### setSubject

    public void setSubject(String subject)

  Sets the subject of this message.

  Parameters:
    `subject` - the subject.

### getBody

    public String getBody()

  Returns the body of this message or `null` if there is no body.

  Returns:
    the body.

### setBody

    public void setBody(String body)

  Sets the body of this message.

  Parameters:
    `body` - the body.

### getThread

    public String getThread()

  Returns the thread value of this message, an identifier that is used for tracking a conversation thread ("instant messaging session") between two entities. If the thread is not set, `null` will be returned.

  Returns:
    the thread value.

### setThread

    public void setThread(String thread)

  Sets the thread value of this message, an identifier that is used for tracking a conversation thread ("instant messaging session") between two entities.

  Parameters:
    `thread` - thread value.

### getChildElement

    public org.dom4j.Element getChildElement(String name,
                                             String namespace)

  Returns the first child element of this packet that matches the given name and namespace. If no matching element is found, `null` will be returned. This is a convenience method to avoid manipulating this underlying packet's Element instance directly.

  Child elements in extended namespaces are used to extend the features of XMPP. Examples include a "user is typing" indicator and invitations to group chat rooms. Although any valid XML can be included in a child element in an extended namespace, many common features have been standardized as Jabber Enhancement Proposals (JEPs).

  Parameters:
    `name` - the element name.
    `namespace` - the element namespace.
  Returns:
    the first matching child element, or `null` if there is no matching child element.

### addChildElement

    public org.dom4j.Element addChildElement(String name,
                                             String namespace)

  Adds a new child element to this packet with the given name and namespace. The newly created Element is returned. This is a convenience method to avoid manipulating this underlying packet's Element instance directly.

  Child elements in extended namespaces are used to extend the features of XMPP. Examples include a "user is typing" indicator and invitations to group chat rooms. Although any valid XML can be included in a child element in an extended namespace, many common features have been standardized as Jabber Enhancement Proposals (JEPs).

  Parameters:
    `name` - the element name.
    `namespace` - the element namespace.
  Returns:
    the newly created child element.

### createCopy

    public Message createCopy()

  Returns a deep copy of this Message.

  Specified by:
    `createCopy` in class `Packet`
  Returns:
    a deep copy of this Message.

Overview | Package | Class | Tree | Deprecated | Index | Help
| Openfire 3.4.3 Javadoc
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2003-2007 Jive Software.