jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/spi/db/TypeInfo.java
changeset 27837 86d4f46e622a
parent 25871 b80b84e87032
--- a/jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/spi/db/TypeInfo.java	Wed Jul 05 20:08:43 2017 +0200
+++ b/jaxws/src/java.xml.ws/share/classes/com/sun/xml/internal/ws/spi/db/TypeInfo.java	Tue Dec 02 15:03:49 2014 +0100
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -33,8 +33,7 @@
 import java.util.Map;
 
 import javax.xml.namespace.QName;
-
-import com.sun.xml.internal.bind.v2.model.nav.Navigator;
+import javax.xml.bind.annotation.XmlElementWrapper;
 
 /**
  * A reference to a JAXB-bound type.
@@ -75,6 +74,8 @@
 
     private TypeInfo parentCollectionType;
 
+    private TypeInfo wrapperType;
+
     private Type genericType;
 
     private boolean nillable = true;
@@ -172,7 +173,6 @@
     }
 
     public TypeInfo getItemType() {
-//      System.out.println("????? TypeInfo " + type);
         if (type instanceof Class && ((Class)type).isArray() && !byte[].class.equals(type)) {
             Type componentType = ((Class)type).getComponentType();
             Type genericComponentType = null;
@@ -183,6 +183,7 @@
             }
             TypeInfo ti =new TypeInfo(tagName, componentType, annotations);
             if (genericComponentType != null) ti.setGenericType(genericComponentType);
+            for(Annotation anno : annotations) if (anno instanceof XmlElementWrapper) ti.wrapperType = this;
             return ti;
         }
 //        if (type instanceof Class && java.util.Collection.class.isAssignableFrom((Class)type)) {
@@ -193,4 +194,8 @@
         }
         return null;
     }
+
+    public TypeInfo getWrapperType() {
+        return wrapperType;
+    }
 }