gnodet commented on code in PR #1194:
URL: https://github.com/apache/maven/pull/1194#discussion_r1253270018


##########
api/maven-api-settings/src/main/mdo/settings.mdo:
##########
@@ -535,6 +539,62 @@
           <type>String</type>
         </field>
       </fields>
+      <codeSegments>
+        <codeSegment>
+          <version>1.0.0/1.3.0</version>
+          <code>
+            <![CDATA[
+    public boolean isActive() {
+        return (getActiveString() != null) ? 
Boolean.parseBoolean(getActiveString()) : true;
+    }
+
+    public void setActive(boolean active) {
+        setActiveString(String.valueOf(active));
+    }
+
+    public int getPort() {
+        return (getPortString() != null) ? Integer.parseInt(getPortString()) : 
8080;
+    }
+
+    public void setPort(int port) {
+        setPortString(String.valueOf(port));
+    }
+            ]]>
+          </code>
+        </codeSegment>
+        <codeSegment>
+          <version>2.0.0+</version>
+          <code>
+            <![CDATA[
+    /**
+     * Indicates if this proxy is active or not.
+     * To allow interpolation of this field, this method lazily parses
+     * the {@link #getActiveString()} value as a boolean and defaults to 
{@code true}
+     * if not set.
+     *
+     * @return a boolean indicating whether this proxy is active or not
+     */
+    public boolean isActive() {
+        return (getActiveString() != null) ? 
Boolean.parseBoolean(getActiveString()) : true;
+    }
+
+    /**
+     * Returns the port to use for this proxy.
+     * To allow interpolation of this field, this method lazily parses
+     * the {@link #getPortString()} value as an integer and defaults to {@code 
8080}
+     * if not set.
+     *
+     * @return an integer indicating the port to use for this proxy
+     * @throws NumberFormatException if the port string is not a valid integer

Review Comment:
   Unless someone use the classes directly, the whole thing happens 
[here](https://github.com/apache/maven/blob/229b31b626b76cc86bd48921fc254406ccea9afb/maven-settings-builder/src/main/java/org/apache/maven/settings/building/DefaultSettingsBuilder.java#L93-L147).
   So the process is the following:
   * parse user/project/global settings.xml 
   * merge them
   * interpolate
   * validate
   This usually is done by Maven, so in this case it does make sense to 
validate the port value during the validation phase. Not sure if we can add an 
int storage, but if that's validate earlier, I would just remove the doc about 
the `NumberFormatException` as this should not happen at runtime because the 
builder would have rejected the mirror validation.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to