You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/06/18 18:23:36 UTC
[isis] branch ISIS-2750 updated (71ba561 -> 7738291)
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a change to branch ISIS-2750
in repository https://gitbox.apache.org/repos/asf/isis.git.
from 71ba561 ISIS-2750: further compile fixes
add ae695a6 Merge pull request #617 from apache/ISIS-2750
add 1b853bf ISIS-2751: fixes ModuleWithFixturesService
add abe678c ISIS-2751: fixes rebase edit issue
add 87c735e Merge pull request #618 from apache/ISIS-2751
new 7738291 ISIS-2750: fixes missed @Priority edits
The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.gitignore | 1 +
.../hooks/DomainServiceLayout_021-menuBar.adoc | 2 +-
...ntentMappingService_020-examples-and-usage.adoc | 4 +-
.../GridSystemService_020-examples-and-usage.adoc | 2 +-
.../RoutingService_020-examples-and-usage.adoc | 2 +-
.../refguide/modules/applib-svc/pages/about.adoc | 19 +-
.../how-to-handle-void-and-null-results.adoc | 2 +-
.../replacing-default-service-implementations.adoc | 6 +-
.../domain-services.adoc | 2 +-
.../inject-services.adoc | 2 +-
.../modules/fun/pages/ui/table-columns.adoc | 4 +-
.../main/adoc/modules/webapp/pages/webmodules.adoc | 12 +-
.../customui/vm/WhereInTheWorldVm-description.adoc | 2 +-
.../adoc/modules/secman/pages/setting-up.adoc | 2 +-
.../ui/components/markup/MarkupFieldFactory.java | 4 +-
.../ui/components/number/NumberFieldFactory.java | 4 +-
.../objectref/ObjectReferenceFieldFactory.java | 4 +-
.../ui/components/other/FallbackFieldFactory.java | 4 +-
.../components/temporal/TemporalFieldFactory.java | 4 +-
.../ui/components/text/TextFieldFactory.java | 4 +-
.../SpringServiceInjectOrderTest.java | 213 +++++++++++++--------
.../applib/modules/ModuleWithFixturesService.java | 90 ++++++---
.../modules/ROOT/pages/extending/custom-pages.adoc | 2 +-
23 files changed, 238 insertions(+), 153 deletions(-)
[isis] 01/01: ISIS-2750: fixes missed @Priority edits
Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch ISIS-2750
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 77382913cd5b666a4d4ee5c9b8d1e975e1312f50
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jun 18 19:22:45 2021 +0100
ISIS-2750: fixes missed @Priority edits
---
.gitignore | 1 +
.../hooks/DomainServiceLayout_021-menuBar.adoc | 2 +-
.../ContentMappingService_020-examples-and-usage.adoc | 4 ++--
.../GridSystemService_020-examples-and-usage.adoc | 2 +-
.../hooks/RoutingService_020-examples-and-usage.adoc | 2 +-
.../refguide/modules/applib-svc/pages/about.adoc | 19 +++++++++----------
.../how-to-handle-void-and-null-results.adoc | 2 +-
.../replacing-default-service-implementations.adoc | 6 +++---
.../domain-entities-and-services/domain-services.adoc | 2 +-
.../domain-entities-and-services/inject-services.adoc | 2 +-
.../userguide/modules/fun/pages/ui/table-columns.adoc | 4 ++--
.../main/adoc/modules/webapp/pages/webmodules.adoc | 12 ++++++------
.../customui/vm/WhereInTheWorldVm-description.adoc | 2 +-
.../secman/adoc/modules/secman/pages/setting-up.adoc | 2 +-
.../ui/components/markup/MarkupFieldFactory.java | 4 ++--
.../ui/components/number/NumberFieldFactory.java | 4 ++--
.../objectref/ObjectReferenceFieldFactory.java | 4 ++--
.../ui/components/other/FallbackFieldFactory.java | 4 ++--
.../ui/components/temporal/TemporalFieldFactory.java | 4 ++--
.../javafx/ui/components/text/TextFieldFactory.java | 4 ++--
.../bootstrapping/SpringServiceInjectOrderTest.java | 8 ++++----
.../modules/ROOT/pages/extending/custom-pages.adoc | 2 +-
22 files changed, 48 insertions(+), 48 deletions(-)
diff --git a/.gitignore b/.gitignore
index e561058..fe4da21 100644
--- a/.gitignore
+++ b/.gitignore
@@ -87,3 +87,4 @@ rebel.xml
_commit.sh
/incubator/clients/kroviz/package.json
+create-db-schema.sql
diff --git a/antora/components/refguide-index/modules/applib/pages/index/annotation/hooks/DomainServiceLayout_021-menuBar.adoc b/antora/components/refguide-index/modules/applib/pages/index/annotation/hooks/DomainServiceLayout_021-menuBar.adoc
index bba9a4d..a3a6788 100644
--- a/antora/components/refguide-index/modules/applib/pages/index/annotation/hooks/DomainServiceLayout_021-menuBar.adoc
+++ b/antora/components/refguide-index/modules/applib/pages/index/annotation/hooks/DomainServiceLayout_021-menuBar.adoc
@@ -24,7 +24,7 @@ In the xref:vw:ROOT:about.adoc[Web UI (Wicket viewer)], domain services placed:
* on the `SECONDARY` menu bar appear to the right:
* on the `TERTIARY` appear in the menu bar associated with the user's name (far top-right)
-The grouping of multiple domain services actions within a single drop-down is managed by the link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation.
+The grouping of multiple domain services actions within a single drop-down is managed by the `@javax.annotation.Priority` annotation.
NOTE: The xref:vro:ROOT:about.adoc[RestfulObjects viewer] does not support this attribute.
diff --git a/antora/components/refguide-index/modules/applib/pages/index/services/conmap/hooks/ContentMappingService_020-examples-and-usage.adoc b/antora/components/refguide-index/modules/applib/pages/index/services/conmap/hooks/ContentMappingService_020-examples-and-usage.adoc
index e62326f..d05fc53 100644
--- a/antora/components/refguide-index/modules/applib/pages/index/services/conmap/hooks/ContentMappingService_020-examples-and-usage.adoc
+++ b/antora/components/refguide-index/modules/applib/pages/index/services/conmap/hooks/ContentMappingService_020-examples-and-usage.adoc
@@ -9,8 +9,8 @@
The `ContentMappingService` supports the (default implementation of the) internal xref:refguide:viewer:index/restfulobjects/rendering/service/conneg/ContentNegotiationService.adoc[ContentNegotiationService] SPI enabling the xref:vro:ROOT:about.adoc[RestfulObjects viewer] to represent domain objects in some other format as specified by the HTTP `Accept` header.
For its part, the (default implementation of the) `ContentNegotiationService` will check _all_ available implementations of `ContentMappingService` to convert the domain object to the requested media type, rather than merely the first implementation found; in other words it uses the link:https://en.wikipedia.org/wiki/Chain-of-responsibility_pattern[chain-of-responsibility] pattern.
-Services are checked in the ordering defined by the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation.
-The mapped object used will be the first non-`null` result returned by an implementation.
+Services are checked in the ordering defined by the `@javax.annotation.Priority` annotation.
+The mapped object used will be the first (= earlies encountered) non-`null` result returned by an implementation.
== Related Services
diff --git a/antora/components/refguide-index/modules/applib/pages/index/services/grid/hooks/GridSystemService_020-examples-and-usage.adoc b/antora/components/refguide-index/modules/applib/pages/index/services/grid/hooks/GridSystemService_020-examples-and-usage.adoc
index b6bcade..3e98e1e 100644
--- a/antora/components/refguide-index/modules/applib/pages/index/services/grid/hooks/GridSystemService_020-examples-and-usage.adoc
+++ b/antora/components/refguide-index/modules/applib/pages/index/services/grid/hooks/GridSystemService_020-examples-and-usage.adoc
@@ -4,7 +4,7 @@
== Usage Notes
The framework will check _all_ available implementations of `GridSystemService` to obtain available grid systems, rather than merely the first implementation found, to determine if a grid is available for the domain object to be rendered; in other words it uses the link:https://en.wikipedia.org/wiki/Chain-of-responsibility_pattern[chain-of-responsibility] pattern.
-Services are called in the order defined by the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation).
+Services are called in the order defined by the `@javax.annotation.Priority` annotation.
Note though that each concrete implementation must also provide corresponding Wicket viewer components capable of interpreting the grid layout.
This is therefore a highly specialized and very deep customisation of the framework.
diff --git a/antora/components/refguide-index/modules/applib/pages/index/services/routing/hooks/RoutingService_020-examples-and-usage.adoc b/antora/components/refguide-index/modules/applib/pages/index/services/routing/hooks/RoutingService_020-examples-and-usage.adoc
index f9e7afc..e20226f 100644
--- a/antora/components/refguide-index/modules/applib/pages/index/services/routing/hooks/RoutingService_020-examples-and-usage.adoc
+++ b/antora/components/refguide-index/modules/applib/pages/index/services/routing/hooks/RoutingService_020-examples-and-usage.adoc
@@ -7,7 +7,7 @@
Unlike most other domain services, the framework will check _all_ available implementations of `RoutingService` to return a route, rather than the first implementation found; in other words it uses the chain-of-responsibility pattern.
-Services are called in the order defined by the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation (or equivalent).
+Services are called in the order defined by the `@javax.annotation.Priority` annotation.
The route used will be the result of the first implementation checked that declares that it can provide a route.
diff --git a/antora/components/refguide/modules/applib-svc/pages/about.adoc b/antora/components/refguide/modules/applib-svc/pages/about.adoc
index 594b917..5698c2e 100644
--- a/antora/components/refguide/modules/applib-svc/pages/about.adoc
+++ b/antora/components/refguide/modules/applib-svc/pages/about.adoc
@@ -20,9 +20,9 @@ What distinguishes API from SPI is primarily whether it is called by the domain
In one sense all API domain services are also SPI, in that they can be overridden by the domain programmer providing another domain service implementing the same type.
For example, the framework-provided implementation of xref:refguide:applib:index/services/repository/RepositoryService.adoc[RepositoryService] could be overridden this way, perhaps for more monitoring or caching purposes.
-This is most easily done using the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation.
+This is done using the `@javax.annotation.Priority` annotation.
-Generally speaking in such cases higher precedence implementation will be used instead of the framework-provided implementation.
+Generally speaking in such cases the earliest encountered implementation (= highest priority) will be used instead of the framework-provided implementation.
For some services, though, _all_ available implementations are delegated to; these are typically subscribers such as xref:refguide:applib:index/services/publishing/spi/EntityPropertyChangeSubscriber.adoc[EntityPropertyChangeSubscriber].
A small number of domain services can be considered both API and SPI; a good example is the xref:refguide:applib:index/services/email/EmailService.adoc[EmailService] that is of direct use for domain objects wishing to send out emails, but is also used by the framework to support the xref:vw:ROOT:features.adoc#user-registration[user registration] functionality supported by the xref:vw:ROOT:about.adoc[Web UI (Wicket viewer)].
@@ -98,14 +98,13 @@ Alternatively the object can be instantiated simply using `new`, then services i
The framework provides default implementations for many of the domain services.
This is convenient, but sometimes you will want to replace the default implementation with your own service implementation.
-This is most commonly done using the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation.
-Inspect the source code of the default implementation to determine which value to use.
-The xref:refguide:applib:index/annotation/OrderPrecedence.adoc[OrderPrecedence] class provides some pre-defined precedences.
+This is most commonly done using the `@javax.annotation.Priority` annotation.
+The xref:refguide:applib:index/annotation/PriorityPrecedence.adoc[PriorityPrecedence] class provides some pre-defined precedences.
+* If a scalar field is being injected to, the earliest implementation encountered (= highest priority) is used
+* If a list is being injected to, then all available implementations are injected, again with the beans with earlier precedences sorting before those with later precedences.
-Spring offers a number of other mechanisms to specify the ordering; these can also be used.
-
-For some domain services, all framework will delegate to all available implementation, using a chain-of-responsibility pattern):
+For some domain services, all framework will delegate to all available implementation (ie consumes a list of implementations), and uses a chain-of-responsibility pattern):
These include:
xref:refguide:applib:index/services/conmap/ContentMappingService.adoc[ContentMappingService],
@@ -119,7 +118,7 @@ The default implementation has these annotations:
----
@Service
@Named("isisWicketViewer.LocaleProviderWicket")
-@Order(OrderPrecedence.MIDPOINT)
+@Priority(PriorityPrecedence.MIDPOINT)
@Qualifier("Wicket")
@Log4j2
public class LocaleProviderWicket implements LocaleProvider { /* ... */ }
@@ -130,7 +129,7 @@ To override this, use something like:
[source,java]
----
@Service
-@Order(OrderPrecedence.HIGH)
+@Priority(PriorityPrecedence.EARLY)
public class MyLocaleProvider implements LocaleProvider { /* ... */ }
----
diff --git a/antora/components/userguide/modules/btb/pages/hints-and-tips/how-to-handle-void-and-null-results.adoc b/antora/components/userguide/modules/btb/pages/hints-and-tips/how-to-handle-void-and-null-results.adoc
index 026f9f5..73784dd 100644
--- a/antora/components/userguide/modules/btb/pages/hints-and-tips/how-to-handle-void-and-null-results.adoc
+++ b/antora/components/userguide/modules/btb/pages/hints-and-tips/how-to-handle-void-and-null-results.adoc
@@ -32,7 +32,7 @@ import org.springframework.stereotype.Service;
import lombok.val;
@Service
-@Order(OrderPrecedence.HIGH) // <.>
+@Priority(PriorityPrecedence.EARLY) // <.>
public class RoutingServiceUsingBreadcrumbs
extends RoutingServiceDefault {
@Override
diff --git a/antora/components/userguide/modules/btb/pages/hints-and-tips/replacing-default-service-implementations.adoc b/antora/components/userguide/modules/btb/pages/hints-and-tips/replacing-default-service-implementations.adoc
index 361549c..0b74e4a 100644
--- a/antora/components/userguide/modules/btb/pages/hints-and-tips/replacing-default-service-implementations.adoc
+++ b/antora/components/userguide/modules/btb/pages/hints-and-tips/replacing-default-service-implementations.adoc
@@ -10,7 +10,7 @@ The framework provides default implementations for many of the xref:refguide:app
This is convenient, but sometimes you will want to replace the default implementation with your own service implementation.
For example, suppose you wanted to provide your own implementation of xref:refguide:applib:index/services/i18n/LocaleProvider.adoc[LocaleProvider].
-The trick is to use the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation or equivalent mechanism.
+The trick is to use the `@javax.annotation.Priority` annotation.
Here's how:
@@ -20,7 +20,7 @@ import org.springframework.stereotype.Service;
import org.springframework.core.Ordered;
@Service
-@Order(OrderPrecedence.HIGH) // <.>
+@Priority(PriorityPrecedence.EARLY) // <.>
public class MyLocaleProvider implements LocaleProvider {
@Override
public Locale getLocale() {
@@ -41,7 +41,7 @@ import org.springframework.stereotype.Service;
import org.springframework.core.Ordered;
@Service
-@Order(OrderPrecedence.HIGHEST) // <.>
+@Priority(PriorityPrecedence.FIRST) // <.>
public class MyLocaleProvider implements LocaleProvider {
@Inject List<LocaleProvider> localeProviders; // <.>
diff --git a/antora/components/userguide/modules/fun/pages/domain-entities-and-services/domain-services.adoc b/antora/components/userguide/modules/fun/pages/domain-entities-and-services/domain-services.adoc
index 20bfe22..401c11e 100644
--- a/antora/components/userguide/modules/fun/pages/domain-entities-and-services/domain-services.adoc
+++ b/antora/components/userguide/modules/fun/pages/domain-entities-and-services/domain-services.adoc
@@ -15,7 +15,7 @@ xref:https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/
orxref:https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/stereotype/Repository.html[@Repository].
Apache Isis runs on top of Spring Boot, and relies on Spring Boot for dependency injection using `@javax.inject.Inject`.
-The Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation is used to prioritize multiple service implementations, effectively allowing any framework-provided domain service to be substituted out by a user-defined one with higher priority if required.
+The `@javax.annotation.Priority` annotation is used to prioritize multiple service implementations, effectively allowing any framework-provided domain service to be substituted out by a user-defined one encountered with an earlier precedence (= higher priority) if required.
This section looks at the programming model for writing your own domain services.
diff --git a/antora/components/userguide/modules/fun/pages/domain-entities-and-services/inject-services.adoc b/antora/components/userguide/modules/fun/pages/domain-entities-and-services/inject-services.adoc
index 5c04206..8a17e0c 100644
--- a/antora/components/userguide/modules/fun/pages/domain-entities-and-services/inject-services.adoc
+++ b/antora/components/userguide/modules/fun/pages/domain-entities-and-services/inject-services.adoc
@@ -163,7 +163,7 @@ public class DocumentService {
}
----
-These will be in the order as defined by the Spring link:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/annotation/Order.html[@Order] annotation.
+These will be in the order as defined by the `@javax.annotation.Priority` annotation.
This pattern can be useful when implementing the link:https://en.wikipedia.org/wiki/Chain-of-responsibility_pattern[chain of responsibility] design pattern, that is, looking for the first implementation that can handle a request.
diff --git a/antora/components/userguide/modules/fun/pages/ui/table-columns.adoc b/antora/components/userguide/modules/fun/pages/ui/table-columns.adoc
index 3965792..139063c 100644
--- a/antora/components/userguide/modules/fun/pages/ui/table-columns.adoc
+++ b/antora/components/userguide/modules/fun/pages/ui/table-columns.adoc
@@ -27,7 +27,7 @@ The order of these properties of `Order`, when rendered in the context of its ow
[source,java]
----
@Service
-@Order(100) // <.>
+@Priority(PriorityPrecedence.EARLY) // <.>
public class TableColumnOrderServiceForCustomerOrders
implements TableColumnOrderService {
public List<String> orderParented(
@@ -47,7 +47,7 @@ public class TableColumnOrderServiceForCustomerOrders
}
}
----
-<.> specifies the order in which the `TableColumnOrderService` implementations are called.
+<.> specifies the priority in which the xref:refguide:applib:index/services/tablecol/TableColumnOrderService.adoc[TableColumnOrderService] implementations are called.
<.> represents the collection that this service can advise upon
<.> provides no advice
diff --git a/core/webapp/src/main/adoc/modules/webapp/pages/webmodules.adoc b/core/webapp/src/main/adoc/modules/webapp/pages/webmodules.adoc
index 214e4c8..4030a9e 100644
--- a/core/webapp/src/main/adoc/modules/webapp/pages/webmodules.adoc
+++ b/core/webapp/src/main/adoc/modules/webapp/pages/webmodules.adoc
@@ -5,7 +5,7 @@
The `WebModule` interface allows modules to dynamically configure ``Filter``s, ``Servlet``s and ``ServletContextListener`s.
- The Spring `@Order` annotation is used to ensure that the request chain is sequenced correctly.
+The `@javax.annotation.Priority` annotation is used to ensure that the request chain is sequenced correctly.
.WebModules (highest first)
[cols="6m,^2a,^2a,^3a,^4a,6a", options="header"]
@@ -14,7 +14,7 @@ The `WebModule` interface allows modules to dynamically configure ``Filter``s, `
|Web module|listener?|servlet?|filter?
-|@Order|Notes
+|`@Priority`|Notes
|WebModule +
Keycloak
@@ -22,7 +22,7 @@ Keycloak
|N
|Y +
`/*`
-|HIGHEST + 100
+|FIRST + 100
|Either this or shiro
|WebModule +
@@ -31,7 +31,7 @@ Shiro
|N
|Y +
`/*`
-|HIGHEST + 200
+|FIRST + 200
|Either this or keycloak
|WebModule +
@@ -40,7 +40,7 @@ LogOnExceptionLogger
|N
|Y +
`/wicket` & `/restful`
-|HIGH - 100
+|EARLY - 100
|Filter is passthru, with no side-effects. +
Mapping depends on which viewers configured.
@@ -50,7 +50,7 @@ Cors
|N
|Y +
`/wicket` & `/restful`
-|HIGH
+|EARLY
|Mapping depends on which viewers configured.
diff --git a/examples/demo/domain/src/main/java/demoapp/dom/featured/customui/vm/WhereInTheWorldVm-description.adoc b/examples/demo/domain/src/main/java/demoapp/dom/featured/customui/vm/WhereInTheWorldVm-description.adoc
index 7c7eb5e..67198b4 100644
--- a/examples/demo/domain/src/main/java/demoapp/dom/featured/customui/vm/WhereInTheWorldVm-description.adoc
+++ b/examples/demo/domain/src/main/java/demoapp/dom/featured/customui/vm/WhereInTheWorldVm-description.adoc
@@ -44,7 +44,7 @@ There are various subclasses available; as we want to replace the component for
include::../../../../webapp/wicket/ui/custom/WhereInTheWorldPanelFactory.java[tags=class]
----
<.> the framework use the chain-of-responsibility pattern to look for a component factory to render the domain object.
-This `@Order` precedence ensures that this custom implementation is consulted early on.
+This `@javax.annotation.Priority` precedence ensures that this custom implementation is consulted early on.
<.> indicates that this component applies when rendering a domain object (applies to view models as well as domain entities)
<.> the superclass ensures that an `EntityModel` is provided to inspect.
This is a Wicket model that is a serializable equivalent to the core framework's notion of a domain object.
diff --git a/extensions/security/secman/adoc/modules/secman/pages/setting-up.adoc b/extensions/security/secman/adoc/modules/secman/pages/setting-up.adoc
index ce9a0b5..ec2a726 100644
--- a/extensions/security/secman/adoc/modules/secman/pages/setting-up.adoc
+++ b/extensions/security/secman/adoc/modules/secman/pages/setting-up.adoc
@@ -288,7 +288,7 @@ The service below will set up the default roles and permissions for the framewor
.SeedUsersAndRoles.java
----
@Service
-@Order(OrderPrecedence.MIDPOINT + 10)
+@Priority(PriorityPrecedence.MIDPOINT + 10)
@RequiredArgsConstructor(onConstructor_ = {@Inject})
public class SeedSecurityService {
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java
index cd04ee4..e1e77fe 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/markup/MarkupFieldFactory.java
@@ -27,7 +27,7 @@ import org.springframework.core.annotation.Order;
import org.w3c.dom.events.EventTarget;
import org.w3c.dom.html.HTMLAnchorElement;
-import org.apache.isis.applib.annotation.OrderPrecedence;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
import org.apache.isis.applib.value.HasHtml;
import org.apache.isis.incubator.viewer.javafx.ui.components.UiComponentHandlerFx;
import org.apache.isis.viewer.common.model.components.UiComponentFactory.ComponentRequest;
@@ -49,7 +49,7 @@ import javafx.scene.web.WebView;
import netscape.javascript.JSException;
@org.springframework.stereotype.Component
-@javax.annotation.Priority(OrderPrecedence.MIDPOINT)
+@javax.annotation.Priority(PriorityPrecedence.MIDPOINT)
@RequiredArgsConstructor(onConstructor_ = {@Inject})
public class MarkupFieldFactory implements UiComponentHandlerFx {
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/number/NumberFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/number/NumberFieldFactory.java
index f00ac17..3fe9d50 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/number/NumberFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/number/NumberFieldFactory.java
@@ -22,7 +22,7 @@ import javax.inject.Inject;
import org.springframework.core.annotation.Order;
-import org.apache.isis.applib.annotation.OrderPrecedence;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
import org.apache.isis.commons.internal.base._Strings;
import org.apache.isis.core.metamodel.interactions.managed.ManagedParameter;
import org.apache.isis.core.metamodel.interactions.managed.ManagedProperty;
@@ -41,7 +41,7 @@ import lombok.val;
import lombok.extern.log4j.Log4j2;
@org.springframework.stereotype.Component
-@javax.annotation.Priority(OrderPrecedence.MIDPOINT)
+@javax.annotation.Priority(PriorityPrecedence.MIDPOINT)
@RequiredArgsConstructor(onConstructor_ = {@Inject})
@Log4j2
public class NumberFieldFactory implements UiComponentHandlerFx {
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/objectref/ObjectReferenceFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/objectref/ObjectReferenceFieldFactory.java
index 0af97d9..76e9298 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/objectref/ObjectReferenceFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/objectref/ObjectReferenceFieldFactory.java
@@ -22,7 +22,7 @@ import javax.inject.Inject;
import org.springframework.core.annotation.Order;
-import org.apache.isis.applib.annotation.OrderPrecedence;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
import org.apache.isis.core.metamodel.interactions.managed.ManagedParameter;
import org.apache.isis.core.metamodel.interactions.managed.ManagedProperty;
import org.apache.isis.incubator.viewer.javafx.ui.components.UiComponentHandlerFx;
@@ -35,7 +35,7 @@ import javafx.scene.Node;
import javafx.scene.control.Label;
@org.springframework.stereotype.Component
-@javax.annotation.Priority(OrderPrecedence.MIDPOINT)
+@javax.annotation.Priority(PriorityPrecedence.MIDPOINT)
@RequiredArgsConstructor(onConstructor_ = {@Inject})
public class ObjectReferenceFieldFactory implements UiComponentHandlerFx {
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/other/FallbackFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/other/FallbackFieldFactory.java
index be83e7a..e259e50 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/other/FallbackFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/other/FallbackFieldFactory.java
@@ -20,7 +20,7 @@ package org.apache.isis.incubator.viewer.javafx.ui.components.other;
import org.springframework.core.annotation.Order;
-import org.apache.isis.applib.annotation.OrderPrecedence;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
import org.apache.isis.incubator.viewer.javafx.ui.components.UiComponentHandlerFx;
import org.apache.isis.viewer.common.model.components.UiComponentFactory.ComponentRequest;
@@ -30,7 +30,7 @@ import javafx.scene.Node;
import javafx.scene.control.Label;
@org.springframework.stereotype.Component
-@javax.annotation.Priority(OrderPrecedence.LAST)
+@javax.annotation.Priority(PriorityPrecedence.LAST)
public class FallbackFieldFactory implements UiComponentHandlerFx {
@Override
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/temporal/TemporalFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/temporal/TemporalFieldFactory.java
index 7ed5278..cbd0afb 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/temporal/TemporalFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/temporal/TemporalFieldFactory.java
@@ -22,7 +22,7 @@ import javax.inject.Inject;
import org.springframework.core.annotation.Order;
-import org.apache.isis.applib.annotation.OrderPrecedence;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
import org.apache.isis.core.metamodel.facets.value.temporal.TemporalValueFacet;
import org.apache.isis.core.metamodel.facets.value.temporal.TemporalValueFacet.OffsetCharacteristic;
import org.apache.isis.core.metamodel.facets.value.temporal.TemporalValueFacet.TemporalCharacteristic;
@@ -39,7 +39,7 @@ import lombok.RequiredArgsConstructor;
import lombok.val;
@org.springframework.stereotype.Component
-@javax.annotation.Priority(OrderPrecedence.MIDPOINT)
+@javax.annotation.Priority(PriorityPrecedence.MIDPOINT)
@RequiredArgsConstructor(onConstructor_ = {@Inject})
public class TemporalFieldFactory implements UiComponentHandlerFx {
diff --git a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/text/TextFieldFactory.java b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/text/TextFieldFactory.java
index 74fe94d..edc1422 100644
--- a/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/text/TextFieldFactory.java
+++ b/incubator/viewers/javafx/ui/src/main/java/org/apache/isis/incubator/viewer/javafx/ui/components/text/TextFieldFactory.java
@@ -24,7 +24,7 @@ import javax.inject.Inject;
import org.springframework.core.annotation.Order;
-import org.apache.isis.applib.annotation.OrderPrecedence;
+import org.apache.isis.applib.annotation.PriorityPrecedence;
import org.apache.isis.core.metamodel.facets.value.string.StringValueFacet;
import org.apache.isis.core.metamodel.interactions.managed.ManagedParameter;
import org.apache.isis.core.metamodel.interactions.managed.ManagedProperty;
@@ -41,7 +41,7 @@ import lombok.RequiredArgsConstructor;
import lombok.val;
@org.springframework.stereotype.Component
-@javax.annotation.Priority(OrderPrecedence.MIDPOINT)
+@javax.annotation.Priority(PriorityPrecedence.MIDPOINT)
@RequiredArgsConstructor(onConstructor_ = {@Inject})
public class TextFieldFactory implements UiComponentHandlerFx {
diff --git a/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java b/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java
index a3eee67..111ad16 100644
--- a/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java
+++ b/regressiontests/stable-bootstrapping/src/test/java/org/apache/isis/testdomain/bootstrapping/SpringServiceInjectOrderTest.java
@@ -98,7 +98,7 @@ class SpringServiceInjectOrderTest {
assertNotNull(messageService);
assertTrue(messageService instanceof MessageServiceDefault);
- // injected as per @Order
+ // injected as per @Priority
val ratings = dummyService.getRatings();
assertThat(ratings.get(0).getRating(), is(equalTo(1)));
assertThat(ratings.get(1).getRating(), is(equalTo(2)));
@@ -129,7 +129,7 @@ class SpringServiceInjectOrderTest {
assertNotNull(messageService);
assertTrue(messageService instanceof MessageServiceDefault);
- // injected as per @Order
+ // injected as per @Priority
val ratings = dummyObject.getRatings();
assertThat(ratings.get(0).getRating(), is(equalTo(1)));
assertThat(ratings.get(1).getRating(), is(equalTo(2)));
@@ -161,7 +161,7 @@ class SpringServiceInjectOrderTest {
}
@Service
- @Order(PriorityPrecedence.EARLY)
+ @Priority(PriorityPrecedence.EARLY)
@Qualifier("tallest")
@Named("withExcellentName")
static class Excellent implements Rating {
@@ -185,7 +185,7 @@ class SpringServiceInjectOrderTest {
}
@Service
- @Order(PriorityPrecedence.LAST)
+ @Priority(PriorityPrecedence.LAST)
@Qualifier("middle")
@Named("withAverageName")
static class Average implements Rating {
diff --git a/viewers/wicket/adoc/modules/ROOT/pages/extending/custom-pages.adoc b/viewers/wicket/adoc/modules/ROOT/pages/extending/custom-pages.adoc
index fffe229..a30bde7 100644
--- a/viewers/wicket/adoc/modules/ROOT/pages/extending/custom-pages.adoc
+++ b/viewers/wicket/adoc/modules/ROOT/pages/extending/custom-pages.adoc
@@ -64,7 +64,7 @@ If you are just tweaking the defaults, then its easiest to override `PageClassLi
[source,java]
----
@Service
-@Order(OrderPrecedence.EARLY)
+@Priority(PriorityPrecedence.EARLY)
public class MyPageClassList extends PageClassListDefault {
protected Class<? extends Page> getSignInPageClass() {
return MySignInPage.class;