org.apache.maven.dotnet.registry
Class ConnectionsRepository

java.lang.Object
  extended by org.apache.maven.dotnet.registry.ConnectionsRepository
All Implemented Interfaces:
Repository

public class ConnectionsRepository
extends java.lang.Object
implements Repository

Repository for obtaining sets of DAOs.


Constructor Summary
ConnectionsRepository()
           
 
Method Summary
 java.util.Set<DataAccessObject> getDataAccessObjects()
          Returns unmodifiable set of all data access objects.
 void lazyLoad()
          Loads all the data access objects.
 void load(java.io.InputStream inputStream, java.util.Hashtable properties)
          Loads the configuration file and configuration properties.
 void setRepositoryRegistry(RepositoryRegistry repositoryRegistry)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConnectionsRepository

public ConnectionsRepository()
Method Detail

lazyLoad

public void lazyLoad()
              throws java.io.IOException
Loads all the data access objects. This is considered a lazy load because the framework (plexus) invoke the ConnectionsRepository.load method, which in this case does nothing more than set the properties. It is up to the developer to explicitly call the lazy load method. This is done for performance reasons.

Throws:
java.io.IOException - if there is a problem loading the DAOs

load

public void load(java.io.InputStream inputStream,
                 java.util.Hashtable properties)
          throws java.io.IOException
Description copied from interface: Repository
Loads the configuration file and configuration properties. In the case below, the inputStream contains the adapters.txt file and the properties holds the init-params. The init params should be used to specialize the repository configuration. The example below shows that you can add new properties to MyRepository but not delete them.
 <registry-config>
 <repositories>
 <repository>
 <repository-name>adapter</repository-name>
 <repository-class>org.jvending.sample.MyRepository</repository-class>
 <repository-config>${basedir}/adapters.txt</repository-config>
 <init-param>
 <param-name>add</param-name>
 <param-value>true</param-value>
 </init-param>
 <init-param>
 <param-name>delete</param-name>
 <param-value>false</param-value>
 </init-param>
 </repository>
 </repositories>
 </registry-config>
 

Since this method uses an InputStream parameter, the configuration file can be loaded off of the local file system or from a specific URL located at an HTTP address.

Specified by:
load in interface Repository
Parameters:
inputStream - the configuration file
properties - the properties used to configure the repository
Throws:
java.io.IOException - thrown on interrupted I/O. Implementing class may also use this exception to throw other exceptions like invalid properties.
See Also:
Repository.load(java.io.InputStream, java.util.Hashtable)

setRepositoryRegistry

public void setRepositoryRegistry(RepositoryRegistry repositoryRegistry)
Specified by:
setRepositoryRegistry in interface Repository
See Also:
Repository.setRepositoryRegistry(RepositoryRegistry)

getDataAccessObjects

public java.util.Set<DataAccessObject> getDataAccessObjects()
Returns unmodifiable set of all data access objects.

Returns:
unmodifiable set of all data access objects


Copyright © 2007 NMaven. All Rights Reserved.