Add CRUD operations for GuacacmoleConfigurations (#266), bump version to 0.8.0.

This commit is contained in:
Michael Jumper
2013-01-26 14:09:16 -08:00
committed by Michael Jumper
parent d13014a481
commit 6d64a3e161
2 changed files with 56 additions and 7 deletions

View File

@@ -5,7 +5,7 @@
<groupId>net.sourceforge.guacamole</groupId> <groupId>net.sourceforge.guacamole</groupId>
<artifactId>guacamole-ext</artifactId> <artifactId>guacamole-ext</artifactId>
<packaging>jar</packaging> <packaging>jar</packaging>
<version>0.7.0</version> <version>0.8.0</version>
<name>guacamole-ext</name> <name>guacamole-ext</name>
<url>http://guac-dev.org/</url> <url>http://guac-dev.org/</url>

View File

@@ -42,17 +42,18 @@ import net.sourceforge.guacamole.GuacamoleException;
import net.sourceforge.guacamole.protocol.GuacamoleConfiguration; import net.sourceforge.guacamole.protocol.GuacamoleConfiguration;
/** /**
* Provides means of retrieving a set of named GuacamoleConfigurations for a * Provides means of accessing and managing the available
* given Credentials object. * GuacamoleConfiguration objects and User objects. Access to each configuration
* and each user is limited by a given Credentials object.
* *
* @author Michael Jumper * @author Michael Jumper
*/ */
public interface AuthenticationProvider { public interface AuthenticationProvider {
/** /**
* Given an arbitrary credentials object, returns a Map containing all * Given an arbitrary Credentials object, returns a Map containing all
* configurations authorized by those credentials. The keys of this Map * GuacamoleConfigurations authorized by those credentials. The keys of
* are Strings which uniquely identify each configuration. * this Map are Strings which uniquely identify each configuration.
* *
* @param credentials The credentials to use to retrieve authorized * @param credentials The credentials to use to retrieve authorized
* configurations. * configurations.
@@ -62,7 +63,55 @@ public interface AuthenticationProvider {
* configurations. * configurations.
*/ */
Map<String, GuacamoleConfiguration> Map<String, GuacamoleConfiguration>
getAuthorizedConfigurations(Credentials credentials) getConfigurations(Credentials credentials)
throws GuacamoleException; throws GuacamoleException;
/**
* Adds the given GuacamoleConfiguration to the overall set of available
* GuacamoleConfigurations, using the given unique identifier and
* credentials.
*
* @param credentials The credentials to use when adding the given
* configuration.
* @param identifier The identifier to assign to the configuration.
* @param config The configuration to add.
* @throws GuacamoleException If an error occurs while adding the
* configuration, or if adding the configuration
* is not allowed.
*/
void addConfiguration(Credentials credentials, String identifier,
GuacamoleConfiguration config) throws GuacamoleException;
/**
* Updates the GuacamoleConfiguration having the given unique identifier
* with the data contained in the given GuacamoleConfiguration, using the
* given credentials.
*
* @param credentials The credentials to use when updating the configuration
* having the given identifier.
* @param identifier The identifier to use when locating the configuration
* to update.
* @param config The configuration to use when updating the stored
* configuration.
* @throws GuacamoleException If an error occurs while updating the
* configuration, or if updating the
* configuration is not allowed.
*/
void updateConfiguration(Credentials credentials, String identifier,
GuacamoleConfiguration config) throws GuacamoleException;
/**
* Removes the GuacamoleConfiguration having the given unique identifier,
* using the given credentials.
*
* @param credentials The credentials to use when removing the configuration
* having the given identifier.
* @param identifier The identifier of the configuration to remove.
* @throws GuacamoleException If an error occurs while removing the
* configuration, or if removing the
* configuration is not allowed.
*/
void removeConfiguration(Credentials credentials, String identifier)
throws GuacamoleException;
} }