This is an automated email from the ASF dual-hosted git repository. joergrade pushed a commit to branch vaadin-viewer in repository https://gitbox.apache.org/repos/asf/causeway.git
commit 0a63354f519815f952fb5772c2494dfb9b87127b Author: Jörg Rade <[email protected]> AuthorDate: Fri May 24 23:05:55 2024 +0200 CAUSEWAY-3747 Maven scaffold --- bom/pom.xml | 29 +++++- viewers/vaadin/adoc/modules/ROOT/nav.adoc | 4 + viewers/vaadin/model/pom.xml | 64 ++++++++++++ .../vaadin/model/src/main/java/package-info.java | 0 viewers/vaadin/pom.xml | 46 +++++++++ viewers/vaadin/ui/pom.xml | 107 ++++++++++++++++++++ .../vaadin/ui/CausewayModuleViewerVaadinUi.java | 41 ++++++++ viewers/vaadin/ui/src/main/java/package-info.java | 0 viewers/vaadin/viewer/pom.xml | 109 +++++++++++++++++++++ .../viewer/CausewayModuleViewerVaadinViewer.java | 59 +++++++++++ 10 files changed, 457 insertions(+), 2 deletions(-) diff --git a/bom/pom.xml b/bom/pom.xml index 6c471d8a98..dbb728afbb 100644 --- a/bom/pom.xml +++ b/bom/pom.xml @@ -188,7 +188,9 @@ It is therefore a copy of org.apache:apache, with customisations clearly identif <wicket-viewer-jquery.version>3.7.1</wicket-viewer-jquery.version> <!-- as served by wicket via webjars --> <wicketstuff.version>10.0.0</wicketstuff.version> <!-- org.wicketstuff:wicketstuff-select2 --> - <!-- OTHER --> + <vaadin.version>23.2.10</vaadin.version> + + <!-- OTHER --> <distMgmtSnapshotsName>Apache Development Snapshot Repository</distMgmtSnapshotsName> <distMgmtSnapshotsUrl>https://repository.apache.org/content/repositories/snapshots</distMgmtSnapshotsUrl> @@ -2059,13 +2061,36 @@ It is therefore a copy of org.apache:apache, with customisations clearly identif <version>${select2.version}</version> </dependency> + <dependency> + <groupId>org.webjars.npm</groupId> + <artifactId>mobile-drag-drop</artifactId> + <version>2.3.0-rc.2</version> + </dependency> + <dependency> <groupId>org.wicketstuff</groupId> <artifactId>wicketstuff-select2</artifactId> <version>${wicketstuff.version}</version> </dependency> - <dependency> + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-spring-boot-starter</artifactId> + <version>${vaadin.version}</version> + <exclusions> + <!-- this is a library module, don't pull in embedded tomcat etc. here --> + <exclusion> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-web</artifactId> + </exclusion> + <exclusion> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-dev-server</artifactId> + </exclusion> + </exclusions> + </dependency> + + <dependency> <groupId>io.cucumber</groupId> <artifactId>cucumber-java</artifactId> <version>${cucumber.version}</version> diff --git a/viewers/vaadin/adoc/modules/ROOT/nav.adoc b/viewers/vaadin/adoc/modules/ROOT/nav.adoc new file mode 100644 index 0000000000..ebdb5577b3 --- /dev/null +++ b/viewers/vaadin/adoc/modules/ROOT/nav.adoc @@ -0,0 +1,4 @@ + +:Notice: 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 ag [...] + +include::vw:ROOT:partial$component-nav.adoc[] diff --git a/viewers/vaadin/model/pom.xml b/viewers/vaadin/model/pom.xml new file mode 100644 index 0000000000..84ca06caa4 --- /dev/null +++ b/viewers/vaadin/model/pom.xml @@ -0,0 +1,64 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin</artifactId> + <version>3.0.0-SNAPSHOT</version> + </parent> + + <artifactId>causeway-viewer-vaadin-model</artifactId> + <name>Apache Causeway Viewer - Vaadin (Model)</name> + + <properties> + <jar-plugin.automaticModuleName>org.apache.causeway.viewer.vaadin.model</jar-plugin.automaticModuleName> + <git-plugin.propertiesDir>org/apache/causeway/viewer/vaadin/model</git-plugin.propertiesDir> + </properties> + + <dependencies> + + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-spring-boot-starter</artifactId> + <!--version>${vaadin.version}</version--> + </dependency> + + <dependency> + <groupId>org.apache.causeway.core</groupId> + <artifactId>causeway-core-webapp</artifactId> + </dependency> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-commons-applib</artifactId> + </dependency> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-commons-model</artifactId> + </dependency> + + </dependencies> + +</project> diff --git a/viewers/vaadin/model/src/main/java/package-info.java b/viewers/vaadin/model/src/main/java/package-info.java new file mode 100644 index 0000000000..e69de29bb2 diff --git a/viewers/vaadin/pom.xml b/viewers/vaadin/pom.xml new file mode 100644 index 0000000000..c6686dac59 --- /dev/null +++ b/viewers/vaadin/pom.xml @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.apache.causeway.core</groupId> + <artifactId>causeway-core</artifactId> + <version>3.0.0-SNAPSHOT</version> + <relativePath>../../core/pom.xml</relativePath> + </parent> + + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin</artifactId> + <name>Apache Causeway Viewer - Vaadin</name> + + <packaging>pom</packaging> + + <dependencies> + </dependencies> + + <modules> + <module>model</module> + <module>ui</module> + <module>viewer</module> + </modules> + +</project> diff --git a/viewers/vaadin/ui/pom.xml b/viewers/vaadin/ui/pom.xml new file mode 100644 index 0000000000..c210aa9a36 --- /dev/null +++ b/viewers/vaadin/ui/pom.xml @@ -0,0 +1,107 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin</artifactId> + <version>3.0.0-SNAPSHOT</version> + </parent> + + <artifactId>causeway-viewer-vaadin-ui</artifactId> + <name>Apache Causeway Viewer - Vaadin (UI Components)</name> + + <properties> + <jar-plugin.automaticModuleName>org.apache.causeway.viewer.vaadin.ui</jar-plugin.automaticModuleName> + <git-plugin.propertiesDir>org/apache/causeway/viewer/vaadin/ui</git-plugin.propertiesDir> + </properties> + + <build> + <resources> + <resource> + <filtering>false</filtering> + <directory>src/main/resources</directory> + </resource> + <resource> + <filtering>false</filtering> + <directory>src/main/java</directory> + <includes> + <include>**</include> + </includes> + <excludes> + <exclude>**/*.java</exclude> + </excludes> + </resource> + </resources> + <plugins> + <plugin> + <groupId>net.alchim31.maven</groupId> + <artifactId>yuicompressor-maven-plugin</artifactId> + <inherited>true</inherited> + </plugin> + </plugins> + </build> + + <dependencies> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin-model</artifactId> + <version>3.0.0-SNAPSHOT</version> + </dependency> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-commons-services</artifactId> + </dependency> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-commons-prism</artifactId> + </dependency> + + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-spring-boot-starter</artifactId> + <!--version>${vaadin.version}</version--> + </dependency> + + <!-- JDO API (non transient, provided by plugin) --> + <dependency> + <!-- v3.2 not available yet, use datanucleus staging for now --> + <!-- <groupId>javax.jdo</groupId> --> + <!-- <artifactId>jdo-api</artifactId> --> + <groupId>org.datanucleus</groupId> + <artifactId>javax.jdo</artifactId> + <!-- provided by plugins --> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-context</artifactId> + </dependency> + + </dependencies> + +</project> diff --git a/viewers/vaadin/ui/src/main/java/org/apache/causeway/viewer/vaadin/ui/CausewayModuleViewerVaadinUi.java b/viewers/vaadin/ui/src/main/java/org/apache/causeway/viewer/vaadin/ui/CausewayModuleViewerVaadinUi.java new file mode 100644 index 0000000000..0a63170610 --- /dev/null +++ b/viewers/vaadin/ui/src/main/java/org/apache/causeway/viewer/vaadin/ui/CausewayModuleViewerVaadinUi.java @@ -0,0 +1,41 @@ +/* + * 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. + */ +package org.apache.causeway.viewer.vaadin.ui; + +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Import; + +import org.apache.causeway.viewer.commons.services.CausewayModuleViewerCommonsServices; + +/** + * @since 3.x {@index} + */ +@Configuration +@Import({ + // Modules + CausewayModuleViewerCommonsServices.class, + //CausewayModuleViewerWicketModel.class, + + // @Service's + //CausewayWicketThemeSupportDefault.class, + //LogoutHandlerWkt.class, +}) +public class CausewayModuleViewerVaadinUi { + +} diff --git a/viewers/vaadin/ui/src/main/java/package-info.java b/viewers/vaadin/ui/src/main/java/package-info.java new file mode 100644 index 0000000000..e69de29bb2 diff --git a/viewers/vaadin/viewer/pom.xml b/viewers/vaadin/viewer/pom.xml new file mode 100644 index 0000000000..bc12ee6640 --- /dev/null +++ b/viewers/vaadin/viewer/pom.xml @@ -0,0 +1,109 @@ +<!-- +<?xml version="1.0" encoding="UTF-8"?> + 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + + <modelVersion>4.0.0</modelVersion> + + <parent> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin</artifactId> + <version>3.0.0-SNAPSHOT</version> + </parent> + + <name>Apache Causeway Viewer - Vaadin (Viewer)</name> + + <artifactId>causeway-viewer-vaadin-viewer</artifactId> + + <properties> + <jar-plugin.automaticModuleName>org.apache.causeway.viewer.vaadin.viewer</jar-plugin.automaticModuleName> + <git-plugin.propertiesDir>org/apache/causeway/viewer/vaadin/viewer</git-plugin.propertiesDir> + <!-- override surefire defaults from bom, as this is not a Java module yet --> + <surefire-plugin.argLine>-Xmx384m</surefire-plugin.argLine> + </properties> + + <build> + <resources> + <resource> + <filtering>false</filtering> + <directory>src/main/resources</directory> + </resource> + <resource> + <filtering>false</filtering> + <directory>src/main/java</directory> + <includes> + <include>**</include> + </includes> + <excludes> + <exclude>**/*.java</exclude> + </excludes> + </resource> + </resources> + </build> + + <dependencies> + + <dependency> + <groupId>com.vaadin</groupId> + <artifactId>vaadin-spring-boot-starter</artifactId> + <!-- + <version>${vaadin.version}</version> + --> + </dependency> + + <!-- Spring --> + + <dependency> + <groupId>org.springframework</groupId> + <artifactId>spring-web</artifactId> + </dependency> + + <!-- as required by wicket --> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + </dependency> + + <!-- TESTING --> + + <dependency> + <groupId>org.apache.causeway.core</groupId> + <artifactId>causeway-core-internaltestsupport</artifactId> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-wicket-ui</artifactId> + </dependency> + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin-ui</artifactId> + <version>3.0.0-SNAPSHOT</version> + <scope>compile</scope> + </dependency> + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-vaadin-ui</artifactId> + <version>3.0.0-SNAPSHOT</version> + <scope>compile</scope> + </dependency> + + </dependencies> + +</project> diff --git a/viewers/vaadin/viewer/src/main/java/org/apache/causeway/viewer/vaadin/viewer/CausewayModuleViewerVaadinViewer.java b/viewers/vaadin/viewer/src/main/java/org/apache/causeway/viewer/vaadin/viewer/CausewayModuleViewerVaadinViewer.java new file mode 100644 index 0000000000..3e02b356a1 --- /dev/null +++ b/viewers/vaadin/viewer/src/main/java/org/apache/causeway/viewer/vaadin/viewer/CausewayModuleViewerVaadinViewer.java @@ -0,0 +1,59 @@ +/* + * 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. + */ +package org.apache.causeway.viewer.vaadin.viewer; + +import org.apache.causeway.viewer.vaadin.ui.CausewayModuleViewerVaadinUi; + +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Import; + +/** + * @since 1.x {@index} + */ +@Configuration +@Import({ + // Modules + CausewayModuleViewerVaadinUi.class, + + // @Configuration's +/* BootstrapInitWkt.class, + JQueryInitWkt.class, + Select2InitWkt.class, + WebjarsInitWkt.class, + WicketViewerCssBundleInit.class, + DatatablesNetInitWkt.class, + DebugInitWkt.class, */ + + // @Service's +/* BookmarkUiServiceWicket.class, + ComponentFactoryRegistrarDefault.class, + ComponentFactoryRegistryDefault.class, + DeepLinkServiceWicket.class, + ImageResourceCacheClassPath.class, + HintStoreUsingWicketSession.class, + PageClassListDefault.class, + PageClassRegistryDefault.class, + PageNavigationServiceDefault.class, + WebModuleWicket.class,*/ + +}) +public class CausewayModuleViewerVaadinViewer { + + public static final String NAMESPACE = "causeway.viewer.vaadin"; +}
