org.apache.torque.generator.source
Class SourceProvider

java.lang.Object
  extended by org.apache.torque.generator.source.SourceProvider
All Implemented Interfaces:
Iterator<Source>
Direct Known Subclasses:
FileSourceProvider, JdbcMetadataSourceProvider

public abstract class SourceProvider
extends Object
implements Iterator<Source>

The input for a generation process. It can contain several sources. In order to use the sources, the init() method must be called. After this method was called, no more setters may be called.


Constructor Summary
SourceProvider()
           
 
Method Summary
abstract  SourceProvider copy()
          Returns a copy of this source provider in its initial state.
abstract  void copyNotSetSettingsFrom(SourceProvider sourceProvider)
          Copies settings which are not set in this source provider from another source provider.
 void init(ConfigurationHandlers configurationHandlers, ControllerState controllerState)
          Initializes the source provider.
protected abstract  void initInternal(ConfigurationHandlers configurationHandlers, ControllerState controllerState)
          Initializes the sources provided by this SourceProvider.
 boolean isInit()
          Returns whether init() was already called.
 void reset(ConfigurationHandlers configurationHandlers, ControllerState controllerState)
          Resets the source provider.
protected abstract  void resetInternal(ConfigurationHandlers configurationHandlers, ControllerState controllerState)
          Resets the sources provided by this SourceProvider.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.util.Iterator
hasNext, next, remove
 

Constructor Detail

SourceProvider

public SourceProvider()
Method Detail

init

public final void init(ConfigurationHandlers configurationHandlers,
                       ControllerState controllerState)
                throws ConfigurationException
Initializes the source provider. Must be called before hasNext() or next() is invoked.

Parameters:
configurationHandlers - the configuration handlers, not null.
controllerState - the current controller state, not null.
Throws:
ConfigurationException - if initializing fails.

reset

public final void reset(ConfigurationHandlers configurationHandlers,
                        ControllerState controllerState)
                 throws ConfigurationException
Resets the source provider. After this method is called, init() must be called again.

Parameters:
configurationHandlers - the configuration handlers, not null.
controllerState - the current controller state, not null.
Throws:
ConfigurationException - if resetting fails.

initInternal

protected abstract void initInternal(ConfigurationHandlers configurationHandlers,
                                     ControllerState controllerState)
                              throws ConfigurationException
Initializes the sources provided by this SourceProvider.

Parameters:
configurationHandlers - the configuration handlers, not null.
controllerState - the current controller state, not null.
Throws:
ConfigurationException - if initializing fails.

resetInternal

protected abstract void resetInternal(ConfigurationHandlers configurationHandlers,
                                      ControllerState controllerState)
                               throws ConfigurationException
Resets the sources provided by this SourceProvider.

Parameters:
configurationHandlers - the configuration handlers, not null.
controllerState - the current controller state, not null.
Throws:
ConfigurationException - if resetting fails.

isInit

public boolean isInit()
Returns whether init() was already called.

Returns:
true if init() was already called, false otherwise.

copy

public abstract SourceProvider copy()
                             throws ConfigurationException
Returns a copy of this source provider in its initial state. This means the init(ConfigurationHandlers, ControllerState) method of the new source provider must be called before it can be used.

Throws:
ConfigurationException - if the new SourceProvider cannot be initialized.

copyNotSetSettingsFrom

public abstract void copyNotSetSettingsFrom(SourceProvider sourceProvider)
Copies settings which are not set in this source provider from another source provider. This only works if the type of the other source provider is known to this source provider. Only a subset of all properties are typically used for overwriting. No Properties which are already set are overwritten.

Parameters:
sourceProvider - the source provoder to copy the settings from.


Copyright © 2000-2012 The Apache Software Foundation. All Rights Reserved.