[
https://issues.apache.org/jira/browse/AXIS2-5649?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andreas Veithen updated AXIS2-5649:
-----------------------------------
Fix Version/s: (was: 1.6.3)
1.6.4
> Allow the access specifier of the mutators to be configurable in the axis2
> generated artifact classes
> -----------------------------------------------------------------------------------------------------
>
> Key: AXIS2-5649
> URL: https://issues.apache.org/jira/browse/AXIS2-5649
> Project: Axis2
> Issue Type: Improvement
> Components: adb, codegen
> Affects Versions: 1.6.2
> Reporter: Sunil Veera
> Labels: axis2, axis2_1.6.2
> Fix For: 1.6.4
>
>
> Right now, all the getters and setters {{getX}} and {{setX}} that operate on
> the instance variables {{localX}} are public in both the generated request
> and response classes.
> We'd like the access of the setters in the response objects at least to be
> {{private}}, preferably made configurable, so the users can specify their
> preferences via a new configuration parameter, say '{{setterAccess}}' in the
> calling maven plugin. This would help maintain the immutability of the
> generated service response objects.
> Without this, we resort to hoping that the clients of these generated
> response classes won't modify the objects in a way we don't want them to.
> Typically, here's how a setter template looks in all of the {{*Template.xsl}}
> files in the {{axis2-adb-codegen}}:
> {code:java}
> /**
> * Auto generated setter method
> * Overridden from <xsl:value-of select="$restriction"/>
> *
> * @param param <xsl:value-of select="$javaName"/>
> * @throws RuntimeException
> */
> private void set<xsl:value-of select="$javaName"/>(<xsl:value-of
> select="$propertyType"/> param){
> throw new java.lang.RuntimeException();
> }
> {code}
> We'd like the access specifier of these setters to be made configurable like
> many other attributes are.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]