Package org.jivesoftware.smackx.mood
Class MoodManager
- java.lang.Object
-
- org.jivesoftware.smack.Manager
-
- org.jivesoftware.smackx.mood.MoodManager
-
public final class MoodManager extends Manager
Entry point for Smacks API for XEP-0107: User Mood. To set a mood, please use one of thesetMood(Mood)
methods. This will publish the users mood to a pubsub node.
In order to get updated about other users moods, register aPepEventListener
ataddMoodListener(PepEventListener)
. That listener will get updated about any incoming mood updates of contacts.
To stop publishing the users mood, refer toclearMood()
.
It is also possible to addMoodElement
s toMessage
s by usingaddMoodToMessage(Message, Mood)
.
The API can be extended with custom mood concretisations by extendingMoodConcretisation
and registeringMoodConcretisationProvider
s usingProviderManager.addExtensionProvider(String, String, Object)
.
An example of how this can be done can be found in the MoodConcretisationTest in the test package.- See Also:
- XEP-0107: User Mood
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addMoodListener(PepEventListener<MoodElement> listener)
static void
addMoodToMessage(Message message, Mood mood)
static void
addMoodToMessage(Message message, Mood mood, MoodConcretisation concretisation)
void
clearMood()
static MoodManager
getInstanceFor(XMPPConnection connection)
boolean
removeMoodListener(PepEventListener<MoodElement> listener)
void
setMood(Mood mood)
void
setMood(Mood mood, String text)
void
setMood(Mood mood, MoodConcretisation concretisation)
void
setMood(Mood mood, MoodConcretisation concretisation, String text)
-
Methods inherited from class org.jivesoftware.smack.Manager
connection, getAuthenticatedConnectionOrThrow, schedule, schedule, scheduleBlocking
-
-
-
-
Field Detail
-
MOOD_NODE
public static final String MOOD_NODE
- See Also:
- Constant Field Values
-
-
Method Detail
-
getInstanceFor
public static MoodManager getInstanceFor(XMPPConnection connection)
-
setMood
public void setMood(Mood mood) throws InterruptedException, SmackException.NotLoggedInException, SmackException.NoResponseException, SmackException.NotConnectedException, XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException
-
setMood
public void setMood(Mood mood, String text) throws InterruptedException, SmackException.NotLoggedInException, SmackException.NoResponseException, SmackException.NotConnectedException, XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException
-
setMood
public void setMood(Mood mood, MoodConcretisation concretisation) throws InterruptedException, SmackException.NotLoggedInException, SmackException.NoResponseException, SmackException.NotConnectedException, XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException
-
setMood
public void setMood(Mood mood, MoodConcretisation concretisation, String text) throws InterruptedException, SmackException.NotLoggedInException, SmackException.NoResponseException, SmackException.NotConnectedException, XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException
-
clearMood
public void clearMood() throws InterruptedException, SmackException.NotLoggedInException, SmackException.NoResponseException, SmackException.NotConnectedException, XMPPException.XMPPErrorException, PubSubException.NotALeafNodeException
-
addMoodToMessage
public static void addMoodToMessage(Message message, Mood mood)
-
addMoodToMessage
public static void addMoodToMessage(Message message, Mood mood, MoodConcretisation concretisation)
-
addMoodListener
public boolean addMoodListener(PepEventListener<MoodElement> listener)
-
removeMoodListener
public boolean removeMoodListener(PepEventListener<MoodElement> listener)
-
-