Module datarush.library
Class AnnotationEncoderFactory
- java.lang.Object
-
- com.pervasive.datarush.encoding.binary.AbstractObjectEncoderFactory
-
- com.pervasive.datarush.encoding.binary.AnnotationEncoderFactory
-
- All Implemented Interfaces:
EncoderFactory
public class AnnotationEncoderFactory extends AbstractObjectEncoderFactory
An encoder factory that works with annotations placed on class methods that mark the methods for getting an encoder and decoder for the class. This is a generic factory that will work with any class that uses the annotations:Encoder
andDecoder
.Note that the annotated methods must be static as the class cannot be instantiated to obtain the encoder/decoder instances.
-
-
Constructor Summary
Constructors Constructor Description AnnotationEncoderFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
isFactoryForType(Class<?> type)
Determine if this factory supports the given class type.protected TokenDecoder
newDecoder(Class<?> type)
Create a new decoder instance for the given type.protected TokenEncoder
newEncoder(Class<?> type)
Create a new encoder instance for the given type.-
Methods inherited from class com.pervasive.datarush.encoding.binary.AbstractObjectEncoderFactory
isFactoryForType, newDecoder, newEncoder
-
-
-
-
Method Detail
-
isFactoryForType
protected boolean isFactoryForType(Class<?> type)
Description copied from class:AbstractObjectEncoderFactory
Determine if this factory supports the given class type. A factory may support many types.- Specified by:
isFactoryForType
in classAbstractObjectEncoderFactory
- Parameters:
type
- the type to check- Returns:
- true if supported; false otherwise
-
newDecoder
protected TokenDecoder newDecoder(Class<?> type)
Description copied from class:AbstractObjectEncoderFactory
Create a new decoder instance for the given type. The type is specified to allow a single factory to serve multiple types.- Specified by:
newDecoder
in classAbstractObjectEncoderFactory
- Parameters:
type
- the class which is to be decoded- Returns:
- a new encoder instance
-
newEncoder
protected TokenEncoder newEncoder(Class<?> type)
Description copied from class:AbstractObjectEncoderFactory
Create a new encoder instance for the given type. The type is specified to allow a single factory to serve multiple types.- Specified by:
newEncoder
in classAbstractObjectEncoderFactory
- Parameters:
type
- the class which is to be decoded- Returns:
- a new decoder instance
-
-