Class BookmarkManager
- java.lang.Object
-
- org.jivesoftware.smackx.bookmarks.BookmarkManager
-
public final class BookmarkManager extends Object
Provides methods to manage bookmarks in accordance with XEP-0048. Methods for managing URLs and Conferences are provided. It should be noted that some extensions have been made to the XEP. There is an attribute on URLs that marks a url as a news feed and also a sub-element can be added to either a URL or conference indicated that it is shared amongst all users on a server.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addBookmarkedConference(String name, EntityBareJid jid, boolean isAutoJoin, Resourcepart nickname, String password)
Adds or updates a conference in the bookmarks.void
addBookmarkedURL(String URL, String name, boolean isRSS)
Adds a new url or updates an already existing url in the bookmarks.List<BookmarkedConference>
getBookmarkedConferences()
Returns all currently bookmarked conferences.List<BookmarkedURL>
getBookmarkedURLs()
Returns an unmodifiable collection of all bookmarked urls.static BookmarkManager
getBookmarkManager(XMPPConnection connection)
Returns the BookmarkManager for a connection, if it doesn't exist it is created.boolean
isSupported()
Check if the service supports bookmarks using private data.void
removeBookmarkedConference(EntityBareJid jid)
Removes a conference from the bookmarks.void
removeBookmarkedURL(String bookmarkURL)
Removes a url from the bookmarks.
-
-
-
Method Detail
-
getBookmarkManager
public static BookmarkManager getBookmarkManager(XMPPConnection connection)
Returns the BookmarkManager for a connection, if it doesn't exist it is created.- Parameters:
connection
- the connection for which the manager is desired.- Returns:
- Returns the BookmarkManager for a connection, if it doesn't exist it is created.
- Throws:
IllegalArgumentException
- when the connection is null.
-
getBookmarkedConferences
public List<BookmarkedConference> getBookmarkedConferences() throws SmackException.NoResponseException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException
Returns all currently bookmarked conferences.- Returns:
- returns all currently bookmarked conferences
- Throws:
XMPPException.XMPPErrorException
- if there was an XMPP error returned.SmackException.NoResponseException
- if there was no response from the remote entity.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.- See Also:
BookmarkedConference
-
addBookmarkedConference
public void addBookmarkedConference(String name, EntityBareJid jid, boolean isAutoJoin, Resourcepart nickname, String password) throws SmackException.NoResponseException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException
Adds or updates a conference in the bookmarks.- Parameters:
name
- the name of the conferencejid
- the jid of the conferenceisAutoJoin
- whether or not to join this conference automatically on loginnickname
- the nickname to use for the user when joining the conferencepassword
- the password to use for the user when joining the conference- Throws:
XMPPException.XMPPErrorException
- thrown when there is an issue retrieving the current bookmarks from the server.SmackException.NoResponseException
- if there was no response from the server.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.
-
removeBookmarkedConference
public void removeBookmarkedConference(EntityBareJid jid) throws SmackException.NoResponseException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException
Removes a conference from the bookmarks.- Parameters:
jid
- the jid of the conference to be removed.- Throws:
XMPPException.XMPPErrorException
- thrown when there is a problem with the connection attempting to retrieve the bookmarks or persist the bookmarks.SmackException.NoResponseException
- if there was no response from the server.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.IllegalArgumentException
- thrown when the conference being removed is a shared conference
-
getBookmarkedURLs
public List<BookmarkedURL> getBookmarkedURLs() throws SmackException.NoResponseException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException
Returns an unmodifiable collection of all bookmarked urls.- Returns:
- returns an unmodifiable collection of all bookmarked urls.
- Throws:
XMPPException.XMPPErrorException
- thrown when there is a problem retriving bookmarks from the server.SmackException.NoResponseException
- if there was no response from the server.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.
-
addBookmarkedURL
public void addBookmarkedURL(String URL, String name, boolean isRSS) throws SmackException.NoResponseException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException
Adds a new url or updates an already existing url in the bookmarks.- Parameters:
URL
- the url of the bookmarkname
- the name of the bookmarkisRSS
- whether or not the url is an rss feed- Throws:
XMPPException.XMPPErrorException
- thrown when there is an error retriving or saving bookmarks from or to the serverSmackException.NoResponseException
- if there was no response from the server.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.
-
removeBookmarkedURL
public void removeBookmarkedURL(String bookmarkURL) throws SmackException.NoResponseException, XMPPException.XMPPErrorException, SmackException.NotConnectedException, InterruptedException
Removes a url from the bookmarks.- Parameters:
bookmarkURL
- the url of the bookmark to remove- Throws:
XMPPException.XMPPErrorException
- thrown if there is an error retriving or saving bookmarks from or to the server.SmackException.NoResponseException
- if there was no response from the server.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.
-
isSupported
public boolean isSupported() throws SmackException.NoResponseException, SmackException.NotConnectedException, XMPPException.XMPPErrorException, InterruptedException
Check if the service supports bookmarks using private data.- Returns:
- true if the service supports private data, false otherwise.
- Throws:
SmackException.NoResponseException
- if there was no response from the remote entity.SmackException.NotConnectedException
- if the XMPP connection is not connected.InterruptedException
- if the calling thread was interrupted.XMPPException.XMPPErrorException
- if there was an XMPP error returned.- Since:
- 4.2
- See Also:
PrivateDataManager.isSupported()
-
-