|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.fudgemsg.mapping.FudgeDefaultBuilderFactory
public class FudgeDefaultBuilderFactory
Default factory for building Fudge message encoders and decoders.
Building a Fudge message:
toFudgeMsg
method, that will be usedJavaBeanBuilder
will be usedBuilding an object:
fromFudgeMsg
method, that will be usedFudgeFieldContainer
, that will be usedJavaBeanBuilder
will be usedGeneric builders are provided for Map
, List
(and Set
), FudgeFieldContainer
, DBObject
and array types.
Constructor Summary | |
---|---|
FudgeDefaultBuilderFactory()
Creates a new factory. |
Method Summary | ||
---|---|---|
|
addGenericBuilder(Class<T> clazz,
FudgeBuilder<T> builder)
Registers a generic builder with the factory that may be returned as a FudgeObjectBuilder for
the class, or as a FudgeMessageBuilder for any sub-classes of the class. |
|
|
createMessageBuilder(Class<T> clazz)
If the object has a public toFudgeMsg method, that will be used. |
|
protected
|
createMessageBuilderFromAnnotation(Class<T> clazz)
Attempt to construct a FudgeObjectBuilder for the specified type based on the presence
of a HasFudgeBuilder annotation on that type. |
|
|
createObjectBuilder(Class<T> clazz)
If the object has a public fromFudgeMsg method, that will be used. |
|
protected
|
createObjectBuilderFromAnnotation(Class<T> clazz)
Attempt to construct a FudgeObjectBuilder for the specified type based on the presence
of a HasFudgeBuilder annotation on that type. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public FudgeDefaultBuilderFactory()
org.fudgemsg.mapping.FudgeDefaultBuilderFactory.properties
will be read and used to initialize
the generic builders.
Method Detail |
---|
public <T> FudgeObjectBuilder<T> createObjectBuilder(Class<T> clazz)
createObjectBuilder
in interface FudgeBuilderFactory
T
- Java type of the class a builder is requested forclazz
- Java class a builder is requested for
FudgeObjectBuilder
or null
if no suitable builder can be createdprotected <T> FudgeObjectBuilder<T> createObjectBuilderFromAnnotation(Class<T> clazz)
FudgeObjectBuilder
for the specified type based on the presence
of a HasFudgeBuilder
annotation on that type.
T
- Java type of the class a builder is requested forclazz
- Java class a builder is requested for
FudgeObjectBuilder
based on HasFudgeBuilder
annotation, or null
.public <T> FudgeMessageBuilder<T> createMessageBuilder(Class<T> clazz)
createMessageBuilder
in interface FudgeBuilderFactory
T
- Java type of the class a builder is requested forclazz
- Java class a builder is requested for
FudgeMessageBuilder
or null
if no suitable builder can be createdprotected <T> FudgeMessageBuilder<T> createMessageBuilderFromAnnotation(Class<T> clazz)
FudgeObjectBuilder
for the specified type based on the presence
of a HasFudgeBuilder
annotation on that type.
T
- Java type of the class a builder is requested forclazz
- Java class a builder is requested for
FudgeObjectBuilder
based on HasFudgeBuilder
annotation, or null
.public <T> void addGenericBuilder(Class<T> clazz, FudgeBuilder<T> builder)
FudgeObjectBuilder
for
the class, or as a FudgeMessageBuilder
for any sub-classes of the class. After calling this, a
factory may choose to return an alternative builder, but may not return null
for a class which
the generic builder has been registered for.
addGenericBuilder
in interface FudgeBuilderFactory
T
- the generic type (probably an interface) the builder is forclazz
- the generic type (probably an interface) the builder is forbuilder
- the builder to register
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |