src/share/jaxws_classes/com/sun/xml/internal/bind/v2/runtime/ElementBeanInfoImpl.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 1997, 2013, 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
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
--- 1,7 ----
/*
! * 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
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
*** 206,217 ****
this.core = core;
}
@Override
public final void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException {
! state.loader = core;
! state.intercepter = this;
// TODO: make sure there aren't too many duplicate of this code
// create the object to unmarshal
Object child;
UnmarshallingContext context = state.getContext();
--- 206,217 ----
this.core = core;
}
@Override
public final void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException {
! state.setLoader(core);
! state.setIntercepter(this);
// TODO: make sure there aren't too many duplicate of this code
// create the object to unmarshal
Object child;
UnmarshallingContext context = state.getContext();
*** 229,253 ****
child = context.createInstance(ElementBeanInfoImpl.this);
fireBeforeUnmarshal(ElementBeanInfoImpl.this, child, state);
context.recordOuterPeer(child);
! UnmarshallingContext.State p = state.prev;
! p.backup = p.target;
! p.target = child;
core.startElement(state,ea);
}
public Object intercept(UnmarshallingContext.State state, Object o) throws SAXException {
! JAXBElement e = (JAXBElement)state.target;
! state.target = state.backup;
! state.backup = null;
! if (state.nil) {
e.setNil(true);
! state.nil = false;
}
if(o!=null)
// if the value is a leaf type, it's often already set to the element
// through Accessor.
--- 229,253 ----
child = context.createInstance(ElementBeanInfoImpl.this);
fireBeforeUnmarshal(ElementBeanInfoImpl.this, child, state);
context.recordOuterPeer(child);
! UnmarshallingContext.State p = state.getPrev();
! p.setBackup(p.getTarget());
! p.setTarget(child);
core.startElement(state,ea);
}
public Object intercept(UnmarshallingContext.State state, Object o) throws SAXException {
! JAXBElement e = (JAXBElement)state.getTarget();
! state.setTarget(state.getBackup());
! state.setBackup(null);
! if (state.isNil()) {
e.setNil(true);
! state.setNil(false);
}
if(o!=null)
// if the value is a leaf type, it's often already set to the element
// through Accessor.