org.gcube.contentmanagement.baselayer
Interface InstantiableManager

All Known Implementing Classes:
BaseLayerUtils, CoGFTPContentManager, CommonsHTTPClientPseudeContentManager, FTPPseudoContentManager, GenericJDBCDatabase, GFALRawContentManager, GridFTPContentManager, HTTPPseudoContentManager, InMemoryContentManager, LocalFilesystemHandler, LocalFilesystemStorage

public interface InstantiableManager

This interface indicates, that a manager provides a static factory method to get an instance of a manager in a simple way using the Java reflection API. The template for such method looks like this:
public static Manager getManagerInstance(String[] params, String managerName) throws BaseLayerException { return new Manager(""); } All parameters that are required to correctly initialize the manager must be passed on as a String array. By this, these values can be retrieve easily from configuration files, e.g. Java Properties or JNDI. Since this method needs to be static, it unfortunately cannot be enforced by the means of Java interfaces. For this reason, the above mentioned contract is expressed verbosely.

Author:
michaelspringmann
See Also:
RawFileContentManager, BaseLayerUtils#instantiateManager(String, String[], String, org.gcube.contentmanagement.layerindependent.servicehelper.CredentialsProvider)

Field Summary
static java.lang.String MANAGER_INSTANTIATION_METHOD_NAME
          Name of the method, that can be used to instantiate a manager using reflection.
 

Field Detail

MANAGER_INSTANTIATION_METHOD_NAME

static final java.lang.String MANAGER_INSTANTIATION_METHOD_NAME
Name of the method, that can be used to instantiate a manager using reflection.

See Also:
Constant Field Values