[ https://issues.apache.org/jira/browse/MNG-8214?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17876927#comment-17876927 ]
ASF GitHub Bot commented on MNG-8214: ------------------------------------- kwin commented on code in PR #1660: URL: https://github.com/apache/maven/pull/1660#discussion_r1732258290 ########## src/mdo/model.vm: ########## @@ -493,40 +482,15 @@ public class ${class.name} #end @Nonnull public ${class.name} build() { + // this method should not contain any logic other than creating the object in order to ease subclassing Review Comment: No it isn't, this needs to be kept as optimization. I clarified the comment in https://github.com/apache/maven/pull/1660/commits/effa73709e4b49a9509f0891ee3c6225b0b9a02c. > Allow extension of the model classes being generated with model.vm > ------------------------------------------------------------------ > > Key: MNG-8214 > URL: https://issues.apache.org/jira/browse/MNG-8214 > Project: Maven > Issue Type: Improvement > Affects Versions: 4.0.0-beta-3 > Reporter: Konrad Windszus > Assignee: Konrad Windszus > Priority: Major > > The [model.vm|https://github.com/apache/maven/blob/master/src/mdo/model.vm] > being used with Maven 4 models generates immutable classes with builders. The > generated classes cannot be extended easily because > # the builder's constructor is having default access instead of being > protected > (https://github.com/apache/maven/blob/e335f95dfd11468bdf617421fd5e7093a727d1e1/src/mdo/model.vm#L409 > and > https://github.com/apache/maven/blob/e335f95dfd11468bdf617421fd5e7093a727d1e1/src/mdo/model.vm#L427 > # the classes constructor doesn't take a builder as argument (therefore the > subclass cannot leverage most of the functionality currently encapsulated by > the Builder) -- This message was sent by Atlassian Jira (v8.20.10#820010)