Skip to content

Commit fd6b233

Browse files
committed
Sync documentation of main branch
1 parent f6bc733 commit fd6b233

File tree

8 files changed

+264
-43
lines changed

8 files changed

+264
-43
lines changed

_generated-doc/main/config/quarkus-all-config.adoc

Lines changed: 63 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -24172,6 +24172,27 @@ endif::add-copy-button-to-env-var[]
2417224172
|boolean
2417324173
|`false`
2417424174

24175+
a| [[quarkus-hibernate-orm_quarkus-hibernate-orm-request-scoped-enabled]] [.property-path]##link:#quarkus-hibernate-orm_quarkus-hibernate-orm-request-scoped-enabled[`quarkus.hibernate-orm.request-scoped.enabled`]##
24176+
ifdef::add-copy-button-to-config-props[]
24177+
config_property_copy_button:+++quarkus.hibernate-orm.request-scoped.enabled+++[]
24178+
endif::add-copy-button-to-config-props[]
24179+
24180+
24181+
[.description]
24182+
--
24183+
Enable or disable access to a Hibernate ORM `EntityManager`/`Session`/`StatelessSession` ++*++when no transaction is active++*++ but a request scope is. When enabled, the corresponding sessions will be read-only. Defaults to enabled for backwards compatibility, but disabling this is recommended, to avoid inconsistent resulsts caused by queries running outside of transactions.
24184+
24185+
24186+
ifdef::add-copy-button-to-env-var[]
24187+
Environment variable: env_var_with_copy_button:+++QUARKUS_HIBERNATE_ORM_REQUEST_SCOPED_ENABLED+++[]
24188+
endif::add-copy-button-to-env-var[]
24189+
ifndef::add-copy-button-to-env-var[]
24190+
Environment variable: `+++QUARKUS_HIBERNATE_ORM_REQUEST_SCOPED_ENABLED+++`
24191+
endif::add-copy-button-to-env-var[]
24192+
--
24193+
|boolean
24194+
|`true`
24195+
2417524196
a|icon:lock[title=Fixed at build time] [[quarkus-hibernate-orm_quarkus-hibernate-orm-datasource]] [.property-path]##link:#quarkus-hibernate-orm_quarkus-hibernate-orm-datasource[`quarkus.hibernate-orm.datasource`]##
2417624197
ifdef::add-copy-button-to-config-props[]
2417724198
config_property_copy_button:+++quarkus.hibernate-orm.datasource+++[]
@@ -61516,6 +61537,27 @@ endif::add-copy-button-to-env-var[]
6151661537
|boolean
6151761538
|`true`
6151861539

61540+
a|icon:lock[title=Fixed at build time] [[quarkus-messaging_quarkus-messaging-request-scoped-enabled]] [.property-path]##link:#quarkus-messaging_quarkus-messaging-request-scoped-enabled[`quarkus.messaging.request-scoped.enabled`]##
61541+
ifdef::add-copy-button-to-config-props[]
61542+
config_property_copy_button:+++quarkus.messaging.request-scoped.enabled+++[]
61543+
endif::add-copy-button-to-config-props[]
61544+
61545+
61546+
[.description]
61547+
--
61548+
Whether to enable the RequestScope context on a message context
61549+
61550+
61551+
ifdef::add-copy-button-to-env-var[]
61552+
Environment variable: env_var_with_copy_button:+++QUARKUS_MESSAGING_REQUEST_SCOPED_ENABLED+++[]
61553+
endif::add-copy-button-to-env-var[]
61554+
ifndef::add-copy-button-to-env-var[]
61555+
Environment variable: `+++QUARKUS_MESSAGING_REQUEST_SCOPED_ENABLED+++`
61556+
endif::add-copy-button-to-env-var[]
61557+
--
61558+
|boolean
61559+
|`false`
61560+
6151961561
a|icon:lock[title=Fixed at build time] [[quarkus-messaging_quarkus-messaging-metrics-enabled]] [.property-path]##link:#quarkus-messaging_quarkus-messaging-metrics-enabled[`quarkus.messaging.metrics.enabled`]##
6152061562
ifdef::add-copy-button-to-config-props[]
6152161563
config_property_copy_button:+++quarkus.messaging.metrics.enabled+++[]
@@ -84388,27 +84430,6 @@ h|[.extension-name]##RESTEasy Classic##
8438884430
h|Type
8438984431
h|Default
8439084432

84391-
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size[`quarkus.resteasy.vertx.response-buffer-size`]##
84392-
ifdef::add-copy-button-to-config-props[]
84393-
config_property_copy_button:+++quarkus.resteasy.vertx.response-buffer-size+++[]
84394-
endif::add-copy-button-to-config-props[]
84395-
84396-
84397-
[.description]
84398-
--
84399-
The size of the output stream response buffer. If a response is larger than this and no content-length is provided then the request will be chunked. Larger values may give slight performance increases for large responses, at the expense of more memory usage.
84400-
84401-
84402-
ifdef::add-copy-button-to-env-var[]
84403-
Environment variable: env_var_with_copy_button:+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++[]
84404-
endif::add-copy-button-to-env-var[]
84405-
ifndef::add-copy-button-to-env-var[]
84406-
Environment variable: `+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++`
84407-
endif::add-copy-button-to-env-var[]
84408-
--
84409-
|int
84410-
|`8191`
84411-
8441284433
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-gzip-enabled]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-gzip-enabled[`quarkus.resteasy.gzip.enabled`]##
8441384434
ifdef::add-copy-button-to-config-props[]
8441484435
config_property_copy_button:+++quarkus.resteasy.gzip.enabled+++[]
@@ -84453,6 +84474,27 @@ endif::add-copy-button-to-env-var[]
8445384474
|MemorySize link:#memory-size-note-anchor-all-config[icon:question-circle[title=More information about the MemorySize format]]
8445484475
|`10M`
8445584476

84477+
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size[`quarkus.resteasy.vertx.response-buffer-size`]##
84478+
ifdef::add-copy-button-to-config-props[]
84479+
config_property_copy_button:+++quarkus.resteasy.vertx.response-buffer-size+++[]
84480+
endif::add-copy-button-to-config-props[]
84481+
84482+
84483+
[.description]
84484+
--
84485+
The size of the output stream response buffer. If a response is larger than this and no content-length is provided then the request will be chunked. Larger values may give slight performance increases for large responses, at the expense of more memory usage.
84486+
84487+
84488+
ifdef::add-copy-button-to-env-var[]
84489+
Environment variable: env_var_with_copy_button:+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++[]
84490+
endif::add-copy-button-to-env-var[]
84491+
ifndef::add-copy-button-to-env-var[]
84492+
Environment variable: `+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++`
84493+
endif::add-copy-button-to-env-var[]
84494+
--
84495+
|int
84496+
|`8191`
84497+
8445684498
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-json-json-default]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-json-json-default[`quarkus.resteasy-json.json-default`]##
8445784499
ifdef::add-copy-button-to-config-props[]
8445884500
config_property_copy_button:+++quarkus.resteasy-json.json-default+++[]

_generated-doc/main/config/quarkus-hibernate-orm.adoc

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,27 @@ endif::add-copy-button-to-env-var[]
116116
|boolean
117117
|`false`
118118

119+
a| [[quarkus-hibernate-orm_quarkus-hibernate-orm-request-scoped-enabled]] [.property-path]##link:#quarkus-hibernate-orm_quarkus-hibernate-orm-request-scoped-enabled[`quarkus.hibernate-orm.request-scoped.enabled`]##
120+
ifdef::add-copy-button-to-config-props[]
121+
config_property_copy_button:+++quarkus.hibernate-orm.request-scoped.enabled+++[]
122+
endif::add-copy-button-to-config-props[]
123+
124+
125+
[.description]
126+
--
127+
Enable or disable access to a Hibernate ORM `EntityManager`/`Session`/`StatelessSession` ++*++when no transaction is active++*++ but a request scope is. When enabled, the corresponding sessions will be read-only. Defaults to enabled for backwards compatibility, but disabling this is recommended, to avoid inconsistent resulsts caused by queries running outside of transactions.
128+
129+
130+
ifdef::add-copy-button-to-env-var[]
131+
Environment variable: env_var_with_copy_button:+++QUARKUS_HIBERNATE_ORM_REQUEST_SCOPED_ENABLED+++[]
132+
endif::add-copy-button-to-env-var[]
133+
ifndef::add-copy-button-to-env-var[]
134+
Environment variable: `+++QUARKUS_HIBERNATE_ORM_REQUEST_SCOPED_ENABLED+++`
135+
endif::add-copy-button-to-env-var[]
136+
--
137+
|boolean
138+
|`true`
139+
119140
a|icon:lock[title=Fixed at build time] [[quarkus-hibernate-orm_quarkus-hibernate-orm-datasource]] [.property-path]##link:#quarkus-hibernate-orm_quarkus-hibernate-orm-datasource[`quarkus.hibernate-orm.datasource`]##
120141
ifdef::add-copy-button-to-config-props[]
121142
config_property_copy_button:+++quarkus.hibernate-orm.datasource+++[]

_generated-doc/main/config/quarkus-hibernate-orm_quarkus.hibernate-orm.adoc

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,27 @@ endif::add-copy-button-to-env-var[]
116116
|boolean
117117
|`false`
118118

119+
a| [[quarkus-hibernate-orm_quarkus-hibernate-orm-request-scoped-enabled]] [.property-path]##link:#quarkus-hibernate-orm_quarkus-hibernate-orm-request-scoped-enabled[`quarkus.hibernate-orm.request-scoped.enabled`]##
120+
ifdef::add-copy-button-to-config-props[]
121+
config_property_copy_button:+++quarkus.hibernate-orm.request-scoped.enabled+++[]
122+
endif::add-copy-button-to-config-props[]
123+
124+
125+
[.description]
126+
--
127+
Enable or disable access to a Hibernate ORM `EntityManager`/`Session`/`StatelessSession` ++*++when no transaction is active++*++ but a request scope is. When enabled, the corresponding sessions will be read-only. Defaults to enabled for backwards compatibility, but disabling this is recommended, to avoid inconsistent resulsts caused by queries running outside of transactions.
128+
129+
130+
ifdef::add-copy-button-to-env-var[]
131+
Environment variable: env_var_with_copy_button:+++QUARKUS_HIBERNATE_ORM_REQUEST_SCOPED_ENABLED+++[]
132+
endif::add-copy-button-to-env-var[]
133+
ifndef::add-copy-button-to-env-var[]
134+
Environment variable: `+++QUARKUS_HIBERNATE_ORM_REQUEST_SCOPED_ENABLED+++`
135+
endif::add-copy-button-to-env-var[]
136+
--
137+
|boolean
138+
|`true`
139+
119140
a|icon:lock[title=Fixed at build time] [[quarkus-hibernate-orm_quarkus-hibernate-orm-datasource]] [.property-path]##link:#quarkus-hibernate-orm_quarkus-hibernate-orm-datasource[`quarkus.hibernate-orm.datasource`]##
120141
ifdef::add-copy-button-to-config-props[]
121142
config_property_copy_button:+++quarkus.hibernate-orm.datasource+++[]

_generated-doc/main/config/quarkus-messaging.adoc

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,27 @@ endif::add-copy-button-to-env-var[]
4949
|boolean
5050
|`true`
5151

52+
a|icon:lock[title=Fixed at build time] [[quarkus-messaging_quarkus-messaging-request-scoped-enabled]] [.property-path]##link:#quarkus-messaging_quarkus-messaging-request-scoped-enabled[`quarkus.messaging.request-scoped.enabled`]##
53+
ifdef::add-copy-button-to-config-props[]
54+
config_property_copy_button:+++quarkus.messaging.request-scoped.enabled+++[]
55+
endif::add-copy-button-to-config-props[]
56+
57+
58+
[.description]
59+
--
60+
Whether to enable the RequestScope context on a message context
61+
62+
63+
ifdef::add-copy-button-to-env-var[]
64+
Environment variable: env_var_with_copy_button:+++QUARKUS_MESSAGING_REQUEST_SCOPED_ENABLED+++[]
65+
endif::add-copy-button-to-env-var[]
66+
ifndef::add-copy-button-to-env-var[]
67+
Environment variable: `+++QUARKUS_MESSAGING_REQUEST_SCOPED_ENABLED+++`
68+
endif::add-copy-button-to-env-var[]
69+
--
70+
|boolean
71+
|`false`
72+
5273
a|icon:lock[title=Fixed at build time] [[quarkus-messaging_quarkus-messaging-metrics-enabled]] [.property-path]##link:#quarkus-messaging_quarkus-messaging-metrics-enabled[`quarkus.messaging.metrics.enabled`]##
5374
ifdef::add-copy-button-to-config-props[]
5475
config_property_copy_button:+++quarkus.messaging.metrics.enabled+++[]

_generated-doc/main/config/quarkus-messaging_quarkus.messaging.adoc

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,27 @@ endif::add-copy-button-to-env-var[]
4949
|boolean
5050
|`true`
5151

52+
a|icon:lock[title=Fixed at build time] [[quarkus-messaging_quarkus-messaging-request-scoped-enabled]] [.property-path]##link:#quarkus-messaging_quarkus-messaging-request-scoped-enabled[`quarkus.messaging.request-scoped.enabled`]##
53+
ifdef::add-copy-button-to-config-props[]
54+
config_property_copy_button:+++quarkus.messaging.request-scoped.enabled+++[]
55+
endif::add-copy-button-to-config-props[]
56+
57+
58+
[.description]
59+
--
60+
Whether to enable the RequestScope context on a message context
61+
62+
63+
ifdef::add-copy-button-to-env-var[]
64+
Environment variable: env_var_with_copy_button:+++QUARKUS_MESSAGING_REQUEST_SCOPED_ENABLED+++[]
65+
endif::add-copy-button-to-env-var[]
66+
ifndef::add-copy-button-to-env-var[]
67+
Environment variable: `+++QUARKUS_MESSAGING_REQUEST_SCOPED_ENABLED+++`
68+
endif::add-copy-button-to-env-var[]
69+
--
70+
|boolean
71+
|`false`
72+
5273
a|icon:lock[title=Fixed at build time] [[quarkus-messaging_quarkus-messaging-metrics-enabled]] [.property-path]##link:#quarkus-messaging_quarkus-messaging-metrics-enabled[`quarkus.messaging.metrics.enabled`]##
5374
ifdef::add-copy-button-to-config-props[]
5475
config_property_copy_button:+++quarkus.messaging.metrics.enabled+++[]

_generated-doc/main/config/quarkus-resteasy_quarkus.resteasy.adoc

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,6 @@ h|[.header-title]##Configuration property##
77
h|Type
88
h|Default
99

10-
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size[`quarkus.resteasy.vertx.response-buffer-size`]##
11-
ifdef::add-copy-button-to-config-props[]
12-
config_property_copy_button:+++quarkus.resteasy.vertx.response-buffer-size+++[]
13-
endif::add-copy-button-to-config-props[]
14-
15-
16-
[.description]
17-
--
18-
The size of the output stream response buffer. If a response is larger than this and no content-length is provided then the request will be chunked. Larger values may give slight performance increases for large responses, at the expense of more memory usage.
19-
20-
21-
ifdef::add-copy-button-to-env-var[]
22-
Environment variable: env_var_with_copy_button:+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++[]
23-
endif::add-copy-button-to-env-var[]
24-
ifndef::add-copy-button-to-env-var[]
25-
Environment variable: `+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++`
26-
endif::add-copy-button-to-env-var[]
27-
--
28-
|int
29-
|`8191`
30-
3110
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-gzip-enabled]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-gzip-enabled[`quarkus.resteasy.gzip.enabled`]##
3211
ifdef::add-copy-button-to-config-props[]
3312
config_property_copy_button:+++quarkus.resteasy.gzip.enabled+++[]
@@ -72,6 +51,27 @@ endif::add-copy-button-to-env-var[]
7251
|MemorySize link:#memory-size-note-anchor-quarkus-resteasy_quarkus-resteasy[icon:question-circle[title=More information about the MemorySize format]]
7352
|`10M`
7453

54+
a|icon:lock[title=Fixed at build time] [[quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size]] [.property-path]##link:#quarkus-resteasy_quarkus-resteasy-vertx-response-buffer-size[`quarkus.resteasy.vertx.response-buffer-size`]##
55+
ifdef::add-copy-button-to-config-props[]
56+
config_property_copy_button:+++quarkus.resteasy.vertx.response-buffer-size+++[]
57+
endif::add-copy-button-to-config-props[]
58+
59+
60+
[.description]
61+
--
62+
The size of the output stream response buffer. If a response is larger than this and no content-length is provided then the request will be chunked. Larger values may give slight performance increases for large responses, at the expense of more memory usage.
63+
64+
65+
ifdef::add-copy-button-to-env-var[]
66+
Environment variable: env_var_with_copy_button:+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++[]
67+
endif::add-copy-button-to-env-var[]
68+
ifndef::add-copy-button-to-env-var[]
69+
Environment variable: `+++QUARKUS_RESTEASY_VERTX_RESPONSE_BUFFER_SIZE+++`
70+
endif::add-copy-button-to-env-var[]
71+
--
72+
|int
73+
|`8191`
74+
7575
|===
7676

7777
ifndef::no-memory-size-note[]

_versions/main/guides/messaging.adoc

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -562,6 +562,7 @@ public class StreamProcessor {
562562
}
563563
----
564564

565+
[[execution_model]]
565566
== Execution Model
566567

567568
Quarkus Messaging sits on top of the xref:quarkus-reactive-architecture.adoc#engine[reactive engine] of Quarkus and leverages link:{eclipse-vertx}[Eclipse Vert.x] to dispatch messages for processing.
@@ -634,6 +635,100 @@ Depending on the broker technology, this can be useful to increase the applicati
634635
while still preserving the partial order of messages received in different copies.
635636
This is the case, for example, for Kafka, where multiple consumers can consume different topic partitions.
636637

638+
== Context Propagation
639+
640+
In Quarkus Messaging, the default mechanism for propagating context between different processing stages is the
641+
link:https://smallrye.io/smallrye-reactive-messaging/latest/concepts/message-context[message context].
642+
This provides a consistent way to pass context information along with the message as it flows through different stages.
643+
644+
=== Interaction with Mutiny and MicroProfile Context Propagation
645+
646+
Mutiny, which is the foundation of reactive programming in Quarkus, is integrated with the MicroProfile Context Propagation.
647+
This integration enables automatic capturing and restoring of context across asynchronous boundaries.
648+
To learn more about context propagation in Quarkus and Mutiny, refer to the xref:context-propagation.adoc[Context Propagation] guide.
649+
650+
However, Quarkus Messaging needs to coordinate multiple asynchronous boundaries.
651+
This is why the default context propagation can result in unexpected behavior in some cases, especially using `Emitters`.
652+
653+
To ensure consistent behavior, Quarkus Messaging disables the propagation of any context during message dispatching, through internal channels or connectors.
654+
This means that Emitters won't capture the caller context, and incoming channels won't dispatch messages by activating a context (ex. the request context).
655+
656+
For example, you might want to propagate the caller context from an incoming HTTP request to the message processing stage.
657+
For emitters, instead of using the regular `Emitter` or `MutinyEmitter`, you can inject the `ContextualEmitter` to make sure the message captures the caller context.
658+
This ensures consistent and predictable behaviour by relying on the message context handling provided by the framework.
659+
660+
For example, let `RequestScopedBean` a request-scoped bean, `ContextualEmitter` can be used to dispatch messages locally through the internal channel `app`:
661+
662+
[source, java]
663+
----
664+
import jakarta.inject.Inject;
665+
import jakarta.ws.rs.Consumes;
666+
import jakarta.ws.rs.POST;
667+
import jakarta.ws.rs.Path;
668+
import jakarta.ws.rs.core.MediaType;
669+
670+
import org.eclipse.microprofile.reactive.messaging.Channel;
671+
672+
import io.quarkus.logging.Log;
673+
import io.quarkus.smallrye.reactivemessaging.runtime.ContextualEmitter;
674+
import io.smallrye.mutiny.Uni;
675+
import io.vertx.core.Context;
676+
import io.vertx.core.Vertx;
677+
678+
@Path("/")
679+
public class Resource {
680+
681+
@Channel("app")
682+
ContextualEmitter<String> emitter;
683+
684+
@Inject
685+
RequestScopedBean requestScopedBean;
686+
687+
@POST
688+
@Path("/send")
689+
public void send(String message) {
690+
requestScopedBean.setValue("Hello");
691+
emitter.sendAndAwait(message);
692+
}
693+
694+
}
695+
----
696+
697+
Then the request-scoped bean can be accessed in the message processing stage, regardless of the <<execution_model>>:
698+
699+
[source, java]
700+
----
701+
import jakarta.enterprise.context.ApplicationScoped;
702+
import jakarta.inject.Inject;
703+
704+
import org.eclipse.microprofile.reactive.messaging.Incoming;
705+
706+
import io.quarkus.logging.Log;
707+
import io.smallrye.reactive.messaging.annotations.Blocking;
708+
709+
710+
@ApplicationScoped
711+
public class Processor {
712+
713+
@Inject
714+
RequestScopedBean requestScopedBean;
715+
716+
@Incoming("app")
717+
@Blocking
718+
public void process(String message) {
719+
Log.infof("Message %s from request %s", message, requestScopedBean.getValue());
720+
}
721+
722+
}
723+
----
724+
725+
=== Request Context Activation
726+
727+
In some cases, you might need to activate the request context while processing messages consumed from a broker.
728+
While using `@ActivateRequestContext` on the `@Incoming` method is an option, it's lifecycle does not follow that of a Quarkus Messaging message.
729+
For incoming channels, you can enable the request scope activation with the build time property `quarkus.messaging.request-scoped.enabled=true`.
730+
This will activate the request context for each message processed by the incoming channel, and close the context once the message is processed.
731+
637732
== Health Checks
638733

639734
Together with the SmallRye Health extension, Quarkus Messaging extensions provide health check support per channel.

_versions/main/guides/tls-registry-reference.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1151,7 +1151,7 @@ Note that the generated CA is only valid for development purposes and can only b
11511151
To generate a development CA:
11521152
[source,shell]
11531153
----
1154-
quarkus tls generate-ca-certificate --install \ <1>
1154+
quarkus tls generate-quarkus-ca --install \ <1>
11551155
--renew \ <2>
11561156
--truststore <3>
11571157
----

0 commit comments

Comments
 (0)