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 c1b4364049 ISIS-3277: convert RO artifacts to Java Modules (except
jaxrsresteasay)
c1b4364049 is described below
commit c1b43640492f67a2f2945efaf26c788b354e9fab
Author: Andi Huber <[email protected]>
AuthorDate: Tue Nov 15 08:11:35 2022 +0100
ISIS-3277: convert RO artifacts to Java Modules (except jaxrsresteasay)
- jaxrsresteasay won't work as of resteasy 5.0.0-final
module ... reads package org.jboss.resteasy.concurrent from both
resteasy.core and resteasy.core.spi
---
commons/pom.xml | 8 ++--
core/metamodel/src/main/java/module-info.java | 10 +++-
.../context/MetaModelContext_usingSpring.java | 7 ++-
.../applib/src/main/java/module-info.java | 43 +++++++++++++++++
.../client/src/main/java/module-info.java | 34 +++++++------
viewers/restfulobjects/jaxrs-resteasy/pom.xml | 4 ++
.../webmodule/WebModuleJaxrsResteasy.java | 7 +--
.../rendering/src/main/java/module-info.java | 54 +++++++++++++++++++++
.../domainobjects/DomainObjectReprRenderer.java | 3 +-
.../domainobjects/DomainServiceLinkTo.java | 3 +-
.../service/swagger/SwaggerServiceMenu.java | 2 +-
.../service/swagger/internal/Generation.java | 25 ++++------
.../viewer/src/main/java/module-info.java | 55 ++++++++++++++++++++++
13 files changed, 205 insertions(+), 50 deletions(-)
diff --git a/commons/pom.xml b/commons/pom.xml
index ef87ee7808..e4453878f3 100644
--- a/commons/pom.xml
+++ b/commons/pom.xml
@@ -69,10 +69,10 @@
</dependency>
<!-- provides @Nullable that's required by Spring 5.x (as
Spring is on the module path) -->
- <dependency>
- <groupId>com.google.code.findbugs</groupId>
- <artifactId>jsr305</artifactId>
- </dependency>
+<!-- <dependency>-->
+<!-- <groupId>com.google.code.findbugs</groupId>-->
+<!-- <artifactId>jsr305</artifactId>-->
+<!-- </dependency>-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
diff --git a/core/metamodel/src/main/java/module-info.java
b/core/metamodel/src/main/java/module-info.java
index b7c0eb204a..2a00891b9c 100644
--- a/core/metamodel/src/main/java/module-info.java
+++ b/core/metamodel/src/main/java/module-info.java
@@ -36,6 +36,7 @@ open module org.apache.causeway.core.metamodel {
exports org.apache.causeway.core.metamodel.facets.all.i8n.imperative;
exports org.apache.causeway.core.metamodel.facets.all.i8n.staatic;
exports org.apache.causeway.core.metamodel.facets.all.named;
+ exports org.apache.causeway.core.metamodel.facets.collections;
exports org.apache.causeway.core.metamodel.facets.members.cssclass;
exports
org.apache.causeway.core.metamodel.facets.members.cssclassfa.annotprop;
exports org.apache.causeway.core.metamodel.facets.members.cssclassfa;
@@ -53,12 +54,16 @@ open module org.apache.causeway.core.metamodel {
exports org.apache.causeway.core.metamodel.facets.object.viewmodel;
exports org.apache.causeway.core.metamodel.facets.objectvalue.labelat;
exports
org.apache.causeway.core.metamodel.facets.properties.property.modify;
+ exports org.apache.causeway.core.metamodel.facets.properties.update.clear;
+ exports org.apache.causeway.core.metamodel.facets.properties.update.modify;
exports org.apache.causeway.core.metamodel.facets.value.semantics;
exports org.apache.causeway.core.metamodel.interactions;
exports org.apache.causeway.core.metamodel.interactions.managed;
exports org.apache.causeway.core.metamodel.interactions.managed.nonscalar;
+ exports org.apache.causeway.core.metamodel.methods;
+
exports org.apache.causeway.core.metamodel.object;
exports org.apache.causeway.core.metamodel.objectmanager.memento;
exports org.apache.causeway.core.metamodel.objectmanager;
@@ -92,7 +97,10 @@ open module org.apache.causeway.core.metamodel {
exports org.apache.causeway.core.metamodel.specloader
to org.apache.causeway.core.runtimeservices,
//TODO probably don't expose SpecificationLoader to viewers
- org.apache.causeway.viewer.wicket.model,
org.apache.causeway.viewer.wicket.ui,
+ org.apache.causeway.viewer.restfulobjects.rendering,
+ org.apache.causeway.viewer.restfulobjects.viewer,
+ org.apache.causeway.viewer.wicket.model,
+ org.apache.causeway.viewer.wicket.ui,
org.apache.causeway.incubator.viewer.graphql.viewer;
exports org.apache.causeway.core.metamodel.specloader.validator;
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
index 7e7ed9a656..87e2cb59cd 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
+++
b/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/context/MetaModelContext_usingSpring.java
@@ -49,7 +49,6 @@ import
org.apache.causeway.core.metamodel.execution.MemberExecutorService;
import org.apache.causeway.core.metamodel.facets.object.icon.ObjectIconService;
import org.apache.causeway.core.metamodel.object.ManagedObject;
import org.apache.causeway.core.metamodel.objectmanager.ObjectManager;
-import org.apache.causeway.core.metamodel.services.ServiceUtil;
import org.apache.causeway.core.metamodel.specloader.SpecificationLoader;
import
org.apache.causeway.core.security.authentication.manager.AuthenticationManager;
import
org.apache.causeway.core.security.authorization.manager.AuthorizationManager;
@@ -194,7 +193,11 @@ class MetaModelContext_usingSpring implements
MetaModelContext {
return getServiceRegistry()
.streamRegisteredBeans()
.map(this::toManagedObject)
- .collect(Collectors.toMap(ServiceUtil::idOfAdapter, v->v,
(o,n)->n, LinkedHashMap::new));
+ .collect(Collectors.toMap(
+
service->service.getSpecification().getLogicalTypeName(),
+ v->v,
+ (o,n)->n,
+ LinkedHashMap::new));
}
private ManagedObject toManagedObject(final _ManagedBeanAdapter
managedBeanAdapter) {
diff --git a/viewers/restfulobjects/applib/src/main/java/module-info.java
b/viewers/restfulobjects/applib/src/main/java/module-info.java
new file mode 100644
index 0000000000..d9ec7aca94
--- /dev/null
+++ b/viewers/restfulobjects/applib/src/main/java/module-info.java
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+module org.apache.causeway.viewer.restfulobjects.applib {
+ exports org.apache.causeway.viewer.restfulobjects.applib.homepage;
+ exports org.apache.causeway.viewer.restfulobjects.applib.errors;
+ exports org.apache.causeway.viewer.restfulobjects.applib.util;
+ exports org.apache.causeway.viewer.restfulobjects.applib.domaintypes;
+ exports org.apache.causeway.viewer.restfulobjects.applib.domainobjects;
+ exports org.apache.causeway.viewer.restfulobjects.applib.version;
+ exports org.apache.causeway.viewer.restfulobjects.applib.boot;
+ exports org.apache.causeway.viewer.restfulobjects.applib;
+ exports org.apache.causeway.viewer.restfulobjects.applib.health;
+ exports org.apache.causeway.viewer.restfulobjects.applib.menubars;
+ exports org.apache.causeway.viewer.restfulobjects.applib.user;
+ exports org.apache.causeway.viewer.restfulobjects.applib.dtos;
+
+ requires com.fasterxml.jackson.annotation;
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires java.ws.rs;
+ requires lombok;
+ requires org.apache.causeway.applib;
+ requires org.apache.causeway.commons;
+ requires org.joda.time;
+ requires spring.context;
+ requires spring.core;
+}
\ No newline at end of file
diff --git
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/ServiceUtil.java
b/viewers/restfulobjects/client/src/main/java/module-info.java
similarity index 55%
rename from
core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/ServiceUtil.java
rename to viewers/restfulobjects/client/src/main/java/module-info.java
index 0cc44cb82c..d0d437acbb 100644
---
a/core/metamodel/src/main/java/org/apache/causeway/core/metamodel/services/ServiceUtil.java
+++ b/viewers/restfulobjects/client/src/main/java/module-info.java
@@ -16,22 +16,20 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.causeway.core.metamodel.services;
+module org.apache.causeway.viewer.restfulobjects.client {
+ exports org.apache.causeway.viewer.restfulobjects.client.log;
+ exports org.apache.causeway.viewer.restfulobjects.client;
+ exports org.apache.causeway.viewer.restfulobjects.client.auth;
-import org.apache.causeway.core.metamodel.object.ManagedObject;
-import org.apache.causeway.core.metamodel.spec.ObjectSpecification;
-
-public final class ServiceUtil {
-
- private ServiceUtil() {
- }
-
- public static String idOfSpec(final ObjectSpecification serviceSpec) {
- return serviceSpec.getLogicalTypeName();
- }
-
- public static String idOfAdapter(final ManagedObject serviceAdapter) {
- return idOfSpec(serviceAdapter.getSpecification());
- }
-
-}
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires java.annotation;
+ requires java.ws.rs;
+ requires java.xml.bind;
+ requires lombok;
+ requires org.apache.causeway.applib;
+ requires org.apache.causeway.commons;
+ requires org.apache.causeway.viewer.restfulobjects.applib;
+ requires org.apache.logging.log4j;
+ requires spring.core;
+}
\ No newline at end of file
diff --git a/viewers/restfulobjects/jaxrs-resteasy/pom.xml
b/viewers/restfulobjects/jaxrs-resteasy/pom.xml
index 129448815c..93cb4e4fe2 100644
--- a/viewers/restfulobjects/jaxrs-resteasy/pom.xml
+++ b/viewers/restfulobjects/jaxrs-resteasy/pom.xml
@@ -92,6 +92,10 @@
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
</exclusion>
+ <exclusion>
+
<groupId>org.springframework.boot</groupId>
+
<artifactId>spring-boot-starter-tomcat</artifactId>
+ </exclusion>
</exclusions>
</dependency>
diff --git
a/viewers/restfulobjects/jaxrs-resteasy/src/main/java/org/apache/causeway/viewer/restfulobjects/jaxrsresteasy/webmodule/WebModuleJaxrsResteasy.java
b/viewers/restfulobjects/jaxrs-resteasy/src/main/java/org/apache/causeway/viewer/restfulobjects/jaxrsresteasy/webmodule/WebModuleJaxrsResteasy.java
index aa6a8f657b..dbf85139a9 100644
---
a/viewers/restfulobjects/jaxrs-resteasy/src/main/java/org/apache/causeway/viewer/restfulobjects/jaxrsresteasy/webmodule/WebModuleJaxrsResteasy.java
+++
b/viewers/restfulobjects/jaxrs-resteasy/src/main/java/org/apache/causeway/viewer/restfulobjects/jaxrsresteasy/webmodule/WebModuleJaxrsResteasy.java
@@ -56,7 +56,8 @@ import lombok.val;
*
*/
@Service
-@Named(CausewayModuleViewerRestfulObjectsApplib.NAMESPACE +
".WebModuleJaxrsRestEasy4") // CAUTION: SwaggerServiceMenu refers to this name
+//CAUTION: SwaggerServiceMenu refers to this name
+@Named(CausewayModuleViewerRestfulObjectsApplib.NAMESPACE +
".WebModuleJaxrsRestEasy")
@javax.annotation.Priority(PriorityPrecedence.MIDPOINT - 80)
@Qualifier("JaxrsRestEasy4")
public final class WebModuleJaxrsResteasy extends WebModuleAbstract {
@@ -85,7 +86,7 @@ public final class WebModuleJaxrsResteasy extends
WebModuleAbstract {
private final String name = "JaxrsRestEasy4";
@Override
- public void prepare(WebModuleContext ctx) {
+ public void prepare(final WebModuleContext ctx) {
// forces RuntimeDelegate.getInstance() to be provided by RestEasy
// (and not by eg. the JEE container if any)
@@ -101,7 +102,7 @@ public final class WebModuleJaxrsResteasy extends
WebModuleAbstract {
}
@Override
- public Can<ServletContextListener> init(ServletContext ctx) throws
ServletException {
+ public Can<ServletContextListener> init(final ServletContext ctx) throws
ServletException {
val authenticationStrategyClassName = causewayConfiguration.getViewer()
.getRestfulobjects().getAuthentication().getStrategyClassName()
diff --git a/viewers/restfulobjects/rendering/src/main/java/module-info.java
b/viewers/restfulobjects/rendering/src/main/java/module-info.java
new file mode 100644
index 0000000000..e6a4afd8d3
--- /dev/null
+++ b/viewers/restfulobjects/rendering/src/main/java/module-info.java
@@ -0,0 +1,54 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+module org.apache.causeway.viewer.restfulobjects.rendering {
+ exports org.apache.causeway.viewer.restfulobjects.rendering.service.conneg;
+ exports
org.apache.causeway.viewer.restfulobjects.rendering.service.swagger;
+ exports
org.apache.causeway.viewer.restfulobjects.rendering.service.valuerender;
+ exports org.apache.causeway.viewer.restfulobjects.rendering.util;
+ exports org.apache.causeway.viewer.restfulobjects.rendering.domainobjects;
+ exports org.apache.causeway.viewer.restfulobjects.rendering;
+ exports
org.apache.causeway.viewer.restfulobjects.rendering.service.swagger.internal;
+ exports org.apache.causeway.viewer.restfulobjects.rendering.domaintypes;
+ exports
org.apache.causeway.viewer.restfulobjects.rendering.service.acceptheader;
+ exports org.apache.causeway.viewer.restfulobjects.rendering.service;
+
+ requires org.apache.causeway.viewer.restfulobjects.applib;
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires jakarta.activation;
+ requires java.annotation;
+ requires java.inject;
+ requires java.sql;
+ requires java.ws.rs;
+ requires java.xml.bind;
+ requires lombok;
+ requires org.apache.causeway.applib;
+ requires org.apache.causeway.commons;
+ requires org.apache.causeway.core.config;
+ requires org.apache.causeway.core.metamodel;
+ requires org.apache.causeway.core.runtime;
+ requires org.apache.causeway.schema;
+ requires org.apache.logging.log4j;
+ requires org.joda.time;
+ requires spring.beans;
+ requires spring.context;
+ requires spring.core;
+ requires swagger.core;
+ requires swagger.models;
+}
\ No newline at end of file
diff --git
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
index 254b5d3b2b..8809e110ae 100644
---
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
+++
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainObjectReprRenderer.java
@@ -29,7 +29,6 @@ import
org.apache.causeway.core.metamodel.interactions.managed.ManagedCollection
import org.apache.causeway.core.metamodel.interactions.managed.ManagedProperty;
import org.apache.causeway.core.metamodel.object.ManagedObject;
import org.apache.causeway.core.metamodel.object.ManagedObjects;
-import org.apache.causeway.core.metamodel.services.ServiceUtil;
import org.apache.causeway.core.metamodel.spec.feature.MixedIn;
import org.apache.causeway.core.metamodel.spec.feature.ObjectAction;
import org.apache.causeway.core.metamodel.spec.feature.ObjectAssociation;
@@ -190,7 +189,7 @@ extends ReprRendererAbstract<ManagedObject> {
// serviceId or instance Id
if (isService) {
- representation.mapPutString("serviceId",
ServiceUtil.idOfAdapter(objectAdapter));
+ representation.mapPutString("serviceId",
objectAdapter.getSpecification().getLogicalTypeName());
} else {
oidIfAny.ifPresent(oid->{
Optional.ofNullable(oid.getLogicalTypeName())
diff --git
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
index 49e11f23dc..3889837456 100644
---
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
+++
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/domainobjects/DomainServiceLinkTo.java
@@ -19,7 +19,6 @@
package org.apache.causeway.viewer.restfulobjects.rendering.domainobjects;
import org.apache.causeway.core.metamodel.object.ManagedObject;
-import org.apache.causeway.core.metamodel.services.ServiceUtil;
import org.apache.causeway.viewer.restfulobjects.applib.Rel;
import org.apache.causeway.viewer.restfulobjects.applib.RepresentationType;
import org.apache.causeway.viewer.restfulobjects.rendering.LinkBuilder;
@@ -29,7 +28,7 @@ public class DomainServiceLinkTo extends DomainObjectLinkTo {
@Override
public ObjectAdapterLinkTo with(final ManagedObject objectAdapter) {
- serviceId = ServiceUtil.idOfAdapter(objectAdapter);
+ serviceId = objectAdapter.getSpecification().getLogicalTypeName();
return super.with(objectAdapter);
}
diff --git
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceMenu.java
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceMenu.java
index 4455f66605..2a8c3210cd 100644
---
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceMenu.java
+++
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/SwaggerServiceMenu.java
@@ -156,7 +156,7 @@ public class SwaggerServiceMenu {
// -- HELPER
@Programmatic String disableReasonWhenRequiresROViewer() {
final Optional<?> moduleIfAny = serviceRegistry
- .lookupBeanById("causeway.viewer.ro.WebModuleJaxrsRestEasy4");
+ .lookupBeanById("causeway.viewer.ro.WebModuleJaxrsRestEasy");
return moduleIfAny.isPresent()
? null
: "RestfulObjects viewer is not configured";
diff --git
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/Generation.java
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/Generation.java
index 338f5cf9ed..2fca0ff7c5 100644
---
a/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/Generation.java
+++
b/viewers/restfulobjects/rendering/src/main/java/org/apache/causeway/viewer/restfulobjects/rendering/service/swagger/internal/Generation.java
@@ -34,7 +34,6 @@ import org.apache.causeway.applib.services.swagger.Visibility;
import org.apache.causeway.commons.internal.base._Strings;
import org.apache.causeway.commons.internal.collections._Sets;
import
org.apache.causeway.core.metamodel.facets.object.domainservice.DomainServiceFacet;
-import org.apache.causeway.core.metamodel.services.ServiceUtil;
import org.apache.causeway.core.metamodel.spec.ObjectSpecification;
import org.apache.causeway.core.metamodel.spec.feature.MixedIn;
import org.apache.causeway.core.metamodel.spec.feature.ObjectAction;
@@ -325,7 +324,7 @@ class Generation {
void appendServicePath(final ObjectSpecification objectSpec) {
- final String serviceId = serviceIdFor(objectSpec);
+ final String serviceId = objectSpec.getLogicalTypeName();
final Path path = new Path();
swagger.path(String.format("/services/%s", serviceId), path);
@@ -354,7 +353,7 @@ class Generation {
ModelImpl appendObjectPathAndModelDefinitions(final ObjectSpecification
objectSpec) {
- final String logicalTypeName = logicalTypeNameFor(objectSpec);
+ final String logicalTypeName = objectSpec.getLogicalTypeName();
final Path path = new Path();
swagger.path(String.format("/objects/%s/{objectId}", logicalTypeName),
path);
@@ -427,7 +426,7 @@ class Generation {
final ObjectSpecification serviceSpec,
final ObjectAction serviceAction) {
- final String serviceId = serviceIdFor(serviceSpec);
+ final String serviceId = serviceSpec.getLogicalTypeName();
final String actionId = serviceAction.getId();
val parameters = serviceAction.getParameters();
@@ -513,7 +512,7 @@ class Generation {
final ObjectSpecification objectSpec,
final OneToManyAssociation collection) {
- final String logicalTypeName = logicalTypeNameFor(objectSpec);
+ final String logicalTypeName = objectSpec.getLogicalTypeName();
final String collectionId = collection.getId();
final Path path = new Path();
@@ -542,7 +541,7 @@ class Generation {
final ObjectSpecification objectSpec,
final ObjectAction objectAction) {
- final String logicalTypeName = logicalTypeNameFor(objectSpec);
+ final String logicalTypeName = objectSpec.getLogicalTypeName();
final String actionId = objectAction.getId();
val parameters = objectAction.getParameters();
@@ -647,7 +646,7 @@ class Generation {
final ArrayProperty arrayProperty = new ArrayProperty();
if(objectSpecification != null &&
objectSpecification.getCorrespondingClass() != Object.class) {
arrayProperty
- .description("List of " + logicalTypeNameFor(objectSpecification))
+ .description("List of " + objectSpecification.getLogicalTypeName())
.items(modelFor(objectSpecification));
} else {
arrayProperty.items(new ObjectProperty());
@@ -685,7 +684,7 @@ class Generation {
if(specification.getCorrespondingClass() == java.lang.Enum.class) {
return new StringProperty();
}
- return newRefProperty(logicalTypeNameFor(specification) + "Repr");
+ return newRefProperty(specification.getLogicalTypeName() + "Repr");
}
void updateObjectModel(
@@ -694,7 +693,7 @@ class Generation {
final List<OneToOneAssociation> objectProperties,
final List<OneToManyAssociation> objectCollections) {
- final String logicalTypeName = logicalTypeNameFor(objectSpecification);
+ final String logicalTypeName =
objectSpecification.getLogicalTypeName();
final String className = objectSpecification.getFullIdentifier();
model
@@ -753,14 +752,6 @@ class Generation {
.required("extensions");
}
- static String serviceIdFor(final ObjectSpecification serviceSpec) {
- return ServiceUtil.idOfSpec(serviceSpec);
- }
-
- static String logicalTypeNameFor(final ObjectSpecification objectSpec) {
- return objectSpec.getLogicalTypeName();
- }
-
static StringProperty stringProperty() {
return new StringProperty();
}
diff --git a/viewers/restfulobjects/viewer/src/main/java/module-info.java
b/viewers/restfulobjects/viewer/src/main/java/module-info.java
new file mode 100644
index 0000000000..a3a78111f8
--- /dev/null
+++ b/viewers/restfulobjects/viewer/src/main/java/module-info.java
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+module org.apache.causeway.viewer.restfulobjects.viewer {
+ exports org.apache.causeway.viewer.restfulobjects.viewer.jaxrsapp;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.webmodule;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.context;
+ exports org.apache.causeway.viewer.restfulobjects.viewer;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.webmodule.auth;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.resources;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.util;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.mappers.entity;
+ exports org.apache.causeway.viewer.restfulobjects.viewer.mappers;
+ exports
org.apache.causeway.viewer.restfulobjects.viewer.resources.serialization;
+
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires java.annotation;
+ requires java.inject;
+ requires java.transaction;
+ requires java.ws.rs;
+ requires java.xml.bind;
+ requires javax.servlet.api;
+ requires lombok;
+ requires org.apache.causeway.applib;
+ requires org.apache.causeway.commons;
+ requires org.apache.causeway.core.config;
+ requires org.apache.causeway.core.metamodel;
+ requires org.apache.causeway.core.webapp;
+ requires org.apache.causeway.security.api;
+ requires org.apache.causeway.viewer.commons.applib;
+ requires org.apache.causeway.viewer.commons.services;
+ requires org.apache.causeway.viewer.restfulobjects.applib;
+ requires org.apache.causeway.viewer.restfulobjects.rendering;
+ requires org.apache.logging.log4j;
+ requires spring.beans;
+ requires spring.context;
+ requires spring.core;
+ requires spring.web;
+}
\ No newline at end of file