@Test public void testInherit() { List<Attribute> list = new ArrayList<Attribute>(); Attribute attribute1 = new Attribute("value1"); list.add(attribute1); Attribute attribute2 = new Attribute("value2"); list.add(attribute2); ListAttribute parent = new ListAttribute(list); Attribute attribute3 = new Attribute("value3"); ListAttribute child = new ListAttribute(); child.add(attribute3); child.inherit(parent); list = child.getValue(); assertEquals(LIST_SIZE, list.size()); assertEquals(attribute1, list.get(0)); assertEquals(attribute2, list.get(1)); assertEquals(attribute3, list.get(2)); }
@SuppressWarnings("unchecked") public void inherit(ListAttribute parent) { List<Attribute> tempList = new ArrayList<Attribute>(); tempList.addAll((List<Attribute>) parent.value); tempList.addAll((List<Attribute>) value); setValue(tempList); }
ListAttribute extends Attribute { @SuppressWarnings("unchecked") public void inherit(ListAttribute parent) { List<Attribute> tempList = new ArrayList<Attribute>(); tempList.addAll((List<Attribute>) parent.value); tempList.addAll((List<Attribute>) value); setValue(tempList); } }
ListAttribute extends Attribute { @SuppressWarnings("unchecked") public void inherit(ListAttribute parent) { List<Attribute> tempList = new ArrayList<Attribute>(); tempList.addAll((List<Attribute>) parent.value); tempList.addAll((List<Attribute>) value); setValue(tempList); } ListAttribute();  ListAttribute(List<Attribute> value);  ListAttribute(ListAttribute toCopy); }
ListAttribute extends Attribute { @SuppressWarnings("unchecked") public void inherit(ListAttribute parent) { List<Attribute> tempList = new ArrayList<Attribute>(); tempList.addAll((List<Attribute>) parent.value); tempList.addAll((List<Attribute>) value); setValue(tempList); } ListAttribute();  ListAttribute(List<Attribute> value);  ListAttribute(ListAttribute toCopy); void setValue(List<Attribute> attributes); @SuppressWarnings("unchecked") @Override List<Attribute> getValue(); void add(Attribute element); void setInherit(boolean inherit); boolean isInherit(); @SuppressWarnings("unchecked") void inherit(ListAttribute parent); @Override boolean equals(Object obj); @Override int hashCode(); @Override ListAttribute clone(); }
ListAttribute extends Attribute { @SuppressWarnings("unchecked") public void inherit(ListAttribute parent) { List<Attribute> tempList = new ArrayList<Attribute>(); tempList.addAll((List<Attribute>) parent.value); tempList.addAll((List<Attribute>) value); setValue(tempList); } ListAttribute();  ListAttribute(List<Attribute> value);  ListAttribute(ListAttribute toCopy); void setValue(List<Attribute> attributes); @SuppressWarnings("unchecked") @Override List<Attribute> getValue(); void add(Attribute element); void setInherit(boolean inherit); boolean isInherit(); @SuppressWarnings("unchecked") void inherit(ListAttribute parent); @Override boolean equals(Object obj); @Override int hashCode(); @Override ListAttribute clone();  }