From cd3486cc121dfd546bac161d070601c640dc60b1 Mon Sep 17 00:00:00 2001
From: Oana-Lavinia Florean <florean.lavinia@gmail.com>
Date: Mon, 7 Feb 2022 10:39:55 +0200
Subject: [PATCH] XWIKI-19172: Display rendered images in view mode inside a
 lightbox (#1765)

* reorganization of the xwiki-platform-image module according to the discussion and vote from https://forum.xwiki.org/t/image-module-organization/9599
---
 .../xwiki-platform-image/pom.xml              |  5 +--
 .../xwiki-platform-image-processing/pom.xml   | 38 +++++++++++++++++++
 .../pom.xml                                   |  6 ++-
 .../plugin/image/DefaultImageProcessor.java   |  0
 .../image/ThumbnailatorImageProcessor.java    |  0
 .../xwiki/plugin/image/ImageProcessor.java    |  0
 .../main/resources/META-INF/components.txt    |  0
 .../pom.xml                                   |  8 ++--
 .../checkstyle/checkstyle-suppressions.xml    |  0
 .../xpn/xwiki/plugin/image/ImagePlugin.java   |  0
 .../xwiki/plugin/image/ImagePluginAPI.java    |  0
 .../xwiki/plugin/image/ImagePluginTest.java   |  0
 .../xwiki-platform-oldcore/pom.xml            |  2 +-
 .../pom.xml                                   |  2 +-
 14 files changed, 51 insertions(+), 10 deletions(-)
 create mode 100644 xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/pom.xml
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-api => xwiki-platform-image-processing/xwiki-platform-image-processing-api}/pom.xml (85%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-api => xwiki-platform-image-processing/xwiki-platform-image-processing-api}/src/main/java/com/xpn/xwiki/internal/plugin/image/DefaultImageProcessor.java (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-api => xwiki-platform-image-processing/xwiki-platform-image-processing-api}/src/main/java/com/xpn/xwiki/internal/plugin/image/ThumbnailatorImageProcessor.java (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-api => xwiki-platform-image-processing/xwiki-platform-image-processing-api}/src/main/java/com/xpn/xwiki/plugin/image/ImageProcessor.java (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-api => xwiki-platform-image-processing/xwiki-platform-image-processing-api}/src/main/resources/META-INF/components.txt (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-plugin => xwiki-platform-image-processing/xwiki-platform-image-processing-plugin}/pom.xml (87%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-plugin => xwiki-platform-image-processing/xwiki-platform-image-processing-plugin}/src/main/checkstyle/checkstyle-suppressions.xml (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-plugin => xwiki-platform-image-processing/xwiki-platform-image-processing-plugin}/src/main/java/com/xpn/xwiki/plugin/image/ImagePlugin.java (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-plugin => xwiki-platform-image-processing/xwiki-platform-image-processing-plugin}/src/main/java/com/xpn/xwiki/plugin/image/ImagePluginAPI.java (100%)
 rename xwiki-platform-core/xwiki-platform-image/{xwiki-platform-image-plugin => xwiki-platform-image-processing/xwiki-platform-image-processing-plugin}/src/test/java/com/xpn/xwiki/plugin/image/ImagePluginTest.java (100%)

diff --git a/xwiki-platform-core/xwiki-platform-image/pom.xml b/xwiki-platform-core/xwiki-platform-image/pom.xml
index b2ab04c68a1..2c566eeee53 100644
--- a/xwiki-platform-core/xwiki-platform-image/pom.xml
+++ b/xwiki-platform-core/xwiki-platform-image/pom.xml
@@ -29,10 +29,9 @@
   </parent>
   <artifactId>xwiki-platform-image</artifactId>
   <name>XWiki Platform - Image - Parent POM</name>
-  <description>Code related to image processing</description>
+  <description>XWiki Platform - Image - Parent POM</description>
   <packaging>pom</packaging>
   <modules>
-    <module>xwiki-platform-image-api</module>
-    <module>xwiki-platform-image-plugin</module>
+    <module>xwiki-platform-image-processing</module>
   </modules>
 </project>
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/pom.xml b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/pom.xml
new file mode 100644
index 00000000000..12df688b458
--- /dev/null
+++ b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/pom.xml
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * See the NOTICE file distributed with this work for additional
+ * information regarding copyright ownership.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+-->
+
+<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/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.xwiki.platform</groupId>
+    <artifactId>xwiki-platform-image</artifactId>
+    <version>14.1-SNAPSHOT</version>
+  </parent>
+  <artifactId>xwiki-platform-image-processing</artifactId>
+  <name>XWiki Platform - Image - Processing</name>
+  <description>Code related to image processing</description>
+  <packaging>pom</packaging>
+  <modules>
+    <module>xwiki-platform-image-processing-api</module>
+    <module>xwiki-platform-image-processing-plugin</module>
+  </modules>
+</project>
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/pom.xml b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/pom.xml
similarity index 85%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/pom.xml
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/pom.xml
index e33b1e1c80b..1e005b2b170 100644
--- a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/pom.xml
+++ b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/pom.xml
@@ -24,14 +24,16 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.xwiki.platform</groupId>
-    <artifactId>xwiki-platform-image</artifactId>
+    <artifactId>xwiki-platform-image-processing</artifactId>
     <version>14.1-SNAPSHOT</version>
   </parent>
-  <artifactId>xwiki-platform-image-api</artifactId>
+  <artifactId>xwiki-platform-image-processing-api</artifactId>
   <name>XWiki Platform - Image - API</name>
   <properties>
     <thumbnailator.version>0.4.8</thumbnailator.version>
     <xwiki.jacoco.instructionRatio>0.00</xwiki.jacoco.instructionRatio>
+    <!-- Old names of this module used for retro compatibility when resolving dependencies of old extensions -->
+    <xwiki.extension.features>org.xwiki.platform:xwiki-platform-image-api</xwiki.extension.features>
   </properties>
   <dependencies>
     <dependency>
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/java/com/xpn/xwiki/internal/plugin/image/DefaultImageProcessor.java b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/java/com/xpn/xwiki/internal/plugin/image/DefaultImageProcessor.java
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/java/com/xpn/xwiki/internal/plugin/image/DefaultImageProcessor.java
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/java/com/xpn/xwiki/internal/plugin/image/DefaultImageProcessor.java
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/java/com/xpn/xwiki/internal/plugin/image/ThumbnailatorImageProcessor.java b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/java/com/xpn/xwiki/internal/plugin/image/ThumbnailatorImageProcessor.java
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/java/com/xpn/xwiki/internal/plugin/image/ThumbnailatorImageProcessor.java
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/java/com/xpn/xwiki/internal/plugin/image/ThumbnailatorImageProcessor.java
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/java/com/xpn/xwiki/plugin/image/ImageProcessor.java b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/java/com/xpn/xwiki/plugin/image/ImageProcessor.java
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/java/com/xpn/xwiki/plugin/image/ImageProcessor.java
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/java/com/xpn/xwiki/plugin/image/ImageProcessor.java
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/resources/META-INF/components.txt b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/resources/META-INF/components.txt
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-api/src/main/resources/META-INF/components.txt
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-api/src/main/resources/META-INF/components.txt
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/pom.xml b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/pom.xml
similarity index 87%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/pom.xml
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/pom.xml
index 38e9fe63681..7c51e46380b 100644
--- a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/pom.xml
+++ b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/pom.xml
@@ -24,16 +24,18 @@
   <modelVersion>4.0.0</modelVersion>
   <parent>
     <groupId>org.xwiki.platform</groupId>
-    <artifactId>xwiki-platform-image</artifactId>
+    <artifactId>xwiki-platform-image-processing</artifactId>
     <version>14.1-SNAPSHOT</version>
   </parent>
-  <artifactId>xwiki-platform-image-plugin</artifactId>
+  <artifactId>xwiki-platform-image-processing-plugin</artifactId>
   <name>XWiki Platform - Image - Plugin</name>
   <description>Deprecated Image plugin</description>
   <properties>
     <checkstyle.suppressions.location>${basedir}/src/main/checkstyle/checkstyle-suppressions.xml</checkstyle.suppressions.location>
     <xwiki.jacoco.instructionRatio>0.54</xwiki.jacoco.instructionRatio>
-    </properties>
+    <!-- Old names of this module used for retro compatibility when resolving dependencies of old extensions -->
+    <xwiki.extension.features>org.xwiki.platform:xwiki-platform-image-plugin</xwiki.extension.features>
+  </properties>
   <dependencies>
     <dependency>
       <groupId>org.xwiki.platform</groupId>
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/main/checkstyle/checkstyle-suppressions.xml b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/main/checkstyle/checkstyle-suppressions.xml
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/main/checkstyle/checkstyle-suppressions.xml
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/main/checkstyle/checkstyle-suppressions.xml
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePlugin.java b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePlugin.java
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePlugin.java
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePlugin.java
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePluginAPI.java b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePluginAPI.java
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePluginAPI.java
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/main/java/com/xpn/xwiki/plugin/image/ImagePluginAPI.java
diff --git a/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/test/java/com/xpn/xwiki/plugin/image/ImagePluginTest.java b/xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/test/java/com/xpn/xwiki/plugin/image/ImagePluginTest.java
similarity index 100%
rename from xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-plugin/src/test/java/com/xpn/xwiki/plugin/image/ImagePluginTest.java
rename to xwiki-platform-core/xwiki-platform-image/xwiki-platform-image-processing/xwiki-platform-image-processing-plugin/src/test/java/com/xpn/xwiki/plugin/image/ImagePluginTest.java
diff --git a/xwiki-platform-core/xwiki-platform-oldcore/pom.xml b/xwiki-platform-core/xwiki-platform-oldcore/pom.xml
index d76a8b3b18c..68576bcc256 100644
--- a/xwiki-platform-core/xwiki-platform-oldcore/pom.xml
+++ b/xwiki-platform-core/xwiki-platform-oldcore/pom.xml
@@ -303,7 +303,7 @@
     </dependency>
     <dependency>
       <groupId>org.xwiki.platform</groupId>
-      <artifactId>xwiki-platform-image-api</artifactId>
+      <artifactId>xwiki-platform-image-processing-api</artifactId>
       <version>${project.version}</version>
     </dependency>
 
diff --git a/xwiki-platform-distribution/xwiki-platform-distribution-war-dependencies/pom.xml b/xwiki-platform-distribution/xwiki-platform-distribution-war-dependencies/pom.xml
index 6e8fb6ab9e1..89fbcf533b0 100644
--- a/xwiki-platform-distribution/xwiki-platform-distribution-war-dependencies/pom.xml
+++ b/xwiki-platform-distribution/xwiki-platform-distribution-war-dependencies/pom.xml
@@ -568,7 +568,7 @@
     <!-- Image plugin -->
     <dependency>
       <groupId>org.xwiki.platform</groupId>
-      <artifactId>xwiki-platform-image-plugin</artifactId>
+      <artifactId>xwiki-platform-image-processing-plugin</artifactId>
       <version>${project.version}</version>
       <scope>runtime</scope>
     </dependency>
-- 
GitLab