Class Time
- java.lang.Object
-
- org.jivesoftware.smack.packet.Stanza
-
- org.jivesoftware.smack.packet.IQ
-
- org.jivesoftware.smackx.time.packet.Time
-
- All Implemented Interfaces:
Element,IqView,NamedElement,StanzaView,TopLevelStreamElement,XmlElement,XmlLangElement,TimeView
public class Time extends IQ implements TimeView
A Time IQ packet, which is used by XMPP clients to exchange their respective local times. Clients that wish to fully support the entity time protocol should register a PacketListener for incoming time requests that then respond with the local time.- See Also:
- XEP-202
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.jivesoftware.smack.packet.IQ
IQ.IQChildElementXmlStringBuilder, IQ.ResponseType, IQ.Type
-
-
Field Summary
Fields Modifier and Type Field Description static StringELEMENTstatic StringNAMESPACE-
Fields inherited from class org.jivesoftware.smack.packet.IQ
IQ_ELEMENT, QUERY_ELEMENT
-
Fields inherited from class org.jivesoftware.smack.packet.Stanza
DEFAULT_LANGUAGE, ITEM, language, TEXT
-
-
Constructor Summary
Constructors Constructor Description Time(TimeBuilder timeBuilder)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static TimeBuilderbuilder(String stanzaId)static TimeBuilderbuilder(IqData iqData)static TimeBuilderbuilder(XMPPConnection connection)static TimeBuilderbuilder(Time timeRequest)static TimeBuilderbuilder(Time timeRequest, Calendar calendar)protected IQ.IQChildElementXmlStringBuildergetIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder buf)This method must be overwritten by IQ subclasses to create their child content.DategetTime()Returns the local time ornullif the time hasn't been set.StringgetTzo()Returns the time zone.StringgetUtc()Returns the time as a UTC formatted String using the format CCYY-MM-DDThh:mm:ssZ.-
Methods inherited from class org.jivesoftware.smack.packet.IQ
createErrorResponse, createErrorResponse, createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementQName, getChildElementXML, getElementName, getType, setType, toString, toXML
-
Methods inherited from class org.jivesoftware.smack.packet.Stanza
addCommonAttributes, addExtension, addExtensions, appendErrorIfExists, getDefaultLanguage, getError, getExtension, getExtension, getExtension, getExtensionElement, getExtensions, getExtensions, getExtensions, getExtensions, getExtensionsMap, getFrom, getLanguage, getNamespace, getStanzaId, getTo, hasExtension, hasExtension, hasStanzaIdSet, logCommonAttributes, overrideExtension, removeExtension, removeExtension, setError, setError, setFrom, setLanguage, setNewStanzaId, setStanzaId, setStanzaId, setTo, throwIfNoStanzaId
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jivesoftware.smack.packet.IqView
getType, isRequestIQ, isResponseIQ
-
Methods inherited from interface org.jivesoftware.smack.packet.StanzaView
getError, getExtension, getExtension, getExtensions, getExtensions, getExtensions, getFrom, getStanzaId, getTo, hasExtension, hasExtension, hasExtension
-
Methods inherited from interface org.jivesoftware.smack.packet.XmlElement
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
-
Time
public Time(TimeBuilder timeBuilder)
-
-
Method Detail
-
getTime
public Date getTime()
Returns the local time ornullif the time hasn't been set.- Returns:
- the local time.
-
getUtc
public String getUtc()
Description copied from interface:TimeViewReturns the time as a UTC formatted String using the format CCYY-MM-DDThh:mm:ssZ.
-
getIQChildElementBuilder
protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder buf)
Description copied from class:IQThis method must be overwritten by IQ subclasses to create their child content. It is important you don't use the builder to add the final end tag. This will be done automatically byIQ.IQChildElementXmlStringBuilderafter eventual existingExtensionElements have been added.For example to create an IQ with a extra attribute and an additional child element
the body of the<iq to='foo@example.org' id='123'> <bar xmlns='example:bar' extraAttribute='blaz'> <extraElement>elementText</extraElement> </bar> </iq>getIQChildElementBuilderlooks like
If your IQ only contains attributes and no child elements, i.e. it can be represented as empty element, then you can mark it as such.// The builder 'xml' will already have the child element and the 'xmlns' attribute added // So the current builder state is "<bar xmlns='example:bar'" xml.attribute("extraAttribute", "blaz"); xml.rightAngleBracket(); xml.element("extraElement", "elementText"); // Do not close the 'bar' attribute by calling xml.closeElement('bar')xml.attribute("myAttribute", "myAttributeValue"); xml.setEmptyElement();If your IQ does not contain any attributes or child elements (besidesExtensionElements), consider sub-classingSimpleIQinstead.- Specified by:
getIQChildElementBuilderin classIQ- Parameters:
buf- a pre-created builder which already has the child element and the 'xmlns' attribute set.- Returns:
- the build to create the IQ child content.
-
builder
public static TimeBuilder builder(XMPPConnection connection)
-
builder
public static TimeBuilder builder(IqData iqData)
-
builder
public static TimeBuilder builder(String stanzaId)
-
builder
public static TimeBuilder builder(Time timeRequest, Calendar calendar)
-
builder
public static TimeBuilder builder(Time timeRequest)
-
-