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 }