Package io.protostuff.runtime
package io.protostuff.runtime
-
ClassDescriptionUsed for (speeding up deser on) repeated/collection fields.Field mapping implemented on top of java array for lookup by number.Used when a field is an array (Object[] or any polymorphic component type).Built-in array schemas.Used when a field is declared as
Class<?>
(with or with-out generics).The FQCN(fully qualified class name) will serve as the id (string).Delegate<V>Controls how certain types are serialized and can even override the existing serializers because this has higher priority when the fields are being built.This schema delegates to another schema derived from the input.Determines how enums are serialized/deserialized.EnumIO.ByName<E extends Enum<E>>Reads the enum by its name.EnumIO.ByNumber<E extends Enum<E>>Reads the enum by its number.Requires every messsage/pojo/enum/collection/map to be registered with unique ids.This Registry is only way to register your pojos/enums/collections/maps/delegates.Field<T>Represents a field of a message/pojo.FieldMap<T>Interface for map of fields - defines how to you get field by name or number (tag).HasDelegate<T>Wraps a delegate.HashFieldMap<T>Field mapping implemented on top of hash for field lookup by number.HasSchema<T>Wraps a schema.This base class handles all the IO for reading and writing polymorphic fields.Responsible for instantiating customIdStrategy
impls.Thrown when a type is not known by the IdStrategy.The ids are generated (incremental) on the fly and you can optionally register classes by reserving the first x ids viaIncrementalIdStrategy.Registry
.To useIncrementalIdStrategy
without registering anything, set the system property: "-Dprotostuff.runtime.id_strategy_factory=io.protostuff.runtime.IncrementalIdStrategy$Factory"This Registry is only way to register your pojos/enums/collections/maps/delegates.Used when the type isNumber
.Base class for numeric id strategies.Register your pojos/enums/collections/maps/delegates here.A schema for dynamic types (fields where the type isObject
).An array wrapper internally used for adding objects.This class is expected not to load unlessRuntimeEnv
made sure that sun.reflect.ReflectionFactory is in the classpath.Used when the type is an interface (Collection/List/Set/SortedSet).Used when a field is declared asEnum<?>
(with or with-out generics).Used when the type is an interface (Map/SortedMap).Will be used ifRuntimeEnv.POJO_SCHEMA_ON_COLLECTION_FIELDS
is enabled and the field is assignable from Collection.Placeholder for annotated interface/object fields configured to use this.Will be used if eitherRuntimeEnv.POJO_SCHEMA_ON_COLLECTION_FIELDS
orRuntimeEnv.POJO_SCHEMA_ON_MAP_FIELDS
is set.Used when the type is either polymorphic or too complex.A factory which creates a schema with the handler connected to it.The handler who's job is to set the value to the owner.Polymorphic types.Used when the type is assignable fromThrowable
.A filter for the fields that need to be included.A predicate that includes only a single field with the provided number.Built-in factories that filters based on the field number.A predicate that includes fields that are greater than the provider number.A predicate that includes fields that are lesser than the provider number.A predicate that includes all fields except the provided number.The opposite ofPredicate.RANGE
.A predicate that includes fields if they are within range of the provided numbers, min and max.Read/write from/to fields using reflection.A runtime field for aCollection
.Static utility for creating runtimeCollection
fields.A runtime field w/c represents an abstract class, interface or a base type with many possible subclasses.The runtime environment.A factory to create runtimefields
based on reflection.RuntimeMapField<T,K, V> A runtime field for aMap
.Static utility for creating runtimeMap
fields.RuntimeMessageField<T,P> A runtime message field that lazily loads the schema to support cyclic dependencies.A runtime field whose field type isObject
(dynamic).Runtime pipe schema.Field factory via plain old reflection api.Static utility for creating runtime repeated (list/collection) fields.A schema that can be generated and cached at runtime for objects that have no schema.Field factory via sun.misc.Unsafe.A view schema can choose which fields to include during ser/deser.The base schema used by the built-in factories.Built-in view schema factories.Read/write from/to fields using sun.misc.Unsafe