Class Service
- All Implemented Interfaces:
org.freedesktop.dbus.interfaces.DBusInterface,Service
public class Service extends Messaging implements Service
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.freedesktop.secret.interfaces.Service
Service.CollectionChanged, Service.CollectionCreated, Service.CollectionDeleted -
Field Summary
Fields Modifier and Type Field Description static List<Class<? extends org.freedesktop.dbus.messages.DBusSignal>>signalsFields inherited from class org.freedesktop.secret.handlers.Messaging
connection, interfaceName, msg, objectPath, serviceName, sh -
Constructor Summary
Constructors Constructor Description Service(org.freedesktop.dbus.connections.impl.DBusConnection connection) -
Method Summary
Modifier and Type Method Description org.freedesktop.dbus.ObjectPathchangeLock(org.freedesktop.dbus.ObjectPath collection)Toggle the lock for a collection with a prompt.Pair<org.freedesktop.dbus.ObjectPath,org.freedesktop.dbus.ObjectPath>createCollection(Map<String,org.freedesktop.dbus.types.Variant> properties)Create a new collection with the specified properties.Pair<org.freedesktop.dbus.ObjectPath,org.freedesktop.dbus.ObjectPath>createCollection(Map<String,org.freedesktop.dbus.types.Variant> properties, String alias)Create a new collection with the specified properties.List<org.freedesktop.dbus.ObjectPath>getCollections()StringgetObjectPath()Map<org.freedesktop.dbus.ObjectPath,Secret>getSecrets(List<org.freedesktop.dbus.ObjectPath> items, org.freedesktop.dbus.ObjectPath session)Retrieve multiple secrets from different items.SessiongetSession()booleanisRemote()Pair<List<org.freedesktop.dbus.ObjectPath>,org.freedesktop.dbus.ObjectPath>lock(List<org.freedesktop.dbus.ObjectPath> objects)Lock the items.voidlockService()Lock the entire Secret Service API.Pair<org.freedesktop.dbus.types.Variant<byte[]>,org.freedesktop.dbus.ObjectPath>openSession(String algorithm, org.freedesktop.dbus.types.Variant input)Open a unique session for the caller application.org.freedesktop.dbus.ObjectPathreadAlias(String name)Get the collection with the given alias.Pair<List<org.freedesktop.dbus.ObjectPath>,List<org.freedesktop.dbus.ObjectPath>>searchItems(Map<String,String> attributes)Find items in any collection.voidsetAlias(String name, org.freedesktop.dbus.ObjectPath collection)Setup a collection alias.Pair<List<org.freedesktop.dbus.ObjectPath>,org.freedesktop.dbus.ObjectPath>unlock(List<org.freedesktop.dbus.ObjectPath> objects)Unlock the specified objects.Methods inherited from class org.freedesktop.secret.handlers.Messaging
getAllProperties, getConnection, getInterfaceName, getMessageHandler, getPath, getProperty, getServiceName, getSignalHandler, send, send, setProperty
-
Field Details
-
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:ServiceOpen a unique session for the caller application.- Specified by:
openSessionin interfaceService- 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:ServiceCreate a new collection with the specified properties.- Specified by:
createCollectionin interfaceService- 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:ServiceCreate a new collection with the specified properties.- Specified by:
createCollectionin interfaceService- 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:ServiceFind items in any collection.- Specified by:
searchItemsin interfaceService- 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:ServiceUnlock the specified objects.- Specified by:
unlockin interfaceService- 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:ServiceLock the items. -
lockService
public void lockService()Description copied from interface:ServiceLock the entire Secret Service API.
See Also:
Service.lock(List objects)
Service.unlock(List objects)
InternalUnsupportedGuiltRiddenInterface.unlockWithMasterPassword(DBusPath collection, Secret master)- Specified by:
lockServicein interfaceService
-
changeLock
public org.freedesktop.dbus.ObjectPath changeLock(org.freedesktop.dbus.ObjectPath collection)Description copied from interface:ServiceToggle the lock for a collection with a prompt.- Specified by:
changeLockin interfaceService- 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:ServiceRetrieve multiple secrets from different items.- Specified by:
getSecretsin interfaceService- 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
Description copied from interface:ServiceGet the collection with the given alias.- Specified by:
readAliasin interfaceService- 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
Description copied from interface:ServiceSetup a collection alias.- Specified by:
setAliasin interfaceService- 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
- Specified by:
getCollectionsin interfaceService- Returns:
- A list of present collections.
-
isRemote
public boolean isRemote()- Specified by:
isRemotein interfaceorg.freedesktop.dbus.interfaces.DBusInterface
-
getObjectPath
- Specified by:
getObjectPathin interfaceorg.freedesktop.dbus.interfaces.DBusInterface- Overrides:
getObjectPathin classMessaging
-
getSession
-