![JAR search and dependency download from the Maven repository](/logo.png)
d.inverno-boot.1.7.1.source-code.module-info Maven / Gradle / Ivy
/*
* Copyright 2021 Jeremy KUHN
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import java.util.concurrent.ExecutorService;
import io.inverno.mod.base.concurrent.Reactor;
import io.inverno.mod.base.converter.CompoundDecoder;
import io.inverno.mod.base.converter.CompoundEncoder;
import io.inverno.mod.base.net.NetService;
import io.inverno.mod.base.resource.MediaTypeService;
import io.inverno.mod.base.resource.Resource;
import io.inverno.mod.base.resource.ResourceService;
/**
*
* The Inverno framework boot module provides basic services.
*
*
*
* It defines the following sockets:
*
*
*
* - configuration
* - the boot module configuration
* - compoundDecoders
* - extend the parameter converter decoding capabilities with a list of
* {@link CompoundDecoder}
* - compoundEncoders
* - extend the parameter converter encoding capabilities with a list of
* {@link CompoundEncoder}
* - objectMapper
* - override the JSON reader/writer
* - workerPool
* - override the worker thread pool
*
*
*
* It exposes the following beans:
*
*
*
* - configuration
* - the boot module configuration
* - reactor
* - the {@link Reactor} used to create optimized threading model based on
* event loop group
* - netService
* - a {@link NetService} used to create optimized network clients and
* servers
* - mediaTypeService
* - a {@link MediaTypeService} used to determine the media type of a resource
* based on its URI
* - resourceService
* - a {@link ResourceService} used to access {@link Resource}
* - parameterConverter
* - a parameter converter used to convert parameter values to primitive and
* common types as well as custom types when custom compound decoders and/or
* encoders are injected
* - jsonByteBufConverter
* - A JSON to ByteBuf converter
* - jsonMediaTypeConverter
* - An application/json media type converter
* - ndjsonMediaTypeConverter
* - An application/x-ndjson media type converter
* - textPlainMediaTypeConverter
* - An text/plain media type converter
* - workerPool
* - a worker thread pool used whenever there's a need for an
* {@link ExecutorService} to execute tasks asynchronously.
*
- objectMapper
* - A JSON reader/writer
*
*
* @author Jeremy Kuhn
* @since 1.0
*/
@io.inverno.core.annotation.Module
@io.inverno.core.annotation.Wire(beans="io.inverno.mod.boot:jsonByteBufConverter", into="io.inverno.mod.boot:jsonByteBufMediaTypeConverter:jsonByteBufConverter")
@io.inverno.core.annotation.Wire(beans="io.inverno.mod.boot:jsonByteBufConverter", into="io.inverno.mod.boot:ndJsonByteBufMediaTypeConverter:jsonByteBufConverter")
@io.inverno.core.annotation.Wire(beans="io.inverno.mod.boot:jsonStringConverter", into="io.inverno.mod.boot:jsonStringMediaTypeConverter:jsonStringConverter")
@io.inverno.core.annotation.Wire(beans="io.inverno.mod.boot:jsonStringConverter", into="io.inverno.mod.boot:ndJsonStringMediaTypeConverter:jsonStringConverter")
module io.inverno.mod.boot {
requires transitive io.inverno.core;
requires static io.inverno.core.annotation; // for javadoc...
requires transitive io.inverno.mod.base;
requires transitive io.inverno.mod.configuration;
requires transitive com.fasterxml.jackson.databind;
requires transitive com.fasterxml.jackson.datatype.jsr310;
requires org.apache.logging.log4j;
requires transitive org.reactivestreams;
requires transitive io.netty.buffer;
requires io.netty.common;
requires transitive io.netty.transport;
requires static io.netty.transport.unix.common;
requires static io.netty.transport.classes.epoll;
requires static io.netty.transport.classes.kqueue;
requires static io.netty.incubator.transport.classes.io_uring;
requires static io.vertx.core;
requires transitive reactor.core;
exports io.inverno.mod.boot;
exports io.inverno.mod.boot.converter;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy