Dave Syer
3cb6ce3912
Move code around so factory gets address not port
2024-10-19 07:52:50 +01:00
Dave Syer
85de440e50
Use dependency management plugin to resolve versions
2024-10-17 11:46:31 +01:00
Dave Syer
e9298a3f06
Add Gradle configuration for sample
2024-10-16 13:54:11 +01:00
Dave Syer
f0a84cec5d
Sack the flatten plugin, at least till it works
2024-10-16 13:02:45 +01:00
Dave Syer
9b89bf2b21
Add basic getting started guide to README
2024-10-16 11:10:12 +01:00
Dave Syer
a969d09fc0
Generated configprops
2024-10-14 10:50:39 +01:00
Dave Syer
d2ec311d07
Resolve placeholders in channel address
2024-10-14 10:49:43 +01:00
Dave Syer
b92fd43664
Add support for client connection negotiation
...
The serverside SSL was working, but the clients were not able to
connect because they all had insecure call credentials. This change
adds a NegotiationType enum for configuring the client, and an
integration test that uses it (implicitly).
Also move some logic around. The netty-specific channel factories
weren't doing any work. This makes them do something, so more
classpath-dependent logic can go into them.
2024-10-14 10:46:53 +01:00
Dave Syer
fab5c73be1
Add support for server-side SSL
...
There's no integration test per se, but the GrpcServerApplicationTests
main method runs the server securely with an anonymous certificate, so
you can test it manually with grpcurl -insecure.
See #10
2024-10-11 12:12:38 +01:00
Dave Syer
8263972b63
Move vanilla integration test back to its own source file
2024-10-08 17:06:26 +01:00
Dave Syer
b30dc45e5a
Add README to sample and make sure it works
2024-10-08 14:34:34 +01:00
Chris Bono
beba50bb4a
Add config props document generation
2024-10-08 12:32:37 +01:00
Chris Bono
9642e00f7a
Generate metadata for config props
...
Adds the `spring-boot-configuration-processor` to enable automatic metadata
generation so our config props play well in IDEs.
Also updates the default values for duration properties to use
`Duration.of<Unit>(long)` instead of `Duration.of(long, DurationUnit)` as
Spring Boot config processor can not determine a default for the config
metadata in the latter format.
2024-10-07 18:36:37 +01:00
Chris Bono
9bcc3390cc
Add keep-alive and inbound limits server properties
...
Resolves #6
2024-10-07 18:36:37 +01:00
Chris Bono
1529658106
Consolidate samples into single integration test
...
This commit moves the current sample variants into a single
integration test (GrpcServerApplicationTests) leveraging the
Junit5 `@Nested` feature.
2024-10-07 09:04:51 +01:00
Chris Bono
946299baf8
Rename BaseServerFactoryPropertyMapper to DefaultServerFactoryPropertyMapper
2024-10-04 11:17:21 -05:00
Chris Bono
42cdd2feda
Rename BaseGrpcServerFactory to DefaultGrpcServerFactory
2024-10-04 11:16:48 -05:00
Chris Bono
9f59120988
Delete unused server factory/helpers
2024-10-04 11:02:42 -05:00
Chris Bono
e0159ed6fb
Add property / mapper tests
2024-10-02 13:54:03 +01:00
Chris Bono
11c658bfba
Use explicit server factory impls
...
This commit breaks the DefaultGrpcServerFactory into concrete
implementations which helps with type-safety of different builders.
Also, an aggregate customizers helper is added to allow the
server builder customizers to be type specific and properly
applied as such.
Tests were also enhanced to cover newly added components.
2024-10-02 13:54:03 +01:00
Dave Syer
a430720dbf
Fix link in README
2024-10-01 08:51:09 +01:00
Dave Syer
8ce86686c4
Another docs change
2024-10-01 08:50:22 +01:00
Dave Syer
acfa3f641a
Also replace in poms and docs metadata
2024-10-01 08:49:16 +01:00
Dave Syer
51bf868164
Also update docs with official name
2024-10-01 08:47:18 +01:00
fengli79
ceb9d0f2d8
Update the README.md with official name of gRPC.
2024-10-01 08:26:26 +01:00
Chris Bono
e7fa5709e2
Rename configurer to customizer
...
This commit renames GrpcServerConfigurer to ServerBuilderCustomizer.
2024-09-26 08:36:39 +01:00
Chris Bono
5f4fa5204d
Add back in @ConditionalOnBean to auto-config
...
Also adds auto-configuration tests for server.
2024-09-24 16:12:12 +01:00
Chris Bono
5bc8a8c3a2
Revert ApplicationEventPublisherAware
2024-09-24 16:12:12 +01:00
Chris Bono
c04800aca4
Remove unused GrpcServiceDiscoverer
2024-09-24 16:12:12 +01:00
Chris Bono
bb60c8fcaa
Simplify server auto-configuration
...
This simplifies the server-side auto-configuration as follows:
- delete svc discover abstraction (use ObjectProvider for now)
- use single AC class
2024-09-24 16:12:12 +01:00
Chris Bono
32286cfbed
Add format plugin to samples
...
This adds the spring-javaformat plugin to the samples
module. The motivation is as follows:
- Keep the samples in the Spring recommended format
- Allow running `./mvnw spring-javaformat:apply` at project root
2024-09-23 07:45:45 +01:00
Chris Bono
422289e800
[CI] Add CI for PRs
2024-09-23 07:45:45 +01:00
Dave Syer
0535606a86
Fix link
2024-09-20 08:25:58 +01:00
Dave Syer
f38a16fee9
Add support for external client (channel) config
...
Fixes #11
2024-09-16 13:25:29 +01:00
Dave Syer
9c20aa0ea0
Distinguish between available and epollable
2024-09-16 11:46:49 +01:00
Dave Syer
1bdcee5930
Add path parameter to GrpcChannelConfigurer
2024-09-12 12:28:44 +01:00
Dave Syer
e9e2466714
Rename action
2024-09-12 09:18:32 +01:00
Dave Syer
5e37f189d1
Make server autoconfig depend on existence of services
2024-09-11 08:19:05 +01:00
Dave Syer
cf0e396fcd
Support for non-default address spring.grpc.server
2024-09-10 14:01:01 +01:00
Dave Syer
f47a710c2d
Add docs workflow
2024-09-10 08:47:09 +01:00
Dave Syer
777180db30
Add support for unix domain sockets
2024-09-09 15:41:24 +01:00
Dave Syer
2249f6e2b3
Support for @LocalGrpcPort in @Lazy beans
2024-09-09 13:26:05 +01:00
Dave Syer
e418bef34e
Add channel configurers (global beans)
2024-09-09 12:55:05 +01:00
Dave Syer
4d948d180f
Store channels as map so they can be cached
2024-09-09 11:06:14 +01:00
Dave Syer
a406f7dc2f
Add basic GrpcChannelFactory implementation
2024-09-09 10:52:36 +01:00
Dave Syer
6323cf9d86
Simplify through use of grpc builder APIs
2024-09-09 09:10:46 +01:00
Dave Syer
4beb624978
Remove unimplemented config properties
2024-09-06 11:57:35 +01:00
Dave Syer
f4d7625de8
Rename package
2024-09-06 11:56:07 +01:00
Dave Syer
aeef454cb0
Add basic autoconfiguration for server and sample
2024-09-06 09:29:45 +01:00
Dave Syer
c3a8eed64f
Add server sample
2024-09-05 13:12:34 +01:00