Package io.protostuff.runtime
Interface NumericIdStrategy.Registry
-
- All Known Implementing Classes:
ExplicitIdStrategy.Registry
,IncrementalIdStrategy.Registry
- Enclosing class:
- NumericIdStrategy
public static interface NumericIdStrategy.Registry
Register your pojos/enums/collections/maps/delegates here.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <T> NumericIdStrategy.Registry
mapPojo(java.lang.Class<? super T> baseClass, java.lang.Class<T> implClass)
If you are sure that you are only using a single implementation of your interface/abstract class, then it makes sense to map it directly to its impl class to avoid writing the type.<T extends java.util.Collection<?>>
NumericIdStrategy.RegistryregisterCollection(CollectionSchema.MessageFactory factory, int id)
Collection ids start at 1.<T> NumericIdStrategy.Registry
registerDelegate(Delegate<T> delegate, int id)
Register aDelegate
and assign an id.NumericIdStrategy.Registry
registerEnum(EnumIO<?> eio, int id)
Enum ids start at 1.<T extends java.lang.Enum<T>>
NumericIdStrategy.RegistryregisterEnum(java.lang.Class<T> clazz, int id)
Enum ids start at 1.<T extends java.util.Map<?,?>>
NumericIdStrategy.RegistryregisterMap(MapSchema.MessageFactory factory, int id)
Map ids start at 1.<T> NumericIdStrategy.Registry
registerPojo(Schema<T> schema, Pipe.Schema<T> pipeSchema, int id)
Pojo ids start at 1.<T> NumericIdStrategy.Registry
registerPojo(java.lang.Class<T> clazz, int id)
Pojo ids start at 1.
-
-
-
Method Detail
-
registerCollection
<T extends java.util.Collection<?>> NumericIdStrategy.Registry registerCollection(CollectionSchema.MessageFactory factory, int id)
Collection ids start at 1.
-
registerMap
<T extends java.util.Map<?,?>> NumericIdStrategy.Registry registerMap(MapSchema.MessageFactory factory, int id)
Map ids start at 1.
-
registerEnum
<T extends java.lang.Enum<T>> NumericIdStrategy.Registry registerEnum(java.lang.Class<T> clazz, int id)
Enum ids start at 1.
-
registerEnum
NumericIdStrategy.Registry registerEnum(EnumIO<?> eio, int id)
Enum ids start at 1.
-
registerPojo
<T> NumericIdStrategy.Registry registerPojo(java.lang.Class<T> clazz, int id)
Pojo ids start at 1.
-
registerPojo
<T> NumericIdStrategy.Registry registerPojo(Schema<T> schema, Pipe.Schema<T> pipeSchema, int id)
Pojo ids start at 1.
-
mapPojo
<T> NumericIdStrategy.Registry mapPojo(java.lang.Class<? super T> baseClass, java.lang.Class<T> implClass)
If you are sure that you are only using a single implementation of your interface/abstract class, then it makes sense to map it directly to its impl class to avoid writing the type.Note that the type is always written when your field is
Object
.Pojo ids start at 1.
-
registerDelegate
<T> NumericIdStrategy.Registry registerDelegate(Delegate<T> delegate, int id)
Register aDelegate
and assign an id.Delegate ids start at 1.
-
-