You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/12/18 15:18:01 UTC

[maven] branch maven-3.8.x updated: Implement some #toString() methods

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch maven-3.8.x
in repository https://gitbox.apache.org/repos/asf/maven.git


The following commit(s) were added to refs/heads/maven-3.8.x by this push:
     new 6c53b28ec Implement some #toString() methods
6c53b28ec is described below

commit 6c53b28ecc84f0f90d5417f199d99b20334f26d7
Author: Piotrek Żygieło <pz...@users.noreply.github.com>
AuthorDate: Mon Jan 17 16:23:28 2022 +0100

    Implement some #toString() methods
    
    * Generate Organization#toString() with Modello
    * Implement Developer#toString()
    * Implement IssueManagement#toString()
    * Implement License#toString()
    * Generate MailingList#toString() with Modello
    * Generate Scm#toString() with Modello
    * Implement Build#toString()
    * Implement Organization#toString()
    * Implement MailingList#toString()
    * Implement Scm#toString()
    * Follow #toString() format in License
    * Follow #toString() format in IssueManagement
    * Follow #toString() format in Developer
    * Follow #toString() format in Build
    
    This closes #914
---
 maven-model/src/main/mdo/maven.mdo                 | 174 ++++++++++++++++++++-
 .../java/org/apache/maven/model/BuildTest.java     |   8 +
 .../java/org/apache/maven/model/DeveloperTest.java |  11 ++
 .../apache/maven/model/IssueManagementTest.java    |  10 ++
 .../java/org/apache/maven/model/LicenseTest.java   |  10 ++
 .../org/apache/maven/model/MailingListTest.java    |   9 ++
 .../org/apache/maven/model/OrganizationTest.java   |  32 ++++
 .../test/java/org/apache/maven/model/ScmTest.java  |   9 ++
 8 files changed, 261 insertions(+), 2 deletions(-)

diff --git a/maven-model/src/main/mdo/maven.mdo b/maven-model/src/main/mdo/maven.mdo
index 5242d3053..5d65ef997 100644
--- a/maven-model/src/main/mdo/maven.mdo
+++ b/maven-model/src/main/mdo/maven.mdo
@@ -43,8 +43,8 @@
   |   definition of these types
   |
 -->
-<model xmlns="http://codehaus-plexus.github.io/MODELLO/1.4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://codehaus-plexus.github.io/MODELLO/1.4.0 http://codehaus-plexus.github.io/modello/xsd/modello-1.4.0.xsd"
+<model xmlns="http://codehaus-plexus.github.io/MODELLO/1.8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://codehaus-plexus.github.io/MODELLO/1.8.0 http://codehaus-plexus.github.io/modello/xsd/modello-1.8.0.xsd"
   xml.namespace="http://maven.apache.org/POM/${version}"
   xml.schemaLocation="https://maven.apache.org/xsd/maven-${version}.xsd">
   <id>maven</id>
@@ -618,6 +618,18 @@
             ]]>
           </code>
         </codeSegment>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+     @Override
+     public String toString()
+     {
+         return "PluginContainer {}";
+     }
+            ]]>
+          </code>
+        </codeSegment>
       </codeSegments>
     </class>
     <class>
@@ -641,6 +653,22 @@
           </association>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "PluginConfiguration {" + super.toString() + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class>
       <name>BuildBase</name>
@@ -715,6 +743,22 @@
           </association>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "BuildBase {" + super.toString() + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class>
       <name>Build</name>
@@ -792,6 +836,22 @@
           </association>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "Build {" + super.toString() + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>CiManagement</name>
@@ -971,6 +1031,22 @@
           </association>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "Contributor {name=" + name + ", email=" + email + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>Dependency</name>
@@ -1179,6 +1255,22 @@
           <type>String</type>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "Developer {id=" + id + ", " + super.toString() + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>Exclusion</name>
@@ -1225,6 +1317,22 @@
           <type>String</type>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "IssueManagement {system=" + system + ", url=" + url + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>DistributionManagement</name>
@@ -1346,6 +1454,22 @@
           <type>String</type>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "License {name=" + name + ", url=" + url + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>MailingList</name>
@@ -1421,6 +1545,22 @@
       <comment>We could probably have a specific element for a dev mailing list for things like CI,
         and maybe even a specific element for the user and scm mailing lists. Then leave the more
         lose structure for any other type of mailing list.</comment>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "MailingList {name=" + name + ", archive=" + archive + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>Organization</name>
@@ -1440,6 +1580,22 @@
           <type>String</type>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "Organization {name=" + name + ", url=" + url + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
+      </codeSegments>
     </class>
     <class java.clone="deep">
       <name>PatternSet</name>
@@ -1737,6 +1893,20 @@
             ]]>
           </code>
         </codeSegment>
+        <codeSegment>
+          <version>4.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * @see java.lang.Object#toString()
+     */
+    public String toString()
+    {
+        return "Scm {connection=" + connection + "}";
+    }
+            ]]>
+          </code>
+        </codeSegment>
       </codeSegments>
     </class>
     <class>
diff --git a/maven-model/src/test/java/org/apache/maven/model/BuildTest.java b/maven-model/src/test/java/org/apache/maven/model/BuildTest.java
index 80a60d57e..ed2309500 100644
--- a/maven-model/src/test/java/org/apache/maven/model/BuildTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/BuildTest.java
@@ -53,4 +53,12 @@ public class BuildTest
         assertNotNull( new Build().toString() );
     }
 
+    public void testToStringNotNonsense()
+    {
+        Build build = new Build();
+
+        String s = build.toString();
+
+        assert "Build {BuildBase {PluginConfiguration {PluginContainer {}}}}".equals( s ) : s;
+    }
 }
diff --git a/maven-model/src/test/java/org/apache/maven/model/DeveloperTest.java b/maven-model/src/test/java/org/apache/maven/model/DeveloperTest.java
index c0dfe56df..8c847c8bd 100644
--- a/maven-model/src/test/java/org/apache/maven/model/DeveloperTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/DeveloperTest.java
@@ -53,4 +53,15 @@ public class DeveloperTest
         assertNotNull( new Developer().toString() );
     }
 
+    public void testToStringNotNonsense()
+    {
+        Developer dev = new Developer();
+        dev.setName( "Maven Tester" );
+        dev.setEmail( "tester@acme.localdomain" );
+        dev.setId( "20220118" );
+
+        String s = dev.toString();
+
+        assert "Developer {id=20220118, Contributor {name=Maven Tester, email=tester@acme.localdomain}}".equals( s ) : s;
+    }
 }
diff --git a/maven-model/src/test/java/org/apache/maven/model/IssueManagementTest.java b/maven-model/src/test/java/org/apache/maven/model/IssueManagementTest.java
index 5e50c1571..e5d838782 100644
--- a/maven-model/src/test/java/org/apache/maven/model/IssueManagementTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/IssueManagementTest.java
@@ -53,4 +53,14 @@ public class IssueManagementTest
         assertNotNull( new IssueManagement().toString() );
     }
 
+    public void testToStringNotNonsense()
+    {
+        IssueManagement im = new IssueManagement();
+        im.setSystem( "Velociraptor" );
+        im.setUrl( "https://velo.localdomain" );
+
+        String s = im.toString();
+
+        assert "IssueManagement {system=Velociraptor, url=https://velo.localdomain}".equals( s ) : s;
+    }
 }
diff --git a/maven-model/src/test/java/org/apache/maven/model/LicenseTest.java b/maven-model/src/test/java/org/apache/maven/model/LicenseTest.java
index 179921b2b..b3bb04950 100644
--- a/maven-model/src/test/java/org/apache/maven/model/LicenseTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/LicenseTest.java
@@ -53,4 +53,14 @@ public class LicenseTest
         assertNotNull( new License().toString() );
     }
 
+    public void testToStringNotNonsense()
+    {
+        License license = new License();
+        license.setName( "Unlicense" );
+        license.setUrl( "http://lic.localdomain" );
+
+        String s = license.toString();
+
+        assert "License {name=Unlicense, url=http://lic.localdomain}".equals( s ) : s;
+    }
 }
diff --git a/maven-model/src/test/java/org/apache/maven/model/MailingListTest.java b/maven-model/src/test/java/org/apache/maven/model/MailingListTest.java
index 612969520..0eb5444db 100644
--- a/maven-model/src/test/java/org/apache/maven/model/MailingListTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/MailingListTest.java
@@ -53,4 +53,13 @@ public class MailingListTest
         assertNotNull( new MailingList().toString() );
     }
 
+    public void testToStringNotNonsense()
+    {
+        MailingList list = new MailingList();
+        list.setName( "modello-dev" );
+
+        String s = list.toString();
+
+        assertEquals( "MailingList {name=modello-dev, archive=null}", s );
+    }
 }
diff --git a/maven-model/src/test/java/org/apache/maven/model/OrganizationTest.java b/maven-model/src/test/java/org/apache/maven/model/OrganizationTest.java
index 48abe77e2..07cffbbcf 100644
--- a/maven-model/src/test/java/org/apache/maven/model/OrganizationTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/OrganizationTest.java
@@ -53,4 +53,36 @@ public class OrganizationTest
         assertNotNull( new Organization().toString() );
     }
 
+
+    public void testToStringNotNonsense11()
+    {
+        Organization org = new Organization();
+        org.setName( "Testing Maven Unit" );
+        org.setUrl( "https://maven.localdomain" );
+
+        assertEquals( "Organization {name=Testing Maven Unit, url=https://maven.localdomain}", org.toString() );
+    }
+
+    public void testToStringNotNonsense10()
+    {
+        Organization org = new Organization();
+        org.setName( "Testing Maven Unit" );
+
+        assertEquals( "Organization {name=Testing Maven Unit, url=null}", org.toString() );
+    }
+
+    public void testToStringNotNonsense01()
+    {
+        Organization org = new Organization();
+        org.setUrl( "https://maven.localdomain" );
+
+        assertEquals( "Organization {name=null, url=https://maven.localdomain}", org.toString() );
+    }
+
+    public void testToStringNotNonsense00()
+    {
+        Organization org = new Organization();
+
+        assertEquals( "Organization {name=null, url=null}", org.toString() );
+    }
 }
diff --git a/maven-model/src/test/java/org/apache/maven/model/ScmTest.java b/maven-model/src/test/java/org/apache/maven/model/ScmTest.java
index 4d7699310..c160c3a18 100644
--- a/maven-model/src/test/java/org/apache/maven/model/ScmTest.java
+++ b/maven-model/src/test/java/org/apache/maven/model/ScmTest.java
@@ -53,4 +53,13 @@ public class ScmTest
         assertNotNull( new Scm().toString() );
     }
 
+    public void testToStringNotNonsense()
+    {
+        Scm scm = new Scm();
+        scm.setConnection( "scm:git:git://git.localdomain/model" );
+
+        String s = scm.toString();
+
+        assertEquals( "Scm {connection=scm:git:git://git.localdomain/model}", s );
+    }
 }