
org.purl.sword.client.SWORDClient Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dspace-sword Show documentation
Show all versions of dspace-sword Show documentation
DSpace SWORD Deposit Service Provider Extension
The newest version!
/**
* The contents of this file are subject to the license and copyright
* detailed in the LICENSE and NOTICE files at the root of the source
* tree and available online at
*
* http://www.dspace.org/license/
*/
package org.purl.sword.client;
import org.purl.sword.base.DepositResponse;
import org.purl.sword.base.ServiceDocument;
/**
* Interface for any SWORD client implementation.
*/
public interface SWORDClient {
/**
* Set the server that is to be contacted on the next access.
*
* @param server The name of the server, e.g. www.aber.ac.uk
* @param port The port number, e.g. 80.
*/
public void setServer(String server, int port);
/**
* Set the user credentials that are to be used for subsequent accesses.
*
* @param username The username.
* @param password The password.
*/
public void setCredentials(String username, String password);
/**
* Clear the credentials settings on the client.
*/
public void clearCredentials();
/**
* Set the proxy that is to be used for subsequent accesses.
*
* @param host The host name, e.g. cache.host.com.
* @param port The port, e.g. 8080.
*/
public void setProxy(String host, int port);
/**
* Get the status result returned from the most recent network test.
*
* @return The status code and message.
*/
public Status getStatus();
/**
* Get a service document, specified in the URL.
*
* @param url The URL to connect to.
* @return A ServiceDocument that contains the Service details that were
* obained from the specified URL.
* @throws SWORDClientException If there is an error accessing the
* URL.
*/
public ServiceDocument getServiceDocument(String url) throws SWORDClientException;
/**
* Get a service document, specified in the URL. The document is accessed on
* behalf of the specified user.
*
* @param url The URL to connect to.
* @param onBehalfOf The username for the onBehalfOf access.
* @return A ServiceDocument that contains the Service details that were
* obtained from the specified URL.
* @throws SWORDClientException If there is an error accessing the URL.
*/
public ServiceDocument getServiceDocument(String url, String onBehalfOf) throws SWORDClientException;
/**
* Post a file to the specified destination URL.
*
* @param message The message that defines the requirements for the operation.
* @return A DespoitResponse if the response is successful. If there was an error,
* null
should be returned.
* @throws SWORDClientException If there is an error accessing the URL.
*/
public DepositResponse postFile(PostMessage message) throws SWORDClientException;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy