File tree Expand file tree Collapse file tree 2 files changed +19
-8
lines changed
spring-context/src/main/java/org/springframework/context/event Expand file tree Collapse file tree 2 files changed +19
-8
lines changed Original file line number Diff line number Diff line change 1
1
/*
2
- * Copyright 2002-2015 the original author or authors.
2
+ * Copyright 2002-2016 the original author or authors.
3
3
*
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
87
87
/**
88
88
* Spring Expression Language (SpEL) attribute used for making the
89
89
* event handling conditional.
90
- * <p>Default is "", meaning the event is always handled.
90
+ * <p>Default is {@code ""}, meaning the event is always handled.
91
+ * <p>The SpEL expression evaluates against a dedicated context that
92
+ * provides the following meta-data:
93
+ * <ul>
94
+ * <li>{@code #root.event}, {@code #root.args} for
95
+ * references to the {@link ApplicationEvent} and method arguments
96
+ * respectively.</li>
97
+ * <li>Method arguments can be accessed by index. For instance the
98
+ * first argument can be accessed via {@code #root.args[0]}, {@code #p0}
99
+ * or {@code #a0}. Arguments can also be accessed by name if that
100
+ * information is available.</li>
101
+ * </ul>
91
102
*/
92
103
String condition () default "" ;
93
104
Original file line number Diff line number Diff line change @@ -8281,8 +8281,8 @@ event is equal to `foo`:
8281
8281
[source,java,indent=0]
8282
8282
[subs="verbatim,quotes"]
8283
8283
----
8284
- @EventListener(condition = "#event .test == 'foo'")
8285
- public void processBlackListEvent(BlackListEvent event ) {
8284
+ @EventListener(condition = "#blEvent .test == 'foo'")
8285
+ public void processBlackListEvent(BlackListEvent blEvent ) {
8286
8286
// notify appropriate parties via notificationAddress...
8287
8287
}
8288
8288
----
@@ -8295,22 +8295,22 @@ available to the context so one can use them for conditional event processing:
8295
8295
|===
8296
8296
| Name| Location| Description| Example
8297
8297
8298
- | event
8298
+ | Event
8299
8299
| root object
8300
8300
| The actual `ApplicationEvent`
8301
8301
| `#root.event`
8302
8302
8303
- | args
8303
+ | Arguments array
8304
8304
| root object
8305
8305
| The arguments (as array) used for invoking the target
8306
8306
| `#root.args[0]`
8307
8307
8308
- | __argument name__
8308
+ | __Argument name__
8309
8309
| evaluation context
8310
8310
| Name of any of the method arguments. If for some reason the names are not available
8311
8311
(e.g. no debug information), the argument names are also available under the `#a<#arg>`
8312
8312
where __#arg__ stands for the argument index (starting from 0).
8313
- | `#iban ` or `#a0` (one can also use `#p0` or `#p<#arg>` notation as an alias).
8313
+ | `#blEvent ` or `#a0` (one can also use `#p0` or `#p<#arg>` notation as an alias).
8314
8314
|===
8315
8315
8316
8316
Note that `#root.event` allows you to access to the underlying event, even if your method
You can’t perform that action at this time.
0 commit comments