1 /* |
1 /* |
2 * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. Oracle designates this |
7 * published by the Free Software Foundation. Oracle designates this |
96 @Override |
96 @Override |
97 public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { |
97 public void startElement(UnmarshallingContext.State state, TagName ea) throws SAXException { |
98 UnmarshallingContext context = state.getContext(); |
98 UnmarshallingContext context = state.getContext(); |
99 context.startScope(1); |
99 context.startScope(1); |
100 // inherit the target so that our children can access its target |
100 // inherit the target so that our children can access its target |
101 state.target = state.prev.target; |
101 state.setTarget(state.getPrev().getTarget()); |
102 |
102 |
103 // start it now, so that even if there's no children we can still return empty collection |
103 // start it now, so that even if there's no children we can still return empty collection |
104 context.getScope(0).start(acc,lister); |
104 context.getScope(0).start(acc,lister); |
105 } |
105 } |
106 |
106 |
114 } |
114 } |
115 if (child == null) { |
115 if (child == null) { |
116 super.childElement(state,ea); |
116 super.childElement(state,ea); |
117 return; |
117 return; |
118 } |
118 } |
119 state.loader = child.loader; |
119 state.setLoader(child.loader); |
120 state.receiver = child.receiver; |
120 state.setReceiver(child.receiver); |
121 } |
121 } |
122 |
122 |
123 @Override |
123 @Override |
124 public void leaveElement(UnmarshallingContext.State state, TagName ea) throws SAXException { |
124 public void leaveElement(UnmarshallingContext.State state, TagName ea) throws SAXException { |
125 state.getContext().endScope(1); |
125 state.getContext().endScope(1); |