public class GenericSkinRegistry extends Object
Helper class provides a global (JVM wide) registery for IGenericSkin
s. Generally, when writing an IGenericSkin
or
ILinkSetSkin
that implements some interface, you will
include a static initialization block in the implementation class
that registers the skin using registerClass( Class theClass
)
.
Note: Registered IGenericSkin
implementations that are to
be instantiated for a backing IGPO
MUST provide a
public constructor accepting a single IGenericSkin
argument.
Note: Registered ILinkSetSkin
implementations that are to
be instantiated for a backing ILinkSet
MUST provide a
public constructor accepting a single ILinkSetSkin
argument.
Modifier and Type | Field and Description |
---|---|
static org.apache.log4j.Logger |
log
The
Logger for the GenericSkinRegistry . |
Constructor and Description |
---|
GenericSkinRegistry() |
Modifier and Type | Method and Description |
---|---|
static IGenericSkin |
asClass(IGPO g,
Class theClassOrInterface)
Helper method for
IGPO.asClass( Class
theClassOrInterface ) implementations. |
static Class |
getImplementationClass(Class theClassOrInterface)
Returns a
Class that has been registered using registerClass( Class theClassOrInterface ) as a skin. |
static IGenericSkin |
mintGenericSkin(Class implClass,
IGPO g) |
static void |
registerClass(Class theClass)
This static method MUST be used to register any s.
|
public static final org.apache.log4j.Logger log
Logger
for the GenericSkinRegistry
.public static void registerClass(Class theClass)
IGPO.asClass( Class theClassOrInterface )
or ILinkSet#linkSetAsClass( Class theClassOrInterface )
to re-skin any
IGPO
object or ILinkSet
by naming the interface (or
implementation class) that you want to expose for the persistent data.
theClass
- The implementation class.IllegalArgumentException
- If theClass does not implement either
IGenericSkin
or ILinkSetSkin
.public static Class getImplementationClass(Class theClassOrInterface)
Class
that has been registered using registerClass( Class theClassOrInterface )
as a skin.theClassOrInterface
- UnsupportedOperationException
- if there is no registered
skin identified by the specified class or interface.IllegalArgumentException
- if theClassOrInterface is
null
.public static IGenericSkin asClass(IGPO g, Class theClassOrInterface) throws UnsupportedOperationException
IGPO.asClass( Class
theClassOrInterface )
implementations.IGenericSkin
for g that is an
instance of the desired class or that implements the desired
interface.UnsupportedOperationException
- if a suitable IGenericSkin
did not exist and could not be minted. Typically
this means that no suitable implementation class has been registered,
or that the class does not implement a suitable constructor.public static IGenericSkin mintGenericSkin(Class implClass, IGPO g) throws Exception
Exception
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.