Class DirectoryRosterStore

java.lang.Object
org.jivesoftware.smack.roster.rosterstore.DirectoryRosterStore
All Implemented Interfaces:
RosterStore

public final class DirectoryRosterStore extends Object implements RosterStore
Stores roster entries as specified by RFC 6121 for roster versioning in a set of files.
  • Method Details

    • init

      public static DirectoryRosterStore init(File baseDir)
      Creates a new roster store on disk.
      Parameters:
      baseDir - TODO javadoc me please The directory to create the store in. The directory should be empty
      Returns:
      A DirectoryRosterStore instance if successful, null else.
    • open

      public static DirectoryRosterStore open(File baseDir)
      Opens a roster store.
      Parameters:
      baseDir - TODO javadoc me please The directory containing the roster store.
      Returns:
      A DirectoryRosterStore instance if successful, null else.
    • getEntries

      Description copied from interface: RosterStore
      This method returns a list of all roster items contained in this store. If there was an error while loading the store, then null is returned.
      Specified by:
      getEntries in interface RosterStore
      Returns:
      List of RosterEntry or null.
    • getEntry

      public RosterPacket.Item getEntry(Jid bareJid)
      Description copied from interface: RosterStore
      This method returns the roster item in this store for the given JID.
      Specified by:
      getEntry in interface RosterStore
      Parameters:
      bareJid - The bare JID of the RosterEntry
      Returns:
      The RosterEntry which belongs to that user
    • getRosterVersion

      Description copied from interface: RosterStore
      This method returns the version number as specified by the "ver" attribute of the local store. For a fresh store, this MUST be the empty string.
      Specified by:
      getRosterVersion in interface RosterStore
      Returns:
      local roster version
    • addEntry

      public boolean addEntry(RosterPacket.Item item, String version)
      Description copied from interface: RosterStore
      This method stores a new roster entry in this store or updates an existing one.
      Specified by:
      addEntry in interface RosterStore
      Parameters:
      item - the entry to store
      version - the new roster version
      Returns:
      True if successful
    • removeEntry

      public boolean removeEntry(Jid bareJid, String version)
      Description copied from interface: RosterStore
      Removes an entry from the store.
      Specified by:
      removeEntry in interface RosterStore
      Parameters:
      bareJid - The bare JID of the entry to be removed
      version - the new roster version
      Returns:
      True if successful
    • resetEntries

      public boolean resetEntries(Collection<RosterPacket.Item> items, String version)
      Description copied from interface: RosterStore
      This method updates the store so that it contains only the given entries.
      Specified by:
      resetEntries in interface RosterStore
      Parameters:
      items - the entries to store
      version - the new roster version
      Returns:
      True if successful
    • resetStore

      public void resetStore()
      Description copied from interface: RosterStore
      Reset the store by removing all entries and setting the version to the empty String.
      Specified by:
      resetStore in interface RosterStore