1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.fourthline.cling.support.model;
17
18
19
20
21
22
23 public enum SeekMode {
24
25 TRACK_NR("TRACK_NR"),
26 ABS_TIME("ABS_TIME"),
27 REL_TIME("REL_TIME"),
28 ABS_COUNT("ABS_COUNT"),
29 REL_COUNT("REL_COUNT"),
30 CHANNEL_FREQ("CHANNEL_FREQ"),
31 TAPE_INDEX("TAPE-INDEX"),
32 FRAME("FRAME");
33
34 private String protocolString;
35
36 SeekMode(String protocolString) {
37 this.protocolString = protocolString;
38 }
39
40 @Override
41 public String toString() {
42 return protocolString;
43 }
44
45 public static SeekMode valueOrExceptionOf(String s) throws IllegalArgumentException {
46 for (SeekMode seekMode : values()) {
47 if (seekMode.protocolString.equals(s)) {
48 return seekMode;
49 }
50 }
51 throw new IllegalArgumentException("Invalid seek mode string: " + s);
52 }
53 }
54