Class AMPExtension
- java.lang.Object
-
- org.jivesoftware.smackx.amp.packet.AMPExtension
-
- All Implemented Interfaces:
Element
,ExtensionElement
,FullyQualifiedElement
,NamedElement
,XmlLangElement
public class AMPExtension extends Object implements ExtensionElement
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
AMPExtension.Action
amp action attribute.static interface
AMPExtension.Condition
Interface for defining XEP-0079 Conditions and their values.static class
AMPExtension.Rule
XEP-0079 Rule element.static class
AMPExtension.Status
amp notification status as defined by XEP-0079.
-
Constructor Summary
Constructors Constructor Description AMPExtension()
Create a new amp request extension to be used with outgoing message.AMPExtension(String from, String to, AMPExtension.Status status)
Create a new AMPExtension instance with defined from, to and status attributes.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addRule(AMPExtension.Rule rule)
Adds a rule to the amp element.String
getElementName()
Returns the XML element name of the extension sub-packet root element.String
getFrom()
Get the JID that triggered this AMP callback.String
getNamespace()
Returns the XML namespace of the extension sub-packet root element.List<AMPExtension.Rule>
getRules()
Returns a unmodifiable List of the rules in the packet.int
getRulesCount()
Returns a count of the rules in the AMP packet.AMPExtension.Status
getStatus()
Status of this amp notification.String
getTo()
Get the receiver of this AMP receipt.boolean
isPerHop()
Returns true is this ruleset is "per-hop".void
setPerHop(boolean enabled)
Sets this amp ruleset to be "per-hop".String
toXML(XmlEnvironment enclosingNamespace)
Returns the XML representation of a XHTML extension according the specification.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jivesoftware.smack.packet.FullyQualifiedElement
getLanguage, getQName
-
-
-
-
Field Detail
-
NAMESPACE
public static final String NAMESPACE
- See Also:
- Constant Field Values
-
ELEMENT
public static final String ELEMENT
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AMPExtension
public AMPExtension(String from, String to, AMPExtension.Status status)
Create a new AMPExtension instance with defined from, to and status attributes. Used to create incoming packets.- Parameters:
from
- jid that triggered this amp callback.to
- receiver of this amp receipt.status
- status of this amp receipt.
-
AMPExtension
public AMPExtension()
Create a new amp request extension to be used with outgoing message.
-
-
Method Detail
-
getFrom
public String getFrom()
Get the JID that triggered this AMP callback.- Returns:
- jid that triggered this amp callback.
-
getTo
public String getTo()
Get the receiver of this AMP receipt.- Returns:
- receiver of this amp receipt.
-
getStatus
public AMPExtension.Status getStatus()
Status of this amp notification.- Returns:
- Status for this amp
-
getRules
public List<AMPExtension.Rule> getRules()
Returns a unmodifiable List of the rules in the packet.- Returns:
- a unmodifiable List of the rules in the packet.
-
addRule
public void addRule(AMPExtension.Rule rule)
Adds a rule to the amp element. Amp can have any number of rules.- Parameters:
rule
- the rule to add.
-
getRulesCount
public int getRulesCount()
Returns a count of the rules in the AMP packet.- Returns:
- the number of rules in the AMP packet.
-
setPerHop
public void setPerHop(boolean enabled)
Sets this amp ruleset to be "per-hop".- Parameters:
enabled
- true if "per-hop" should be enabled
-
isPerHop
public boolean isPerHop()
Returns true is this ruleset is "per-hop".- Returns:
- true is this ruleset is "per-hop".
-
getElementName
public String getElementName()
Returns the XML element name of the extension sub-packet root element. Always returns "amp"- Specified by:
getElementName
in interfaceNamedElement
- Returns:
- the XML element name of the stanza extension.
-
getNamespace
public String getNamespace()
Returns the XML namespace of the extension sub-packet root element. According the specification the namespace is always "http://jabber.org/protocol/xhtml-im"- Specified by:
getNamespace
in interfaceFullyQualifiedElement
- Returns:
- the XML namespace of the stanza extension.
-
toXML
public String toXML(XmlEnvironment enclosingNamespace)
Returns the XML representation of a XHTML extension according the specification.
-
-