Author: amilas Date: Thu Oct 13 12:48:47 2011 New Revision: 1182813 URL: http://svn.apache.org/viewvc?rev=1182813&view=rev Log: applying the patch for AXIS2-5159
Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/writer/JavaBeanWriter.java Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl?rev=1182813&r1=1182812&r2=1182813&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl (original) +++ axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl Thu Oct 13 12:48:47 2011 @@ -450,6 +450,18 @@ <xsl:choose> <xsl:when test="(@restrictionBaseType)"> <xsl:choose> + <xsl:when test="(@maxLenFacet) and (@minLenFacet) and (@patternFacet)"> + if ( <xsl:if test="(@minLenFacet)"> (<xsl:value-of select="$minLenFacet"/> <= java.lang.String.valueOf(param).length())</xsl:if> + && <xsl:if test="(@maxLenFacet)"> (java.lang.String.valueOf(param).length() <= <xsl:value-of select="$maxLenFacet"/>) </xsl:if> + && <xsl:if test="(@patternFacet)"> (org.apache.axis2.databinding.utils.ConverterUtil.convertToString(param).matches("<xsl:value-of select="$patternFacet"/>")) </xsl:if> ) { + + this.<xsl:value-of select="$varName"/>=param; + + } + else { + throw new java.lang.RuntimeException(); + } + </xsl:when> <xsl:when test="(@patternFacet)"> if (org.apache.axis2.databinding.utils.ConverterUtil.convertToString(param).matches("<xsl:value-of select="$patternFacet"/>")) { this.<xsl:value-of select="$varName"/>=param; Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl?rev=1182813&r1=1182812&r2=1182813&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl (original) +++ axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl Thu Oct 13 12:48:47 2011 @@ -438,6 +438,18 @@ <xsl:choose> <xsl:when test="(@restrictionBaseType)"> <xsl:choose> + <xsl:when test="(@maxLenFacet) and (@minLenFacet) and (@patternFacet)"> + if ( <xsl:if test="(@minLenFacet)"> (<xsl:value-of select="$minLenFacet"/> <= java.lang.String.valueOf(param).length())</xsl:if> + && <xsl:if test="(@maxLenFacet)"> (java.lang.String.valueOf(param).length() <= <xsl:value-of select="$maxLenFacet"/>) </xsl:if> + && <xsl:if test="(@patternFacet)"> (org.apache.axis2.databinding.utils.ConverterUtil.convertToString(param).matches("<xsl:value-of select="$patternFacet"/>")) </xsl:if> ) { + + this.<xsl:value-of select="$varName"/>=param; + + } + else { + throw new java.lang.RuntimeException(); + } + </xsl:when> <xsl:when test="(@patternFacet)"> if ( param.matches( "<xsl:value-of select="$patternFacet"/>" )) { this.<xsl:value-of select="$varName"/>=param; Modified: axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/writer/JavaBeanWriter.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/writer/JavaBeanWriter.java?rev=1182813&r1=1182812&r2=1182813&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/writer/JavaBeanWriter.java (original) +++ axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/writer/JavaBeanWriter.java Thu Oct 13 12:48:47 2011 @@ -1025,6 +1025,20 @@ public class JavaBeanWriter implements B if (metainf.isRestrictionBaseType(name) && metainf.getPatternFacet() != null) { XSLTUtils.addAttribute(model, "patternFacet", metainf.getPatternFacet(), property); + /* + if restriction use either maxLenFacet or minLenFacet then other xxxLenFacet get following default value + for minLenFacet = -1 as default + for maxLenFacet = 9223372036854775807 (Long.MAX_VALUE) as default + */ + if(metainf.getMaxLengthFacet() != -1){ + if(metainf.getMinLengthFacet() == -1){ + XSLTUtils.addAttribute(model, "minLenFacet", "-1", property); + } + }else{ + if(metainf.getMinLengthFacet()!=-1){ + XSLTUtils.addAttribute(model, "maxLenFacet", Long.MAX_VALUE + "", property); + } + } } }