1 package net.sf.quarrel.uml; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 import java.util.Iterator; 6 import java.util.List; 7 8 public class StructuredElement 9 extends AbstractElement 10 implements OperationAggregator, AttributeAggregator { 11 12 private final List _attributes = new ArrayList(); 13 private final List _operations = new ArrayList(); 14 15 public StructuredElement(String name) { 16 super(name); 17 } 18 19 public Iterator attributes() { 20 return Collections.unmodifiableList(_attributes).iterator(); 21 } 22 23 public void addAttribute(String attributeName) { 24 _attributes.add(new Attribute(attributeName)); 25 } 26 27 public Iterator operations() { 28 return Collections.unmodifiableList(_operations).iterator(); 29 } 30 31 public void addOperation(String operationName) { 32 _operations.add(new Operation(operationName)); 33 } 34 }