16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package com.sun.tools.internal.xjc.api.impl.s2j;
27
28 import javax.xml.bind.JAXBElement;
29
30 import com.sun.codemodel.internal.JType;
31 import com.sun.codemodel.internal.JBlock;
32 import com.sun.codemodel.internal.JVar;
33 import com.sun.codemodel.internal.JConditional;
34 import com.sun.codemodel.internal.JExpr;
35 import com.sun.codemodel.internal.JExpression;
36 import com.sun.tools.internal.xjc.model.Aspect;
37 import com.sun.tools.internal.xjc.outline.FieldOutline;
38 import com.sun.tools.internal.xjc.outline.FieldAccessor;
39 import com.sun.tools.internal.xjc.model.CElementInfo;
40
41 /**
42 * {@link ElementAdapter} that works with a single {@link JAXBElement}.
43 *
44 * @author Kohsuke Kawaguchi
45 */
46 final class ElementSingleAdapter extends ElementAdapter {
47 public ElementSingleAdapter(FieldOutline core, CElementInfo ei) {
48 super(core, ei);
49 }
50
51 public JType getRawType() {
52 return ei.getContentInMemoryType().toType(outline(), Aspect.EXPOSED);
53 }
54
55 public FieldAccessor create(JExpression targetObject) {
56 return new FieldAccessorImpl(targetObject);
|
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package com.sun.tools.internal.xjc.api.impl.s2j;
27
28 import javax.xml.bind.JAXBElement;
29
30 import com.sun.codemodel.internal.JType;
31 import com.sun.codemodel.internal.JBlock;
32 import com.sun.codemodel.internal.JVar;
33 import com.sun.codemodel.internal.JConditional;
34 import com.sun.codemodel.internal.JExpr;
35 import com.sun.codemodel.internal.JExpression;
36 import com.sun.tools.internal.xjc.outline.Aspect;
37 import com.sun.tools.internal.xjc.outline.FieldOutline;
38 import com.sun.tools.internal.xjc.outline.FieldAccessor;
39 import com.sun.tools.internal.xjc.model.CElementInfo;
40
41 /**
42 * {@link ElementAdapter} that works with a single {@link JAXBElement}.
43 *
44 * @author Kohsuke Kawaguchi
45 */
46 final class ElementSingleAdapter extends ElementAdapter {
47 public ElementSingleAdapter(FieldOutline core, CElementInfo ei) {
48 super(core, ei);
49 }
50
51 public JType getRawType() {
52 return ei.getContentInMemoryType().toType(outline(), Aspect.EXPOSED);
53 }
54
55 public FieldAccessor create(JExpression targetObject) {
56 return new FieldAccessorImpl(targetObject);
|