1 19 package bak.pcj.adapter; 20 21 import bak.pcj.Adapter; 22 import bak.pcj.list.AbstractBooleanList; 23 import bak.pcj.list.BooleanListIterator; 24 import bak.pcj.util.Exceptions; 25 26 import java.util.List ; 27 28 63 public class ListToBooleanListAdapter extends AbstractBooleanList { 64 65 66 protected List list; 67 68 82 public ListToBooleanListAdapter(List list) { 83 this(list, false); 84 } 85 86 110 public ListToBooleanListAdapter(List list, boolean validate) { 111 super(); 112 if (list == null) 113 Exceptions.nullArgument("list"); 114 this.list = list; 115 if (validate) 116 evalidate(); 117 } 118 119 public void add(int index, boolean v) 120 { list.add(index, new Boolean (v)); } 121 122 public boolean get(int index) 123 { return ((Boolean )list.get(index)).booleanValue(); } 124 125 public BooleanListIterator listIterator(int index) 126 { return new ListIteratorToBooleanListIteratorAdapter(list.listIterator(index)); } 127 128 public boolean removeElementAt(int index) 129 { return ((Boolean )(list.remove(index))).booleanValue(); } 130 131 public boolean set(int index, boolean v) 132 { return ((Boolean )list.set(index, new Boolean (v))).booleanValue(); } 133 134 public int size() 135 { return list.size(); } 136 137 146 public boolean validate() 147 { return Adapter.isBooleanAdaptable(list); } 148 149 158 public void evalidate() { 159 if (!validate()) 160 Exceptions.cannotAdapt("list"); 161 } 162 163 } | Popular Tags |