View Javadoc

1   package uk.ac.cam.spectra.spectrasub;
2   
3   /**
4    * <p>
5    * Defines the contract for components that take data packages and deposit them
6    * in repositories.
7    * </p>
8    * 
9    * <p>
10   * This is a minimal interface in order to retain as much flexibility as
11   * possible about the nature / software of the repository.
12   * </p>
13   * 
14   * @author ojd20
15   * 
16   */
17  public interface Depositor {
18  
19      /**
20       * Deposit a package into some repository and return a reference to the
21       * deposited package.
22       * 
23       * @param packageId
24       *            internal identifier for the package.
25       * @return Reference (preferably a URL) to the deposited package.
26       */
27      String deposit(String packageId);
28  
29  }