
nl.tweeenveertig.openstack.model.Client Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of joss Show documentation
Show all versions of joss Show documentation
Java Client library for OpenStack Storage (Swift)
package nl.tweeenveertig.openstack.model;
/**
* The authenticate call creates a new Account object, which allows you to interact with the Object Store.
* Note that security tokens last for a maximum of 24 hours, after which a new one must be fetched.
*
* - Instantiate ClientImpl for the real client to the Object Store.
* - Instantiate ClientMock for the client with mocked access, simulated by holding objects in-memory
*
* Call {@link #authenticate(String, String, String, String) authenticate} to get an {@link Account} which allows
* you to start operating on the Object Store.
* @author Robert Bor
*/
public interface Client {
/**
* Calls the identity module of the OpenStack implementation to authenticate itself against. If
* successful, it returns the internal URL to work with and the authentication token, which will
* automatically be added to all calls made by the client henceforth.
* @param tenant the account the user is authenticated against
* @param username username of the account
* @param password password of the account
* @param authUrl URL to call the authenticate against, supplied by your OpenStack implementation vendor
*/
public A authenticate(String tenant, String username, String password, String authUrl);
/**
* Calls the identity module of the OpenStack implementation to authenticate itself against. If
* successful, it returns the internal URL to work with and the authentication token, which will
* automatically be added to all calls made by the client henceforth.
* @param tenant the account the user is authenticated against
* @param username username of the account
* @param password password of the account
* @param authUrl URL to call the authenticate against, supplied by your OpenStack implementation vendor
* @param preferredRegion the end point region that is preferred. Note that this end point is not guaranteed. If
* it is not available, another end point will be returned.
*/
public A authenticate(String tenant, String username, String password, String authUrl, String preferredRegion);
}