01: /*
02: * The contents of this file are subject to the terms
03: * of the Common Development and Distribution License
04: * (the "License"). You may not use this file except
05: * in compliance with the License.
06: *
07: * You can obtain a copy of the license at
08: * https://jwsdp.dev.java.net/CDDLv1.0.html
09: * See the License for the specific language governing
10: * permissions and limitations under the License.
11: *
12: * When distributing Covered Code, include this CDDL
13: * HEADER in each file and include the License file at
14: * https://jwsdp.dev.java.net/CDDLv1.0.html If applicable,
15: * add the following below this CDDL HEADER, with the
16: * fields enclosed by brackets "[]" replaced with your
17: * own identifying information: Portions Copyright [yyyy]
18: * [name of copyright owner]
19: */
20: package com.sun.xml.stream.buffer;
21:
22: class FragmentedArray<T> {
23: protected T _item;
24: protected FragmentedArray<T> _next;
25: protected FragmentedArray<T> _previous;
26:
27: FragmentedArray(T item) {
28: this (item, null);
29: }
30:
31: FragmentedArray(T item, FragmentedArray<T> previous) {
32: setArray(item);
33: if (previous != null) {
34: previous._next = this ;
35: _previous = previous;
36: }
37: }
38:
39: T getArray() {
40: return _item;
41: }
42:
43: void setArray(T item) {
44: assert (item.getClass().isArray());
45:
46: _item = item;
47: }
48:
49: FragmentedArray<T> getNext() {
50: return _next;
51: }
52:
53: void setNext(FragmentedArray<T> next) {
54: _next = next;
55: if (next != null) {
56: next._previous = this ;
57: }
58: }
59:
60: FragmentedArray<T> getPrevious() {
61: return _previous;
62: }
63:
64: void setPrevious(FragmentedArray<T> previous) {
65: _previous = previous;
66: if (previous != null) {
67: previous._next = this;
68: }
69: }
70: }
|