Class Service
- java.lang.Object
-
- org.freedesktop.secret.handlers.Messaging
-
- org.freedesktop.secret.interfaces.Service
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classService.CollectionChangedstatic classService.CollectionCreatedstatic classService.CollectionDeleted
-
Field Summary
-
Fields inherited from class org.freedesktop.secret.handlers.Messaging
connection, interfaceName, msg, objectPath, serviceName, sh
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract org.freedesktop.dbus.ObjectPathchangeLock(org.freedesktop.dbus.ObjectPath collection)Toggle the lock for a collection with a prompt.abstract PaircreateCollection(Map<String,org.freedesktop.dbus.types.Variant> properties)Create a new collection with the specified properties.abstract PaircreateCollection(Map<String,org.freedesktop.dbus.types.Variant> properties, String alias)Create a new collection with the specified properties.abstract List<org.freedesktop.dbus.ObjectPath>getCollections()abstract Map<org.freedesktop.dbus.ObjectPath,Secret>getSecrets(List<org.freedesktop.dbus.ObjectPath> items, org.freedesktop.dbus.ObjectPath session)Retrieve multiple secrets from different items.abstract Pair<List<org.freedesktop.dbus.ObjectPath>,org.freedesktop.dbus.ObjectPath>lock(List<org.freedesktop.dbus.ObjectPath> objects)Lock the items.abstract voidlockService()Lock the entire Secret Service API.abstract 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.abstract org.freedesktop.dbus.ObjectPathreadAlias(String name)Get the collection with the given alias.abstract Pair<List<org.freedesktop.dbus.ObjectPath>,List<org.freedesktop.dbus.ObjectPath>>searchItems(Map<String,String> attributes)Find items in any collection.abstract voidsetAlias(String name, org.freedesktop.dbus.ObjectPath collection)Setup a collection alias.abstract 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, getObjectPath, getPath, getProperty, getServiceName, getSignalHandler, send, send, setProperty
-
-
-
-
Method Detail
-
openSession
public abstract 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.- 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 abstract Pair createCollection(Map<String,org.freedesktop.dbus.types.Variant> properties, String alias)
Create a new collection with the specified properties.- 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 abstract Pair createCollection(Map<String,org.freedesktop.dbus.types.Variant> properties)
Create a new collection with the specified properties.- 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 abstract Pair<List<org.freedesktop.dbus.ObjectPath>,List<org.freedesktop.dbus.ObjectPath>> searchItems(Map<String,String> attributes)
Find items in any collection.- 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 abstract Pair<List<org.freedesktop.dbus.ObjectPath>,org.freedesktop.dbus.ObjectPath> unlock(List<org.freedesktop.dbus.ObjectPath> objects)
Unlock the specified objects.- 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 abstract Pair<List<org.freedesktop.dbus.ObjectPath>,org.freedesktop.dbus.ObjectPath> lock(List<org.freedesktop.dbus.ObjectPath> objects)
Lock the items.- 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 abstract void lockService()
Lock the entire Secret Service API.
See Also:
lock(List objects)
unlock(List objects)
InternalUnsupportedGuiltRiddenInterface.unlockWithMasterPassword(DBusPath collection, Secret master)
-
changeLock
public abstract org.freedesktop.dbus.ObjectPath changeLock(org.freedesktop.dbus.ObjectPath collection)
Toggle the lock for a collection with a prompt.- Parameters:
collection- Path of the collection.- Returns:
- Path of the collection
See Also:
InternalUnsupportedGuiltRiddenInterface.changeWithPrompt(DBusPath collection)
-
getSecrets
public abstract Map<org.freedesktop.dbus.ObjectPath,Secret> getSecrets(List<org.freedesktop.dbus.ObjectPath> items, org.freedesktop.dbus.ObjectPath session)
Retrieve multiple secrets from different items.- 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 abstract org.freedesktop.dbus.ObjectPath readAlias(String name)
Get the collection with the given alias.- 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 abstract void setAlias(String name, org.freedesktop.dbus.ObjectPath collection)
Setup a collection alias.- 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 abstract List<org.freedesktop.dbus.ObjectPath> getCollections()
- Returns:
- A list of present collections.
-
-