This commit builds upon the previously added service discoverer
by adding support for finding all server interceptor beans that
are marked w/ the newly added `@GlobalServerInterceptor`
annotation.
Resolves#4
Signed-off-by: Chris Bono <chris.bono@gmail.com>
This commit configures in the Puppycrawl checkstyle with the Spring JavaFormat.
To avoid the intrusive nature of such a change, the spring-grpc-core module is
the only one to have the checkstyles applied. I will handle the other modules as
time permits.
Signed-off-by: Chris Bono <chris.bono@gmail.com>
In retrospect I think users should not have to create
ServerServiceDefinitions. It doesn't help anybody and
it seems like quite a deep internal detail.
- Add name attribute to ConditionalOnProperty
- Add autconfig to imports file
- Add a few tests to cover the other autoconfig conditonals
Signed-off-by: Chris Bono <chris.bono@gmail.com>
This commit auto-configures in the Micrometer Observations
API and its Observation server interceptor.
Resolves#1
Signed-off-by: Sunny <hmtang@gmail.com>
This commit re-introduces the service discoverer concept from the
gRPC ecosystem. We previously removed it but realized that the
abstraction is helpful to provide fully configured service
definitions with features like server interceptors. The next
commit will take advantage of this commit to add interceptors.
See #4
Signed-off-by: Chris Bono <chris.bono@gmail.com>
This adds the ability to apply `ServerBuilderCustomizer` customizers
and `spring.grpc.server.max-inbound-message-size` property to
`GrpcServlet`.
Signed-off-by: Toshiaki Maki <makingx@gmail.com>
The problem with the flatten plugin is that it unconditionally
nukes the dependency management section, which we very much need
in our "dependencies" modules.
The key is to make the "dependencies" pom independent of the main
reactor (pattern copied form Spring Cloud). Then you can run
flatten in the main reactor build and not in the dependencies,
which then retain there useful properties and dependency
management.
This commit does the following:
* Adds a `spring-grpc-spring-boot-starter` module
* Adjusts the scope of the dependencies in the`spring-grpc-spring-boot-autoconfigure`
module to optional
This commit excludes the older protobuf libs
`protobuf-java` and `proto-google-common-protos` from the
`grpc-protobuf` lib and then explicitly adds back in the
dependencies at the desired version in the root pom.xml
This commit removes the directy dependency that was required
by the protoc compiler for our samples. The Maven and Gradle
now support an option to use an internal annotation which then
allows us to remove the deprecated javax.annotation dependency.
Background here: https://github.com/grpc/grpc-java/pull/10927
This commit does the following:
- Update various dependencies to latest patch versions
- Remove unused dependencies
- Remove unused version properties
- Remove Spring Boot references in all modules except autoconfigure
and samples
This commit adds the additional-spring-configuration-metadata.json
file to the autoconfigure module so that we can add default values
for properties whose defaults can not be determined.