Skip to content

Commit

Permalink
Sync web site with Quarkus documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
quarkusbot committed Nov 6, 2024
1 parent 38106be commit acd2514
Show file tree
Hide file tree
Showing 20 changed files with 132 additions and 21 deletions.
46 changes: 45 additions & 1 deletion _generated-doc/latest/config/quarkus-all-config.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -12195,6 +12195,27 @@ endif::add-copy-button-to-env-var[]
|string
|`X-Forwarded-Prefix`

a| [[quarkus-vertx-http_quarkus-http-proxy-enable-trusted-proxy-header]] [.property-path]##link:#quarkus-vertx-http_quarkus-http-proxy-enable-trusted-proxy-header[`quarkus.http.proxy.enable-trusted-proxy-header`]##

[.description]
--
Adds the header `X-Forwarded-Trusted-Proxy` if the request is forwarded by a trusted proxy. The value is `true` if the request is forwarded by a trusted proxy, otherwise `null`.

The forwarded parser detects forgery attempts and if the incoming request contains this header, it will be removed from the request.

The `X-Forwarded-Trusted-Proxy` header is a custom header, not part of the standard `Forwarded` header.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_HTTP_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++[]
endif::add-copy-button-to-env-var[]
ifndef::add-copy-button-to-env-var[]
Environment variable: `+++QUARKUS_HTTP_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++`
endif::add-copy-button-to-env-var[]
--
|boolean
|`false`

a| [[quarkus-vertx-http_quarkus-http-proxy-trusted-proxies]] [.property-path]##link:#quarkus-vertx-http_quarkus-http-proxy-trusted-proxies[`quarkus.http.proxy.trusted-proxies`]##

[.description]
Expand Down Expand Up @@ -13528,6 +13549,27 @@ endif::add-copy-button-to-env-var[]
|string
|`X-Forwarded-Prefix`

a| [[quarkus-vertx-http_quarkus-management-proxy-enable-trusted-proxy-header]] [.property-path]##link:#quarkus-vertx-http_quarkus-management-proxy-enable-trusted-proxy-header[`quarkus.management.proxy.enable-trusted-proxy-header`]##

[.description]
--
Adds the header `X-Forwarded-Trusted-Proxy` if the request is forwarded by a trusted proxy. The value is `true` if the request is forwarded by a trusted proxy, otherwise `null`.

The forwarded parser detects forgery attempts and if the incoming request contains this header, it will be removed from the request.

The `X-Forwarded-Trusted-Proxy` header is a custom header, not part of the standard `Forwarded` header.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_MANAGEMENT_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++[]
endif::add-copy-button-to-env-var[]
ifndef::add-copy-button-to-env-var[]
Environment variable: `+++QUARKUS_MANAGEMENT_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++`
endif::add-copy-button-to-env-var[]
--
|boolean
|`false`

a| [[quarkus-vertx-http_quarkus-management-proxy-trusted-proxies]] [.property-path]##link:#quarkus-vertx-http_quarkus-management-proxy-trusted-proxies[`quarkus.management.proxy.trusted-proxies`]##

[.description]
Expand Down Expand Up @@ -62600,6 +62642,8 @@ a| [[quarkus-quartz_quarkus-quartz-thread-count]] [.property-path]##link:#quarku
--
The size of scheduler thread pool. This will initialize the number of worker threads in the pool.

It's important to bear in mind that Quartz threads are not used to execute scheduled methods, instead the regular Quarkus thread pool is used by default. See also `quarkus.quartz.run-blocking-scheduled-method-on-quartz-thread`.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_QUARTZ_THREAD_COUNT+++[]
Expand All @@ -62609,7 +62653,7 @@ Environment variable: `+++QUARKUS_QUARTZ_THREAD_COUNT+++`
endif::add-copy-button-to-env-var[]
--
|int
|`25`
|`10`

a| [[quarkus-quartz_quarkus-quartz-thread-priority]] [.property-path]##link:#quarkus-quartz_quarkus-quartz-thread-priority[`quarkus.quartz.thread-priority`]##

Expand Down
4 changes: 3 additions & 1 deletion _generated-doc/latest/config/quarkus-quartz.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,8 @@ a| [[quarkus-quartz_quarkus-quartz-thread-count]] [.property-path]##link:#quarku
--
The size of scheduler thread pool. This will initialize the number of worker threads in the pool.

It's important to bear in mind that Quartz threads are not used to execute scheduled methods, instead the regular Quarkus thread pool is used by default. See also `quarkus.quartz.run-blocking-scheduled-method-on-quartz-thread`.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_QUARTZ_THREAD_COUNT+++[]
Expand All @@ -235,7 +237,7 @@ Environment variable: `+++QUARKUS_QUARTZ_THREAD_COUNT+++`
endif::add-copy-button-to-env-var[]
--
|int
|`25`
|`10`

a| [[quarkus-quartz_quarkus-quartz-thread-priority]] [.property-path]##link:#quarkus-quartz_quarkus-quartz-thread-priority[`quarkus.quartz.thread-priority`]##

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -226,6 +226,8 @@ a| [[quarkus-quartz_quarkus-quartz-thread-count]] [.property-path]##link:#quarku
--
The size of scheduler thread pool. This will initialize the number of worker threads in the pool.

It's important to bear in mind that Quartz threads are not used to execute scheduled methods, instead the regular Quarkus thread pool is used by default. See also `quarkus.quartz.run-blocking-scheduled-method-on-quartz-thread`.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_QUARTZ_THREAD_COUNT+++[]
Expand All @@ -235,7 +237,7 @@ Environment variable: `+++QUARKUS_QUARTZ_THREAD_COUNT+++`
endif::add-copy-button-to-env-var[]
--
|int
|`25`
|`10`

a| [[quarkus-quartz_quarkus-quartz-thread-priority]] [.property-path]##link:#quarkus-quartz_quarkus-quartz-thread-priority[`quarkus.quartz.thread-priority`]##

Expand Down
21 changes: 21 additions & 0 deletions _generated-doc/latest/config/quarkus-vertx-http_quarkus.http.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2947,6 +2947,27 @@ endif::add-copy-button-to-env-var[]
|string
|`X-Forwarded-Prefix`

a| [[quarkus-vertx-http_quarkus-http-proxy-enable-trusted-proxy-header]] [.property-path]##link:#quarkus-vertx-http_quarkus-http-proxy-enable-trusted-proxy-header[`quarkus.http.proxy.enable-trusted-proxy-header`]##

[.description]
--
Adds the header `X-Forwarded-Trusted-Proxy` if the request is forwarded by a trusted proxy. The value is `true` if the request is forwarded by a trusted proxy, otherwise `null`.

The forwarded parser detects forgery attempts and if the incoming request contains this header, it will be removed from the request.

The `X-Forwarded-Trusted-Proxy` header is a custom header, not part of the standard `Forwarded` header.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_HTTP_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++[]
endif::add-copy-button-to-env-var[]
ifndef::add-copy-button-to-env-var[]
Environment variable: `+++QUARKUS_HTTP_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++`
endif::add-copy-button-to-env-var[]
--
|boolean
|`false`

a| [[quarkus-vertx-http_quarkus-http-proxy-trusted-proxies]] [.property-path]##link:#quarkus-vertx-http_quarkus-http-proxy-trusted-proxies[`quarkus.http.proxy.trusted-proxies`]##

[.description]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1266,6 +1266,27 @@ endif::add-copy-button-to-env-var[]
|string
|`X-Forwarded-Prefix`

a| [[quarkus-vertx-http_quarkus-management-proxy-enable-trusted-proxy-header]] [.property-path]##link:#quarkus-vertx-http_quarkus-management-proxy-enable-trusted-proxy-header[`quarkus.management.proxy.enable-trusted-proxy-header`]##

[.description]
--
Adds the header `X-Forwarded-Trusted-Proxy` if the request is forwarded by a trusted proxy. The value is `true` if the request is forwarded by a trusted proxy, otherwise `null`.

The forwarded parser detects forgery attempts and if the incoming request contains this header, it will be removed from the request.

The `X-Forwarded-Trusted-Proxy` header is a custom header, not part of the standard `Forwarded` header.


ifdef::add-copy-button-to-env-var[]
Environment variable: env_var_with_copy_button:+++QUARKUS_MANAGEMENT_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++[]
endif::add-copy-button-to-env-var[]
ifndef::add-copy-button-to-env-var[]
Environment variable: `+++QUARKUS_MANAGEMENT_PROXY_ENABLE_TRUSTED_PROXY_HEADER+++`
endif::add-copy-button-to-env-var[]
--
|boolean
|`false`

a| [[quarkus-vertx-http_quarkus-management-proxy-trusted-proxies]] [.property-path]##link:#quarkus-vertx-http_quarkus-management-proxy-trusted-proxies[`quarkus.management.proxy.trusted-proxies`]##

[.description]
Expand Down
4 changes: 2 additions & 2 deletions _guides/_attributes.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Common attributes.
// --> No blank lines (it ends the document header)
:project-name: Quarkus
:quarkus-version: 3.16.1
:quarkus-version: 3.16.2
:quarkus-platform-groupid: io.quarkus.platform
// .
:maven-version: 3.9.9
Expand Down Expand Up @@ -41,7 +41,7 @@
:quarkus-blob-url: https://github.com/quarkusio/quarkus/blob/main
:quarkus-tree-url: https://github.com/quarkusio/quarkus/tree/main
:quarkus-issues-url: https://github.com/quarkusio/quarkus/issues
:quarkus-images-url: https://github.com/quarkusio/quarkus-images/tree
:quarkus-images-url: https://github.com/quarkusio/quarkus-images
:quarkus-chat-url: https://quarkusio.zulipchat.com
:quarkus-mailing-list-subscription-email: [email protected]
:quarkus-mailing-list-index: https://groups.google.com/d/forum/quarkus-dev
Expand Down
6 changes: 3 additions & 3 deletions _guides/deploying-to-google-cloud.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -60,14 +60,14 @@ Then, you will need to create a `src/main/appengine/app.yaml` file, let's keep i

[source, yaml]
----
runtime: java11
runtime: java21
----

This will create a default service for your App Engine application.

[NOTE]
====
You can also use the new Java 17 runtime by defining `runtime: java17` instead.
You can also use another Java runtime supported by App Engine, for example, for Java 17, use `runtime: java17` instead.
====

App Engine Standard does not support the default Quarkus' specific packaging layout, therefore, you must set up your application to be packaged as an uber-jar via your `application.properties` file:
Expand Down Expand Up @@ -114,7 +114,7 @@ First, add the plugin to your `pom.xml`:
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>2.4.4</version>
<version>2.7.0</version>
<configuration>
<projectId>GCLOUD_CONFIG</projectId> <1>
<version>gettingstarted</version>
Expand Down
2 changes: 1 addition & 1 deletion _guides/dev-ui.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -747,7 +747,7 @@ import 'qui-ide-link';
<qui-ide-link title='Source full class name'
class='text-source'
fileName='${sourceClassNameFull}'
lineNumber=${sourceLineNumber}>[${sourceClassNameFull}]</qui-ide-link>;
lineNumber='${sourceLineNumber}'>[${sourceClassNameFull}]</qui-ide-link>;
----

https://github.com/quarkusio/quarkus/blob/582f1f78806d2268885faea7aa8f5a4d2b3f5b98/extensions/vertx-http/dev-ui-resources/src/main/resources/dev-ui/qwc/qwc-server-log.js#L315[Example code]
Expand Down
4 changes: 4 additions & 0 deletions _guides/getting-started-reactive.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,10 @@ Create the `src/main/java/org/acme/hibernate/orm/panache/FruitResource.java` fil
----
package org.acme.hibernate.orm.panache;
import java.util.List;
import io.quarkus.panache.common.Sort;
import io.smallrye.mutiny.Uni;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.ws.rs.Path;
Expand Down
Binary file modified _guides/images/oidc-facebook-1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified _guides/images/oidc-facebook-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified _guides/images/oidc-facebook-3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified _guides/images/oidc-facebook-4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified _guides/images/oidc-facebook-5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified _guides/images/oidc-facebook-6.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
22 changes: 18 additions & 4 deletions _guides/mailer-reference.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,9 @@ To send a simple email, proceed as follows:
[source, java]
----
// Imperative API:
mailer.send(Mail.withText("[email protected]", "A simple email from quarkus", "This is my body."));
mailer.send(Mail.withText("[email protected]", "A simple email from quarkus", "This is my body.").setFrom("[email protected]"));
// Reactive API:
Uni<Void> stage = reactiveMailer.send(Mail.withText("[email protected]", "A reactive email from quarkus", "This is my body."));
Uni<Void> stage = reactiveMailer.send(Mail.withText("[email protected]", "A reactive email from quarkus", "This is my body.").setFrom("[email protected]"));
----

For example, you can use the `Mailer` in an HTTP endpoint as follows:
Expand All @@ -78,14 +78,14 @@ For example, you can use the `Mailer` in an HTTP endpoint as follows:
@GET
@Path("/imperative")
public void sendASimpleEmail() {
mailer.send(Mail.withText("[email protected]", "A simple email from quarkus", "This is my body"));
mailer.send(Mail.withText("[email protected]", "A simple email from quarkus", "This is my body").setFrom("[email protected]"));
}
@GET
@Path("/reactive")
public Uni<Void> sendASimpleEmailAsync() {
return reactiveMailer.send(
Mail.withText("[email protected]", "A reactive email from quarkus", "This is my body"));
Mail.withText("[email protected]", "A reactive email from quarkus", "This is my body").setFrom("[email protected]"));
}
----

Expand All @@ -96,6 +96,20 @@ You can create new `io.quarkus.mailer.Mail` instances from the constructor or fr
`Mail.withHtml` helper methods.
The `Mail` instance lets you add recipients (to, cc, or bcc), set the subject, headers, sender (from) address...

Most of these properties are optional, but the sender address is required. It can either be set on an individual `Mail` instances using

[source,java]
----
.setFrom("[email protected]");
----

or a global default can be configured, using

[source,properties]
----
[email protected]
----

You can also send several `Mail` objects in one call:

[source, java]
Expand Down
3 changes: 2 additions & 1 deletion _guides/mongodb-panache.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -707,7 +707,7 @@ TIP: Using `@BsonProperty` is not needed to define custom column mappings, as th

TIP: You can have your projection class extends from another class. In this case, the parent class also needs to have use `@ProjectionFor` annotation.

TIP: If you run Java 17+, records are a good fit for projection classes.
TIP: Records are a good fit for projection classes.

== Query debugging

Expand All @@ -724,6 +724,7 @@ quarkus.log.category."io.quarkus.mongodb.panache.common.runtime".level=DEBUG

MongoDB with Panache uses the link:{mongodb-doc-root-url}/fundamentals/data-formats/document-data-format-pojo/[PojoCodecProvider], with link:{mongodb-doc-root-url}/fundamentals/data-formats/document-data-format-pojo/#configure-the-driver-for-pojos[automatic POJO support],
to automatically convert your object to a BSON document.
This codec also supports Java records so you can use them for your entities or an attribute of your entities.

In case you encounter the `org.bson.codecs.configuration.CodecConfigurationException` exception, it means the codec is not able to
automatically convert your object.
Expand Down
3 changes: 2 additions & 1 deletion _guides/mongodb.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -570,7 +570,8 @@ public class CodecFruitService {
== The POJO Codec

The link:https://www.mongodb.com/docs/drivers/java/sync/current/fundamentals/data-formats/document-data-format-pojo/[POJO Codec] provides a set of annotations that enable the customization of
the way a POJO is mapped to a MongoDB collection and this codec is initialized automatically by Quarkus
the way a POJO is mapped to a MongoDB collection and this codec is initialized automatically by Quarkus.
This codec also supports Java records so you can use them for your POJOs or an attribute of your POJOs.

One of these annotations is the `@BsonDiscriminator` annotation that allows to storage multiple Java types in a single MongoDB collection by adding
a discriminator field inside the document. It can be useful when working with abstract types or interfaces.
Expand Down
4 changes: 2 additions & 2 deletions _guides/security-openid-connect-client-reference.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -1275,7 +1275,7 @@ public interface ProtectedResourceService {

Additionally, `AccessTokenRequestReactiveFilter` can support a complex application that needs to exchange the tokens before propagating them.

If you work with link:https://www.keycloak.org/docs/latest/securing_apps/#_token-exchange[Keycloak] or another OIDC provider that supports a link:https://tools.ietf.org/html/rfc8693[Token Exchange] token grant, then you can configure `AccessTokenRequestReactiveFilter` to exchange the token like this:
If you work with link:https://www.keycloak.org/securing-apps/token-exchange[Keycloak] or another OIDC provider that supports a link:https://tools.ietf.org/html/rfc8693[Token Exchange] token grant, then you can configure `AccessTokenRequestReactiveFilter` to exchange the token like this:

[source,properties]
----
Expand Down Expand Up @@ -1369,7 +1369,7 @@ Alternatively, `AccessTokenRequestFilter` can be registered automatically with a

==== Exchange token before propagation

If the current access token needs to be exchanged before propagation and you work with link:https://www.keycloak.org/docs/latest/securing_apps/#_token-exchange[Keycloak] or other OpenID Connect Provider which supports a link:https://tools.ietf.org/html/rfc8693[Token Exchange] token grant, then you can configure `AccessTokenRequestFilter` like this:
If the current access token needs to be exchanged before propagation and you work with link:https://www.keycloak.org/securing-apps/token-exchange[Keycloak] or other OpenID Connect Provider which supports a link:https://tools.ietf.org/html/rfc8693[Token Exchange] token grant, then you can configure `AccessTokenRequestFilter` like this:

[source,properties]
----
Expand Down
9 changes: 5 additions & 4 deletions _guides/security-openid-connect-providers.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -165,23 +165,24 @@ Facebook you will not be let you test your application on `localhost` like most
you will need to run it over HTTPS and make it publicly accessible, so for development purposes
you may want to use a service such as https://ngrok.com.

In order to set up OIDC for Facebook start by https://developers.facebook.com/apps/create/[Creating an application], select `None` as an app type, and press `Next`:
In order to set up OIDC for Facebook start by https://developers.facebook.com/apps/create/[Creating an application], select `Other` as an app type, and click `Next`.

image::oidc-facebook-1.png[role="thumb"]

Now enter an application name, and contact email, and press `Create app`:
Now choose your application type. For this guide choose `Consumer` and click `Next` until you reach the screen below. Now enter an application name, and contact email, and press `Create app`:

image::oidc-facebook-2.png[role="thumb"]

On the app page, click `Set up` on the `Facebook login` product:

image::oidc-facebook-3.png[role="thumb"]

Quick the `Quickstarts` page and click on `Facebook login > Settings` on the left menu:
On the `Quickstart` page click on `Facebook login > Settings` on the left menu:

image::oidc-facebook-4.png[role="thumb"]

Enter your `Redirect URIs` (set to `<host>/_renarde/security/oidc-success`) and press `Save changes`:
First click on `Get Advanced Access` to switch `public_profile` to advanced access.
Then enter your `Redirect URIs` (set to `<host>/facebook`) and press `Save changes`:

image::oidc-facebook-5.png[role="thumb"]

Expand Down

0 comments on commit acd2514

Please sign in to comment.