## Uses of Class
org.apache.tapestry5.ioc.annotations.Contribute

- Packages that use Contribute
  Package | Description
  --- | ---
  org.apache.tapestry5.clojure.modules |
  org.apache.tapestry5.hibernate.web.modules |
  org.apache.tapestry5.internal.t5internal.modules |
  org.apache.tapestry5.internal.test | [INTERNAL USE ONLY] testing support implementation classes; API subject to change
  org.apache.tapestry5.ioc.modules |
  org.apache.tapestry5.jpa.modules |
  org.apache.tapestry5.json.modules | Optional module that allows JSON objects to be used with the `TypeCoercer` service, when the tapestry-ioc module is present.
  org.apache.tapestry5.kaptcha.modules |
  org.apache.tapestry5.modules |
  org.apache.tapestry5.spring.modules |

- - ### Uses of Contribute in org.apache.tapestry5.clojure.modules

    Methods in org.apache.tapestry5.clojure.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | ClojureModule.`defaultMappers​(OrderedConfiguration<MethodToFunctionSymbolMapper> configuration)` |

  - ### Uses of Contribute in org.apache.tapestry5.hibernate.web.modules

    Methods in org.apache.tapestry5.hibernate.web.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | HibernateModule.`provideCommitAfterAnnotationSupport​(OrderedConfiguration<ComponentClassTransformWorker2> configuration)` | Adds the CommitAfter annotation work, to process the `CommitAfter` annotation.
    `static void` | HibernateModule.`provideHibernateDashboardTab​(OrderedConfiguration<DashboardTab> configuration)` |
    `static void` | HibernateModule.`provideInjectableSessionObject​(MappedConfiguration<Class,​Object> configuration, org.hibernate.Session session)` |
    `static void` | HibernateModule.`provideLibraryMapping​(Configuration<LibraryMapping> configuration)` |

  - ### Uses of Contribute in org.apache.tapestry5.internal.t5internal.modules

    Methods in org.apache.tapestry5.internal.t5internal.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | InternalTestModule.`provideT5InternalLibrary​(Configuration<LibraryMapping> configuration)` |

  - ### Uses of Contribute in org.apache.tapestry5.internal.test

    Methods in org.apache.tapestry5.internal.test with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | PageTesterModule.`setupTestableOverrides​(MappedConfiguration<Class,​Object> configuration, TestableRequest request, TestableResponse response, ObjectLocator locator)` |

  - ### Uses of Contribute in org.apache.tapestry5.ioc.modules

    Methods in org.apache.tapestry5.ioc.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | TapestryIOCModule.`provideBasicTypeCoercions​(MappedConfiguration<CoercionTuple.Key,​CoercionTuple> configuration)` | Contributes a set of standard type coercions to the `TypeCoercer` service: Object to String Object to Boolean String to Double String to BigDecimal BigDecimal to Double Double to BigDecimal String to BigInteger BigInteger to Long String to Long Long to Byte Long to Short Long to Integer Double to Long Double to Float Float to Double Long to Double String to Boolean ("false" is always false, other non-blank strings are true) Number to Boolean (true if number value is non zero) Null to Boolean (always false) Collection to Boolean (false if empty) Object[] to List primitive[] to List Object to List (by wrapping as a singleton list) String to File String to `TimeInterval` `TimeInterval` to Long Object to Object[] (wrapping the object as an array) Collection to Object[] (via the toArray() method) `Flow` to List `Flow` to Boolean (false if empty)
    `static void` | TapestryIOCModule.`provideJSR10TypeCoercions​(MappedConfiguration<CoercionTuple.Key,​CoercionTuple> configuration)` | Contributes coercions to and from Java Time API (JSR 310) classes.
    `static void` | TapestryIOCModule.`providePerthreadScope​(MappedConfiguration<String,​ServiceLifecycle> configuration)` | Contributes the "perthread" scope.
    `static void` | TapestryIOCModule.`setupDefaultSymbols​(MappedConfiguration<String,​Object> configuration)` |
    `static void` | TapestryIOCModule.`setupObjectProviders​(OrderedConfiguration<ObjectProvider> configuration, ServiceOverride serviceOverride)` | AnnotationBasedContributions Empty placeholder used to separate annotation-based ObjectProvider contributions (which come before) from non-annotation based (such as ServiceOverride) which come after. Value Supports the `Value` annotation Symbol Supports the `Symbol` annotations Autobuild Supports the `Autobuild` annotation ServiceOverride Allows simple service overrides via the `ServiceOverride` service (and its configuration)
    `static void` | TapestryIOCModule.`setupStandardSymbolProviders​(OrderedConfiguration<SymbolProvider> configuration, SymbolProvider applicationDefaults, SymbolProvider factoryDefaults)` | SystemProperties Exposes JVM System properties as symbols (currently case-sensitive) EnvironmentVariables Exposes environment variables as symbols (adding a "env." prefix) ApplicationDefaults Values contributed to @`SymbolProvider` @`ApplicationDefaults` FactoryDefaults Values contributed to @`SymbolProvider` @`FactoryDefaults`

  - ### Uses of Contribute in org.apache.tapestry5.jpa.modules

    Methods in org.apache.tapestry5.jpa.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | JpaModule.`provideApplicationStateContributions​(MappedConfiguration<Class,​ApplicationStateContribution> configuration, EntityManagerSource entityManagerSource, boolean entitySessionStatePersistenceStrategyEnabled)` |
    `void` | JpaModule.`provideApplicationStatePersistenceStrategies​(MappedConfiguration<String,​ApplicationStatePersistenceStrategy> configuration)` |
    `static void` | JpaModule.`provideClassTransformWorkers​(OrderedConfiguration<ComponentClassTransformWorker2> configuration)` |
    `static void` | JpaModule.`provideEntityPackages​(Configuration<String> configuration, String appRootPackage)` |
    `static void` | JpaModule.`provideEntityPersistentFieldStrategies​(MappedConfiguration<String,​PersistentFieldStrategy> configuration)` |
    `static void` | JpaModule.`provideFactoryDefaults​(MappedConfiguration<String,​String> configuration)` |
    `static void` | JpaModule.`provideObjectProviders​(OrderedConfiguration<ObjectProvider> configuration)` |
    `static void` | JpaModule.`provideValueEncoders​(MappedConfiguration<Class,​ValueEncoderFactory> configuration, boolean provideEncoders, EntityManagerSource entityManagerSource, EntityManagerManager entityManagerManager, TypeCoercer typeCoercer, PropertyAccess propertyAccess, LoggerSource loggerSource)` |

  - ### Uses of Contribute in org.apache.tapestry5.json.modules

    Methods in org.apache.tapestry5.json.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | JSONModule.`provideCoercions​(MappedConfiguration<CoercionTuple.Key,​CoercionTuple> configuration)` | `String` to `JSONObject` `String` to `JSONArray`

  - ### Uses of Contribute in org.apache.tapestry5.kaptcha.modules

    Methods in org.apache.tapestry5.kaptcha.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | KaptchaModule.`factoryDefaults​(MappedConfiguration<String,​Object> configuration)` |
    `static void` | KaptchaModule.`provideDefaultBeanBlocks​(Configuration<BeanBlockContribution> configuration)` |
    `static void` | KaptchaModule.`provideLibraryMapping​(Configuration<LibraryMapping> configuration)` |
    `static void` | KaptchaModule.`provideLibraryMessages​(OrderedConfiguration<Resource> configuration, Resource kaptchaCatalog)` |

  - ### Uses of Contribute in org.apache.tapestry5.modules

    Methods in org.apache.tapestry5.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | AssetsModule.`addApplicationAndTapestryMappings​(MappedConfiguration<String,​String> configuration, String appPackage)` |
    `static void` | TapestryModule.`addBuiltInComponentLibraryInfoSources​(OrderedConfiguration<ComponentLibraryInfoSource> configuration)` |
    `static void` | TapestryModule.`addBuiltInOpenApiDocumentationGenerator​(OrderedConfiguration<OpenApiDescriptionGenerator> configuration)` |
    `static void` | TapestryModule.`addBuiltInOpenApiTypeDescriber​(OrderedConfiguration<OpenApiTypeDescriber> configuration)` |
    `static void` | AssetsModule.`addMappingsForLibraryVirtualFolders​(MappedConfiguration<String,​String> configuration, ComponentClassResolver resolver)` |
    `static void` | InternalModule.`configureControlledPackagesFromComponentClassResolver​(MappedConfiguration<String,​ControlledPackageType> configuration, ComponentClassResolver resolver)` | Contributes packages identified by `ComponentClassResolver.getControlledPackageMapping()`.
    `void` | AssetsModule.`configureStandardAssetFactories​(MappedConfiguration<String,​AssetFactory> configuration, AssetFactory contextAssetFactory, AssetFactory classpathAssetFactory)` |
    `static void` | DashboardModule.`defaultTabs​(OrderedConfiguration<DashboardTab> configuration)` |
    `void` | TapestryModule.`defaultValueLabelProviders​(MappedConfiguration<Class,​ValueLabelProvider> configuration)` |
    `static void` | TapestryModule.`defaultWhitelist​(OrderedConfiguration<WhitelistAnalyzer> configuration)` | Contributes a single default analyzer: LocalhostOnly Identifies requests from localhost as on client whitelist
    `void` | AssetsModule.`disableCompressionForImageTypes​(MappedConfiguration<String,​Boolean> configuration)` | Disables compression for the following content types: image/jpeg image/gif image/png image/svg+xml application/x-shockwave-flash application/font-woff application/x-font-ttf application/vnd.ms-fontobject
    `void` | JavaScriptModule.`exposeJavaScriptSupportForFullPageRenders​(OrderedConfiguration<MarkupRendererFilter> configuration, JavaScriptStackSource javascriptStackSource, JavaScriptStackPathConstructor javascriptStackPathConstructor, Request request)` | Adds page render filters, each of which provides an `Environmental` service.
    `void` | JavaScriptModule.`exposeJavaScriptSupportForPartialPageRender​(OrderedConfiguration<PartialMarkupRendererFilter> configuration, JavaScriptStackSource javascriptStackSource, JavaScriptStackPathConstructor javascriptStackPathConstructor, Request request)` | Contributes `PartialMarkupRendererFilter`s used when rendering a partial Ajax response.
    `static void` | JavaScriptModule.`overrideGlyphiconWithFontAwesomeIfNeeded​(MappedConfiguration<Class,​Class> configuration, Compatibility compatibility)` | Overrides the `Glyphicon` component with `FontAwesomeIcon` if Bootstrap 3 isn't enabled.
    `static void` | JavaScriptModule.`prepareHTMLPageOnRender​(OrderedConfiguration<MarkupRendererFilter> configuration)` | Contributes 'ConfigureHTMLElement', which writes the attributes into the HTML tag to describe locale, etc.
    `static void` | TapestryModule.`productionModeOverrides​(MappedConfiguration<Class,​Object> configuration, boolean productionMode)` | In production mode, override `UpdateListenerHub` to be an empty placeholder.
    `static void` | TapestryModule.`provideBaseAjaxComponentEventResultProcessors​(MappedConfiguration<Class,​ComponentEventResultProcessor> configuration)` | Contributes handlers for the following types: Object Failure case, added to provide more useful exception message `RenderCommand` Typically, a `Block` `Component` Renders the component and its body (unless its a page, in which case a redirect JSON response is sent) `JSONObject` or `JSONArray` The JSONObject is returned as a text/javascript response `StreamResponse` The stream response is sent as the actual response String Interprets the value as a logical page name and sends a client response to redirect to that page `Link` Sends a JSON response to redirect to the link `Class` Treats the class as a page class and sends a redirect for a page render for that page `MultiZoneUpdate` Sends a single JSON response to update the content of multiple zones In most cases, when you want to support a new type, you should convert it to one of the built-in supported types (such as `RenderCommand`.
    `static void` | AssetsModule.`provideBuiltinAssetDispatchers​(MappedConfiguration<String,​AssetRequestHandler> configuration, AssetFactory contextAssetFactory, StackAssetRequestHandler stackAssetRequestHandler, ClasspathAssetAliasManager classpathAssetAliasManager, ResourceStreamer streamer, AssetSource assetSource, ClasspathAssetProtectionRule classpathAssetProtectionRule)` | Contributes an handler for each mapped classpath alias, as well handlers for context assets and stack assets (combined `JavaScriptStack` files).
    `static void` | JavaScriptModule.`provideBuiltinJavaScriptStacks​(MappedConfiguration<String,​JavaScriptStack> configuration, JavaScriptStack coreStack, JavaScriptStack internalStack)` | Contributes the "core" and "internal" `JavaScriptStack`s
    `static void` | TapestryModule.`provideCoreAndAppLibraries​(Configuration<LibraryMapping> configuration, String appRootPackage)` |
    `static void` | TapestryModule.`provideDefaultBeanBlocks​(Configuration<BeanBlockContribution> configuration)` |
    `static void` | TapestryModule.`provideStandardInjectionProviders​(OrderedConfiguration<InjectionProvider2> configuration, SymbolSource symbolSource, AssetSource assetSource)` | Default based on `MasterObjectProvider` Named Handles fields with the `Named` annotation Block injects fields of type `Block` CommonResources Access to properties of resources (log, messages, etc.) Asset injection of assets (triggered via `Path` annotation), with the path relative to the component class Service Ordered last, for use when Inject is present and nothing else works, matches field type against Tapestry IoC services
    `static void` | TapestryModule.`provideTransformWorkers​(OrderedConfiguration<ComponentClassTransformWorker2> configuration, MetaWorker metaWorker, ComponentClassResolver resolver)` | Adds a number of standard component class transform workers: Parameter Identifies parameters based on the `Parameter` annotation BindParameter Support for the `BindParameter` annotation Property Generates accessor methods if `Property` annotation is present Import Supports the `Import` annotation UnclaimedField Manages unclaimed fields, storing their value in a `PerThreadValue` OnEvent Handle the @OnEvent annotation, and related naming convention RenderCommand Ensures all components also implement `RenderCommand` SupportsInformalParameters Checks for the annotation RenderPhase Link in render phase methods Retain Allows fields to retain their values between requests Meta Checks for meta data annotations and adds it to the component model PageActivationContext Support for `PageActivationContext` annotation DiscardAfter Support for `DiscardAfter` method annotation MixinAfter Support for the `MixinAfter` mixin class annotation PageReset Checks for the `PageReset` annotation Mixin Adds a mixin as part of a component's implementation Cached Checks for the `Cached` annotation ActivationRequestParameter Support for the `ActivationRequestParameter` annotation PageLoaded, PageAttached, PageDetached Support for annotations `PageLoaded`, `PageAttached`, `PageDetached` InjectService Handles the `InjectService` annotation Component Defines embedded components based on the `Component` annotation Environment Allows fields to contain values extracted from the `Environment` service ApplicationState Converts fields that reference application state objects Persist Allows fields to store their their value persistently between requests via `Persist` SessionAttribute Support for the `SessionAttribute` Log Checks for the `Log` annotation HeartbeatDeferred Support for the `HeartbeatDeferred` annotation, which defers method invocation to the end of the `Heartbeat` Inject Used with the `Inject` annotation, when a value is supplied Operation Support for the `Operation` method annotation
    `static void` | JavaScriptModule.`setupApplicationCatalogModules​(MappedConfiguration<String,​Object> configuration, LocalizationSetter localizationSetter, ComponentMessagesSource messagesSource, ResourceChangeTracker resourceChangeTracker, boolean compactJSON)` |
    `static void` | AssetsModule.`setupAssetDispatch​(OrderedConfiguration<Dispatcher> configuration, Dispatcher assetDispatcher)` |
    `static void` | JavaScriptModule.`setupBaseModules​(MappedConfiguration<String,​Object> configuration, Resource underscoreShim, Resource jqueryShim, Resource typeahead, Resource moment, Resource transition, Resource bootstrapUtil, Compatibility compatibility)` |
    `static void` | Bootstrap4Module.`setupCompatibilityDefaults​(MappedConfiguration<Trait,​Boolean> configuration)` |
    `static void` | JavaScriptModule.`setupCompatibilityDefaults​(MappedConfiguration<Trait,​Boolean> configuration)` |
    `static void` | NoBootstrapModule.`setupCompatibilityDefaults​(MappedConfiguration<Trait,​Boolean> configuration)` |
    `static void` | TapestryModule.`setupCoreFrameworkValidators​(MappedConfiguration<String,​Validator> configuration)` | Contributes the basic set of validators: required minlength maxlength min max regexp email none
    `static void` | JavaScriptModule.`setupCoreJavaScriptStack​(OrderedConfiguration<StackExtension> configuration, Compatibility compatibility, String provider)` | The core JavaScriptStack has a number of entries: requirejs The RequireJS AMD JavaScript library scriptaculous.js, effects.js Optional JavaScript libraries in compatibility mode (see `Trait.SCRIPTACULOUS`) t53-compatibility.js Optional JavaScript library (see `Trait.INITIALIZERS`) underscore-library, underscore-module The Underscore JavaScript library, and the shim that allows underscore to be injected t5/core/init Optional module related to t53-compatibility.js jquery-library The jQuery library jquery-noconflict Switches jQuery to no-conflict mode (only present when the infrastructure is "prototype"). jquery A module shim that allows jQuery to be injected (and also switches jQuery to no-conflict mode) bootstrap.css, tapestry.css, exception-frame.css, tapestry-console.css, tree.css CSS files t5/core/[...] Additional JavaScript modules jquery Added if the infrastructure provider is "jquery". User modules may replace or extend this list.
    `void` | AssetsModule.`setupDefaultContentTypeMappings​(MappedConfiguration<String,​String> configuration)` | Adds content types: css text/css js text/javascript jpg, jpeg image/jpeg gif image/gif png image/png svg image/svg+xml swf application/x-shockwave-flash woff application/font-woff tff application/x-font-ttf eot application/vnd.ms-fontobject
    `static void` | JavaScriptModule.`setupFactoryDefaults​(MappedConfiguration<String,​Object> configuration)` |
    `static void` | JavaScriptModule.`setupFoundationFramework​(MappedConfiguration<String,​Object> configuration, String provider, Resource domPrototype, Resource domJQuery)` |
    `static void` | AssetsModule.`setupGlobalMessageCatalog​(AssetSource assetSource, Resource applicationCatalog, OrderedConfiguration<Resource> configuration)` | Contributes: ClientLocalization A virtual resource of formatting symbols for decimal numbers Core Built in messages used by Tapestry's default validators and components AppCatalog The Resource defined by `SymbolConstants.APPLICATION_CATALOG`
    `static void` | JavaScriptModule.`setupInternalJavaScriptStack​(OrderedConfiguration<StackExtension> configuration)` |
    `static void` | JavaScriptModule.`setupModuleDispatchers​(OrderedConfiguration<Dispatcher> configuration, ModuleManager moduleManager, OperationTracker tracker, ResourceStreamer resourceStreamer, PathConstructor pathConstructor, JavaScriptStackSource javaScriptStackSource, JavaScriptStackPathConstructor javaScriptStackPathConstructor, LocalizationSetter localizationSetter, String modulePathPrefix, String assetPathPrefix)` |
    `static void` | AssetsModule.`setupSymbols​(MappedConfiguration<String,​Object> configuration)` |

  - ### Uses of Contribute in org.apache.tapestry5.spring.modules

    Methods in org.apache.tapestry5.spring.modules with annotations of type Contribute
    Modifier and Type | Method | Description
    --- | --- | ---
    `static void` | SpringModule.`addSymbolSourceAsPropertyCustomizerForSpringBeans​(OrderedConfiguration<ApplicationContextCustomizer> configuration, SymbolSource symbolSource)` |
    `static void` | SpringModule.`defaultExternalSpringContextOff​(MappedConfiguration<String,​Object> configuration)` |
    `void` | SpringModule.`reportSpringContextDetailsAtStartup​(OrderedConfiguration<ApplicationInitializerFilter> configuration, org.springframework.context.ApplicationContext springContext)` |