Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.openjpa.lib.conf
Interface ProductDerivation

All Known Subinterfaces:
  OpenJPAProductDerivation

All Known Implementing Classes:
  AbstractProductDerivation, JDBCPersistenceProductDerivation, JDBCProductDerivation, PersistenceProductDerivation, ProductDerivation

    public interface ProductDerivation

Hooks for deriving products with additional functionality. Parses configuration information from global, default or explictly-specified resources. All implementations of this interface will have a chance to mutate a `Configuration` both before and after the user-specified configuration data is loaded. The order in which the product derivations are evaluated is determined by the specificity of the derivation type.

Since:
  0.4.1
Author:
  Abe White, Pinaki Poddar

Field Summary
`static int` | `TYPE_FEATURE`
`static int` | `TYPE_PRODUCT`

Method Summary
`boolean` | `afterSpecificationSet(Configuration conf)` Called after the specification has been set.
`void` | `beforeConfigurationClose(Configuration conf)` Called before the given Configuration is closed.
`boolean` | `beforeConfigurationConstruct(ConfigurationProvider cp)` Provides the instance with a callback to mutate the initial properties of the `ConfigurationProvider`.
`boolean` | `beforeConfigurationLoad(Configuration conf)` Provides the instance with the opportunity to mutate `conf` before the user configuration is applied.
`List<String>` | `getAnchorsInFile(File file)` Return a List of all the anchors defined in `file`.
`List<String>` | `getAnchorsInResource(String resource)` Return a List of all the anchors defined in `resource`.
`String` | `getConfigurationPrefix()` Return the configuration prefix for properties of this product.
`String` | `getDefaultResourceLocation()` Return a string identifying the default resource location for this product derivation, if one exists.
`Set<String>` | `getSupportedQueryHints()` Return set of Query hint keys recognized by this receiver.
`int` | `getType()` Return the type of derivation.
`ConfigurationProvider` | `load(File file, String anchor)` Load given file, or return null if it is not a file this receiver understands.
`ConfigurationProvider` | `load(String resource, String anchor, ClassLoader loader)` Load the given given resource into the returned ConfigurationProvider, or return null if it is not a resource this receiver understands.
`ConfigurationProvider` | `loadDefaults(ClassLoader loader)` Load defaults into the returned ConfigurationProvider, or return null if no defaults are found.
`ConfigurationProvider` | `loadGlobals(ClassLoader loader)` Load globals into the returned ConfigurationProvider, or return null if no globals are found.
`void` | `validate()` Ensure that this derivation is valid.

Field Detail

### TYPE_PRODUCT

    static final int TYPE_PRODUCT

See Also:
  Constant Field Values

### TYPE_FEATURE

    static final int TYPE_FEATURE

See Also:
  Constant Field Values

Method Detail

### getType

    int getType()

  Return the type of derivation.

### getConfigurationPrefix

    String getConfigurationPrefix()

  Return the configuration prefix for properties of this product.

### validate

    void validate()
                  throws Exception

  Ensure that this derivation is valid. This action might consist of loading classes for the product this derivation represents to be sure they exist. Throw any throwable to indicate an invalid derivation. Invalid derivations will not be used.

  Throws:
    `Exception`

### loadGlobals

    ConfigurationProvider loadGlobals(ClassLoader loader)
                                      throws Exception

  Load globals into the returned ConfigurationProvider, or return null if no globals are found.

  Throws:
    `Exception`

### loadDefaults

    ConfigurationProvider loadDefaults(ClassLoader loader)
                                       throws Exception

  Load defaults into the returned ConfigurationProvider, or return null if no defaults are found.

  Throws:
    `Exception`

### load

    ConfigurationProvider load(String resource,
                               String anchor,
                               ClassLoader loader)
                               throws Exception

  Load the given given resource into the returned ConfigurationProvider, or return null if it is not a resource this receiver understands. The given class loader may be null.

  Parameters:
    `anchor` - optional named anchor within a multiple-configuration resource
  Throws:
    `Exception`

### load

    ConfigurationProvider load(File file,
                               String anchor)
                               throws Exception

  Load given file, or return null if it is not a file this receiver understands.

  Parameters:
    `anchor` - optional named anchor within a multiple-configuration file
  Throws:
    `Exception`

### getDefaultResourceLocation

    String getDefaultResourceLocation()

  Return a string identifying the default resource location for this product derivation, if one exists. If there is no default location, returns `null`.

  Since:
    1.1.0

### getAnchorsInFile

    List<String> getAnchorsInFile(File file)
                                  throws IOException,
                                         Exception

  Return a List of all the anchors defined in `file`. The returned names are not fully-qualified, so must be used in conjunction with `file` in calls to `load(java.io.File, String)`. Returns `null` or an empty list if no anchors could be found.

  Throws:
    `IOException`
    `Exception`
  Since:
    1.1.0

### getAnchorsInResource

    List<String> getAnchorsInResource(String resource)
                                      throws Exception

  Return a List of all the anchors defined in `resource`. The returned names are not fully-qualified, so must be used in conjunction with `resource` in calls to `load(java.io.File, String)`. Returns `null` or an empty list if no anchors could be found.

  Throws:
    `Exception`
  Since:
    1.1.0

### beforeConfigurationConstruct

    boolean beforeConfigurationConstruct(ConfigurationProvider cp)

  Provides the instance with a callback to mutate the initial properties of the `ConfigurationProvider`. This is primarily to alter or add properties that determine what type of configuration is constructed, and therefore is typically used at runtime only.

  Returns:
    true if given ConfigurationProvider has been mutated.

### beforeConfigurationLoad

    boolean beforeConfigurationLoad(Configuration conf)

  Provides the instance with the opportunity to mutate `conf` before the user configuration is applied.

  Returns:
    true if given Configuration has been mutated.

### afterSpecificationSet

    boolean afterSpecificationSet(Configuration conf)

  Called after the specification has been set.

  Returns:
    true if given Configuration has been mutated.

### beforeConfigurationClose

    void beforeConfigurationClose(Configuration conf)

  Called before the given Configuration is closed.

  Since:
    0.9.7

### getSupportedQueryHints

    Set<String> getSupportedQueryHints()

  Return set of Query hint keys recognized by this receiver.

  Since:
    2.0.0

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2006-2013 Apache Software Foundation. All Rights Reserved.