You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2020/02/21 07:55:32 UTC
[isis] branch master updated: ISIS-1970: fixes regression
(jaxbService circular deps)
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/master by this push:
new 22b0630 ISIS-1970: fixes regression (jaxbService circular deps)
22b0630 is described below
commit 22b0630ba8a0e45abe633883acbbe684b504dbef
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Feb 21 08:55:19 2020 +0100
ISIS-1970: fixes regression (jaxbService circular deps)
---
.../applib/services/jaxb/JaxbServiceDefault.java | 18 ++++++++++++---
.../applib/fixturescripts/FixtureScripts.java | 27 ++++++++++------------
2 files changed, 27 insertions(+), 18 deletions(-)
diff --git a/api/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbServiceDefault.java b/api/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbServiceDefault.java
index e76bece..ae574a6 100644
--- a/api/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbServiceDefault.java
+++ b/api/applib/src/main/java/org/apache/isis/applib/services/jaxb/JaxbServiceDefault.java
@@ -20,6 +20,7 @@ package org.apache.isis.applib.services.jaxb;
import java.util.Map;
+import javax.annotation.PostConstruct;
import javax.inject.Inject;
import javax.inject.Named;
import javax.xml.bind.JAXBContext;
@@ -40,22 +41,33 @@ import org.apache.isis.applib.jaxbadapters.PersistentEntitiesAdapter;
import org.apache.isis.applib.jaxbadapters.PersistentEntityAdapter;
import org.apache.isis.applib.services.inject.ServiceInjector;
import org.apache.isis.applib.services.metamodel.MetaModelService;
+import org.apache.isis.applib.services.registry.ServiceRegistry;
+
+import lombok.AllArgsConstructor;
+import lombok.NoArgsConstructor;
@Service
@Named("isisApplib.JaxbServiceDefault")
@Order(OrderPrecedence.MIDPOINT)
@Primary
@Qualifier("Default")
+@NoArgsConstructor @AllArgsConstructor
public class JaxbServiceDefault extends JaxbService.Simple {
- private final ServiceInjector serviceInjector;
- private final MetaModelService metaModelService;
+ @Inject private ServiceRegistry serviceRegistry;
+ @Inject private ServiceInjector serviceInjector;
+ /*@Inject circular dependency*/private MetaModelService metaModelService;
- @Inject
+ /*@Inject circular dependency*/
public JaxbServiceDefault(ServiceInjector serviceInjector, MetaModelService metaModelService) {
this.serviceInjector = serviceInjector;
this.metaModelService = metaModelService;
}
+
+ @PostConstruct
+ public void init(){
+ this.metaModelService = serviceRegistry.lookupServiceElseFail(MetaModelService.class);
+ }
@Override
public Object fromXml(final JAXBContext jaxbContext, final String xml, final Map<String, Object> unmarshallerProperties) {
diff --git a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
index 1f95fc0..7cd0e46 100644
--- a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
+++ b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
@@ -76,6 +76,18 @@ import lombok.val;
)
public class FixtureScripts extends AbstractService {
+ // @Inject private FactoryService factoryService;
+ @Inject private TitleService titleService;
+ @Inject private JaxbService jaxbService;
+ // @Inject private BookmarkService bookmarkService;
+ @Inject private ServiceRegistry serviceRegistry;
+ @Inject private ServiceInjector serviceInjector;
+ @Inject private RepositoryService repositoryService;
+ @Inject private TransactionService transactionService;
+ @Inject private ExecutionParametersService executionParametersService;
+
+ @Inject private EventBusService eventBusService;
+
// -- Specification, nonPersistedObjectsStrategy, multipleExecutionStrategy enums
@@ -487,21 +499,6 @@ public class FixtureScripts extends AbstractService {
}
- // -- DEPENDENCIES
-
- @Inject FactoryService factoryService;
- @Inject TitleService titleService;
- @Inject JaxbService jaxbService;
- @Inject BookmarkService bookmarkService;
- @Inject ServiceRegistry serviceRegistry;
- @Inject ServiceInjector serviceInjector;
- @Inject RepositoryService repositoryService;
- @Inject TransactionService transactionService;
- @Inject ExecutionParametersService executionParametersService;
-
- @Inject EventBusService eventBusService;
-
-
// -- DEPRECATIONS
/**