Class Service

All Implemented Interfaces:
org.freedesktop.dbus.interfaces.DBusInterface, Service

public class Service
extends Messaging
implements Service
  • Field Details

    • signals

      public static final List<Class<? extends org.freedesktop.dbus.messages.DBusSignal>> signals
  • Constructor Details

    • Service

      public Service​(org.freedesktop.dbus.connections.impl.DBusConnection connection)
  • Method Details

    • openSession

      public Pair<org.freedesktop.dbus.types.Variant<byte[]>,​org.freedesktop.dbus.ObjectPath> openSession​(String algorithm, org.freedesktop.dbus.types.Variant input)
      Description copied from interface: Service
      Open a unique session for the caller application.
      Specified by:
      openSession in interface Service
      Parameters:
      algorithm - The algorithm the caller wishes to use.
      input - Input arguments for the algorithm.
      Returns:
      Pair<output, result>

      output — Output of the session algorithm negotiation.

      result — The object path of the session, if session was created.
      See Also:
      Pair, Variant, ObjectPath
    • createCollection

      public Pair<org.freedesktop.dbus.ObjectPath,​org.freedesktop.dbus.ObjectPath> createCollection​(Map<String,​org.freedesktop.dbus.types.Variant> properties, String alias)
      Description copied from interface: Service
      Create a new collection with the specified properties.
      Specified by:
      createCollection in interface Service
      Parameters:
      properties - Properties for the new collection. This allows setting the new collection's properties upon its creation. All READWRITE properties are usable. Specify the property names in full interface.Property form.

      Example for properties:

      properties = { "org.freedesktop.Secret.Collection.Label": "MyCollection" }

      alias - If creating this connection for a well known alias then a string like "default". If an collection with this well-known alias already exists, then that collection will be returned instead of creating a new collection. Any readwrite properties provided to this function will be set on the collection.

      Set this to an empty string if the new collection should not be associated with a well known alias.
      Returns:
      Pair<collection, prompt>

      collection — The new collection object, or '/' if prompting is necessary.

      prompt — A prompt object if prompting is necessary, or '/' if no prompt was needed.
      See Also:
      Pair, Variant, ObjectPath
    • createCollection

      public Pair<org.freedesktop.dbus.ObjectPath,​org.freedesktop.dbus.ObjectPath> createCollection​(Map<String,​org.freedesktop.dbus.types.Variant> properties)
      Description copied from interface: Service
      Create a new collection with the specified properties.
      Specified by:
      createCollection in interface Service
      Parameters:
      properties - Properties for the new collection. This allows setting the new collection's properties upon its creation. All READWRITE properties are usable. Specify the property names in full interface.Property form.

      Example for properties:

      properties = { "org.freedesktop.Secret.Collection.Label": "MyCollection" }

      Returns:
      Pair<collection, prompt>

      collection — The new collection object, or '/' if prompting is necessary.

      prompt — A prompt object if prompting is necessary, or '/' if no prompt was needed.
      See Also:
      Pair, Variant, ObjectPath
    • searchItems

      public Pair<List<org.freedesktop.dbus.ObjectPath>,​List<org.freedesktop.dbus.ObjectPath>> searchItems​(Map<String,​String> attributes)
      Description copied from interface: Service
      Find items in any collection.
      Specified by:
      searchItems in interface Service
      Parameters:
      attributes - Find secrets in any collection.

      Example: { "Attribute1": "Value1", "Attribute2": "Value2" }

      Note: Please note that there is a distinction between the terms Property, which refers to D-Bus properties of an object, and Attribute, which refers to one of a secret item's string-valued attributes.

      Returns:
      Pair<unlocked, locked>

      unlocked — Items found.

      locked — Items found that require authentication.
      See Also:
      Pair, ObjectPath
    • unlock

      public Pair<List<org.freedesktop.dbus.ObjectPath>,​org.freedesktop.dbus.ObjectPath> unlock​(List<org.freedesktop.dbus.ObjectPath> objects)
      Description copied from interface: Service
      Unlock the specified objects.
      Specified by:
      unlock in interface Service
      Parameters:
      objects - Objects to unlock.
      Returns:
      Pair<unlocked, prompt>

      unlocked — Objects that were unlocked without a prompt.

      prompt — A prompt object which can be used to unlock the remaining objects, or the special value '/' when no prompt is necessary.
      See Also:
      Pair, ObjectPath
    • lock

      public Pair<List<org.freedesktop.dbus.ObjectPath>,​org.freedesktop.dbus.ObjectPath> lock​(List<org.freedesktop.dbus.ObjectPath> objects)
      Description copied from interface: Service
      Lock the items.
      Specified by:
      lock in interface Service
      Parameters:
      objects - Objects to lock.
      Returns:
      Pair<locked, prompt>

      locked — Objects that were locked without a prompt.

      prompt — A prompt to lock the objects, or the special value '/' when no prompt is necessary.
      See Also:
      Pair
    • lockService

      public void lockService()
      Description copied from interface: Service
      Specified by:
      lockService in interface Service
    • changeLock

      public org.freedesktop.dbus.ObjectPath changeLock​(org.freedesktop.dbus.ObjectPath collection)
      Description copied from interface: Service
      Toggle the lock for a collection with a prompt.
      Specified by:
      changeLock in interface Service
      Parameters:
      collection - Path of the collection.
      Returns:
      Path of the collection
      See Also:
      InternalUnsupportedGuiltRiddenInterface.changeWithPrompt(DBusPath collection)
    • getSecrets

      public Map<org.freedesktop.dbus.ObjectPath,​Secret> getSecrets​(List<org.freedesktop.dbus.ObjectPath> items, org.freedesktop.dbus.ObjectPath session)
      Description copied from interface: Service
      Retrieve multiple secrets from different items.
      Specified by:
      getSecrets in interface Service
      Parameters:
      items - Items to get secrets for.
      session - The session to use to encode the secrets.
      Returns:
      secrets — Secrets for the items.
      See Also:
      Secret, ObjectPath
    • readAlias

      public org.freedesktop.dbus.ObjectPath readAlias​(String name)
      Description copied from interface: Service
      Get the collection with the given alias.
      Specified by:
      readAlias in interface Service
      Parameters:
      name - An alias, such as 'default'.
      Returns:
      collection — The collection or the the path '/' if no such collection exists.
      See Also:
      Static.ObjectPaths, ObjectPath, Collection
    • setAlias

      public void setAlias​(String name, org.freedesktop.dbus.ObjectPath collection)
      Description copied from interface: Service
      Setup a collection alias.
      Specified by:
      setAlias in interface Service
      Parameters:
      name - An alias, such as 'default'.
      collection - The collection to make the alias point to. To remove an alias use the special value '/'.
      See Also:
      ObjectPath, Collection
    • getCollections

      public List<org.freedesktop.dbus.ObjectPath> getCollections()
      Specified by:
      getCollections in interface Service
      Returns:
      A list of present collections.
    • isRemote

      public boolean isRemote()
      Specified by:
      isRemote in interface org.freedesktop.dbus.interfaces.DBusInterface
    • getObjectPath

      public String getObjectPath()
      Specified by:
      getObjectPath in interface org.freedesktop.dbus.interfaces.DBusInterface
      Overrides:
      getObjectPath in class Messaging
    • getSession

      public Session getSession()