Package com.fasterxml.jackson.databind
Class Module
- java.lang.Object
-
- com.fasterxml.jackson.databind.Module
-
- All Implemented Interfaces:
Versioned
- Direct Known Subclasses:
SimpleModule
public abstract class Module extends Object implements Versioned
Simple interface for extensions that can be registered withObjectMapper
to provide a well-defined set of extensions to default functionality; such as support for new data types.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Module.SetupContext
Interface Jackson exposes to modules for purpose of registering extended functionality.
-
Constructor Summary
Constructors Constructor Description Module()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description Iterable<? extends Module>
getDependencies()
Returns the list of dependent modules this module has, if any.abstract String
getModuleName()
Method that returns a display that can be used by Jackson for informational purposes, as well as in associating extensions with module that provides them.Object
getTypeId()
Method that returns an id that may be used to determine if twoModule
instances are considered to be of same type, for purpose of preventing multiple registrations of "same type of" module (seeMapperFeature.IGNORE_DUPLICATE_MODULE_REGISTRATIONS
) If `null` is returned, every instance is considered unique.abstract void
setupModule(Module.SetupContext context)
Method called byObjectMapper
when module is registered.abstract Version
version()
Method that returns version of this module.
-
-
-
Method Detail
-
getModuleName
public abstract String getModuleName()
Method that returns a display that can be used by Jackson for informational purposes, as well as in associating extensions with module that provides them.
-
version
public abstract Version version()
Method that returns version of this module. Can be used by Jackson for informational purposes.
-
getTypeId
public Object getTypeId()
Method that returns an id that may be used to determine if twoModule
instances are considered to be of same type, for purpose of preventing multiple registrations of "same type of" module (seeMapperFeature.IGNORE_DUPLICATE_MODULE_REGISTRATIONS
) If `null` is returned, every instance is considered unique. If non-null value is returned, equality of id Objects is used to check whether modules should be considered to be "of same type"Default implementation returns value of class name (
Class.getName()
).- Since:
- 2.5
-
setupModule
public abstract void setupModule(Module.SetupContext context)
Method called byObjectMapper
when module is registered. It is called to let module register functionality it provides, using callback methods passed-in context object exposes.
-
getDependencies
public Iterable<? extends Module> getDependencies()
Returns the list of dependent modules this module has, if any. It is called to let modules register other modules as dependencies. Modules returned will be registered before this module is registered, in iteration order.- Since:
- 2.10
-
-