i3.dragos.gm.core
Interface ExtensionDescriptor


public interface ExtensionDescriptor

Interface for uniform initialization of extensions.

Any extension should provide exactly one implementation of this interface. The implementation should also be named ExtensionDescriptor, and be placed in a package specific to the extension.

Parameter for the Wrapper or GraphPool creation can be given to the constructor or a static creation method, depending on how the ExtensionDescriptor is implemented.

Author:
Thorsten Hermes <thermes@i3.informatik.rwth-aachen.de>
See Also:
GraphPoolFactory

Method Summary
 GraphPool extendGraphPool(GraphPool gp)
          Returns either the supplied GraphPool unmodified, or a wrapped version of it.
 java.lang.Class<?> getExtendedGraphPoolClass()
          Returns the class of the corresponding graph pool.
 GraphPoolChecker getGraphPoolChecker()
          Returns the GraphPoolChecker used by this extension, or null if none.
 SchemaChecker getSchemaChecker()
          Returns the SchemaChecker used by this extension, or null if none.
 Wrapper getWrapper()
          Returns the Wrapper used by this extension, or null if none.
 

Method Detail

getWrapper

Wrapper getWrapper()
Returns the Wrapper used by this extension, or null if none.

Returns:
the Wrapper used by this extension, or null if none.

extendGraphPool

GraphPool extendGraphPool(GraphPool gp)
                          throws DragosException
Returns either the supplied GraphPool unmodified, or a wrapped version of it.

You should not call GraphPool.setWrapper(Wrapper) or otherwise attempt to force the extension's Wrapper to be used, just implement getWrapper() and let the GraphPoolFactory do its work.

This method must never return null!

Parameters:
gp - The GraphPool as it was created and possibly wrapped up to now.
Returns:
either the supplied GraphPool unmodified, or a wrapped version of it.
Throws:
DragosException - if something wents wrong.

getExtendedGraphPoolClass

java.lang.Class<?> getExtendedGraphPoolClass()
Returns the class of the corresponding graph pool. This information is not used during initialization (GraphPoolFactory uses extendGraphPool(GraphPool) to give extensions more flexibility), but for partial unwrapping.

Returns:
The class of the corresponding graph pool.

getGraphPoolChecker

GraphPoolChecker getGraphPoolChecker()
Returns the GraphPoolChecker used by this extension, or null if none.

Returns:
the GraphPoolChecker used by this extension, or null if none.

getSchemaChecker

SchemaChecker getSchemaChecker()
Returns the SchemaChecker used by this extension, or null if none.

Returns:
the SchemaChecker used by this extension, or null if none.


Copyright © 2002-2008 RWTH Aachen, Department of Computer Science 3 (Software Engineering). All Rights Reserved.