1 package fr.ifremer.tutti.ichtyometer.feed.record;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 import org.apache.commons.lang3.builder.ToStringBuilder;
28
29 import java.util.regex.Matcher;
30 import java.util.regex.Pattern;
31
32
33
34
35
36
37
38
39
40
41
42 public class IchtyometerFeedReaderMeasureRecord extends IchtyometerFeedReaderRecordSupport {
43
44 private static final long serialVersionUID = 1L;
45
46 protected static final Pattern RECORD_PATTERN = Pattern.compile("%l\\,(\\w+)?#");
47
48 public static boolean acceptRecord(String record) {
49
50 Matcher matcher = RECORD_PATTERN.matcher(record);
51 return matcher.matches();
52
53 }
54
55 protected final int measure;
56
57 IchtyometerFeedReaderMeasureRecord(String record) {
58 super(record);
59 Matcher matcher = RECORD_PATTERN.matcher(record);
60 matcher.find();
61 String measureStr = matcher.group(1);
62 measure = Integer.valueOf(measureStr);
63 }
64
65 public int getMeasure() {
66 return measure;
67 }
68
69 @Override
70 public boolean isValid() {
71 return acceptRecord(record);
72 }
73
74 @Override
75 public String toString() {
76 return new ToStringBuilder(this)
77 .append("record", measure)
78 .append("measure", measure)
79 .toString();
80 }
81 }