2018-03-08 15:46:38 -05:00
|
|
|
# Wildcard Syntax
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2015-04-27 17:32:30 -04:00
|
|
|
Apache ActiveMQ Artemis uses a specific syntax for representing wildcards in security
|
2014-12-04 10:25:29 -05:00
|
|
|
settings, address settings and when creating consumers.
|
|
|
|
|
2017-12-22 16:25:21 -05:00
|
|
|
The syntax is similar to that used by [AMQP](https://www.amqp.org).
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2015-04-27 17:32:30 -04:00
|
|
|
An Apache ActiveMQ Artemis wildcard expression contains words delimited by the character
|
2022-01-22 01:16:50 -05:00
|
|
|
`.` (full stop).
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2022-01-22 01:16:50 -05:00
|
|
|
The special characters `#` and `*` also have special meaning and can
|
2014-12-04 10:25:29 -05:00
|
|
|
take the place of a word.
|
|
|
|
|
2022-01-22 01:16:50 -05:00
|
|
|
The character `#` means "match any sequence of zero or more words".
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2022-01-22 01:16:50 -05:00
|
|
|
The character `*` means "match a single word".
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2022-01-22 01:16:50 -05:00
|
|
|
So the wildcard `news.europe.#` would match `news.europe`,
|
|
|
|
`news.europe.sport`, `news.europe.politics`, and
|
|
|
|
`news.europe.politics.regional` but would _not_ match `news.usa`,
|
|
|
|
`news.usa.sport` or `entertainment`.
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2022-01-22 01:16:50 -05:00
|
|
|
The wildcard `news.*` would match `news.europe`, but not
|
|
|
|
`news.europe.sport`.
|
2014-12-04 10:25:29 -05:00
|
|
|
|
2022-01-22 01:16:50 -05:00
|
|
|
The wildcard `news.*.sport` would match `news.europe.sport` and also
|
|
|
|
`news.usa.sport`, but not `news.europe.politics`.
|
2016-12-23 06:02:30 -05:00
|
|
|
|
2018-03-08 15:46:38 -05:00
|
|
|
## Customizing the Syntax
|
2016-12-23 06:02:30 -05:00
|
|
|
|
|
|
|
It's possible to further configure the syntax of the wildcard addresses using the broker configuration.
|
|
|
|
For that, the `<wildcard-addresses>` configuration tag is used.
|
|
|
|
|
2018-03-08 15:46:38 -05:00
|
|
|
```xml
|
|
|
|
<wildcard-addresses>
|
|
|
|
<routing-enabled>true</routing-enabled>
|
|
|
|
<delimiter>.</delimiter>
|
|
|
|
<any-words>#</any-words>
|
|
|
|
<single-word>*</single-word>
|
|
|
|
</wildcard-addresses>
|
|
|
|
```
|
2016-12-23 06:02:30 -05:00
|
|
|
|
|
|
|
The example above shows the default configuration.
|