View Javadoc

1   package net.sf.quarrel.file;
2   
3   import java.util.StringTokenizer;
4   
5   public class ElementText {
6   
7       private final String _text;
8       private final ElementType _type;
9   
10      public ElementText(String text) {
11  
12          final StringTokenizer tokenizer = new StringTokenizer(text, "\r\n");
13          final String s = tokenizer.nextToken();
14  
15          _type = determineElementType(s);
16          _text = text;
17  
18      }
19  
20      public String getText() {
21          return _text;
22      }
23  
24      public ElementType getElementType() {
25          return _type;
26      }
27  
28      private ElementType determineElementType(final String text) {
29  
30          final int i = text.indexOf(' ');
31          if (i == -1) {
32              throw new IllegalArgumentException("could not parse " + text);
33          }
34  
35          final String typeString = text.substring(0, i);
36          final ElementType elementType = ElementType.getEnum(typeString);
37  
38          if (elementType == null) {
39              throw new IllegalArgumentException(typeString + " is not a valid element type");
40          }
41  
42          return elementType;
43  
44      }
45  
46      public String toString() {
47          return _text;
48      }
49  
50  }