@@ -576,29 +576,22 @@ public boolean supports(Class<?> clazz) {
576576 }
577577
578578 @ Override
579- @ SuppressWarnings ("deprecation" )
580579 public boolean supports (Type genericType ) {
581580 if (genericType instanceof ParameterizedType ) {
582581 ParameterizedType parameterizedType = (ParameterizedType ) genericType ;
583582 if (JAXBElement .class == parameterizedType .getRawType () &&
584583 parameterizedType .getActualTypeArguments ().length == 1 ) {
585- boolean isJdk6 = (org .springframework .core .JdkVersion .getMajorJavaVersion () <= org .springframework .core .JdkVersion .JAVA_16 );
586- boolean isJdk7 = (org .springframework .core .JdkVersion .getMajorJavaVersion () >= org .springframework .core .JdkVersion .JAVA_17 );
587584 Type typeArgument = parameterizedType .getActualTypeArguments ()[0 ];
588585 if (typeArgument instanceof Class ) {
589586 Class <?> classArgument = (Class <?>) typeArgument ;
590- if (isJdk7 && classArgument .isArray ()) {
591- return (classArgument .getComponentType () == Byte .TYPE );
592- }
593- else {
594- return (isPrimitiveWrapper (classArgument ) || isStandardClass (classArgument ) ||
595- supportsInternal (classArgument , false ));
596- }
587+ return (((classArgument .isArray () && Byte .TYPE == classArgument .getComponentType ())) ||
588+ isPrimitiveWrapper (classArgument ) || isStandardClass (classArgument ) ||
589+ supportsInternal (classArgument , false ));
597590 }
598- else if (isJdk6 && typeArgument instanceof GenericArrayType ) {
599- // see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5041784
591+ else if (typeArgument instanceof GenericArrayType ) {
592+ // Only on JDK 6 - see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5041784
600593 GenericArrayType arrayType = (GenericArrayType ) typeArgument ;
601- return (arrayType . getGenericComponentType () == Byte . TYPE );
594+ return (Byte . TYPE == arrayType . getGenericComponentType () );
602595 }
603596 }
604597 }
@@ -634,21 +627,21 @@ else if (!ObjectUtils.isEmpty(this.classesToBeBound)) {
634627 * Compare section 8.5.1 of the JAXB2 spec.
635628 */
636629 private boolean isPrimitiveWrapper (Class <?> clazz ) {
637- return Boolean .class == clazz ||
630+ return ( Boolean .class == clazz ||
638631 Byte .class == clazz ||
639632 Short .class == clazz ||
640633 Integer .class == clazz ||
641634 Long .class == clazz ||
642635 Float .class == clazz ||
643- Double .class == clazz ;
636+ Double .class == clazz ) ;
644637 }
645638
646639 /**
647640 * Checks whether the given type is a standard class.
648641 * Compare section 8.5.2 of the JAXB2 spec.
649642 */
650643 private boolean isStandardClass (Class <?> clazz ) {
651- return String .class == clazz ||
644+ return ( String .class == clazz ||
652645 BigInteger .class .isAssignableFrom (clazz ) ||
653646 BigDecimal .class .isAssignableFrom (clazz ) ||
654647 Calendar .class .isAssignableFrom (clazz ) ||
@@ -661,10 +654,11 @@ private boolean isStandardClass(Class<?> clazz) {
661654 DataHandler .class == clazz ||
662655 // Source and subclasses should be supported according to the JAXB2 spec, but aren't in the RI
663656 // Source.class.isAssignableFrom(clazz) ||
664- UUID .class == clazz ;
657+ UUID .class == clazz ) ;
665658
666659 }
667660
661+
668662 // Marshalling
669663
670664 @ Override
0 commit comments