Skip to content

Commit 253229a

Browse files
committed
split into separate plugins
1 parent 37e9cda commit 253229a

31 files changed

+710
-113
lines changed
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsAnimalInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsAnimalInsituReaderPlugin() {
6+
super("animal-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsArgoInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsArgoInsituReaderPlugin() {
6+
super("argo-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsArgosurfInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsArgosurfInsituReaderPlugin() {
6+
super("argosurf-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsBottleInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsBottleInsituReaderPlugin() {
6+
super("bottle-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsCtdInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsCtdInsituReaderPlugin() {
6+
super("ctd-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsDrifterCmemsInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsDrifterCmemsInsituReaderPlugin() {
6+
super("driftercmems-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsDrifterInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsDrifterInsituReaderPlugin() {
6+
super("drifter-sirds");
7+
}
8+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
package com.bc.fiduceo.reader.insitu.sirds_sst;
2+
3+
public class SirdsGtmbaInsituReaderPlugin extends SirdsInsituReaderPlugin {
4+
5+
public SirdsGtmbaInsituReaderPlugin() {
6+
super("gtmba-sirds");
7+
}
8+
}

core/src/main/java/com/bc/fiduceo/reader/insitu/sirds_sst/SirdsInsituReader.java

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,19 @@
2626

2727
public class SirdsInsituReader extends NetCDFReader {
2828

29-
private static final String REGEX = "SSTCCI2_refdata_[a-z]+(_[a-z]+)?_\\d{6}.nc";
29+
private static final String REGEX_1 = "SSTCCI2_refdata_";
30+
private static final String REGEX_2 = "_\\d{6}.nc";
3031
private static final String UNIQUE_ID = "unique_id";
3132

33+
private final String sensorKey;
3234
private int[] timeMinMax;
3335
private Array uniqueIdData;
3436
private Array sensingTimes;
3537

38+
public SirdsInsituReader(String sensorKey) {
39+
this.sensorKey = sensorKey;
40+
}
41+
3642
@Override
3743
public AcquisitionInfo read() throws IOException {
3844
final AcquisitionInfo info = new AcquisitionInfo();
@@ -77,7 +83,7 @@ private void ensureSensingTimesAvailable() throws IOException {
7783

7884
@Override
7985
public String getRegEx() {
80-
return REGEX;
86+
return REGEX_1 + toRegExPart(sensorKey) + REGEX_2;
8187
}
8288

8389
@Override
@@ -219,6 +225,25 @@ public void close() throws IOException {
219225
super.close();
220226
}
221227

228+
// for use in tests only tb 2021-07-26
229+
String getSensorKey() {
230+
return sensorKey;
231+
}
232+
233+
// package access for testing only tb 2021-07-26
234+
static String toRegExPart(String sensorKey) {
235+
int splitIdx = sensorKey.lastIndexOf("-");
236+
237+
final String sensor = sensorKey.substring(0, splitIdx);
238+
if (sensor.equals("argosurf")) {
239+
return "argo_surf";
240+
} else if (sensor.equals("driftercmems")) {
241+
return "drifter_cmems";
242+
} else {
243+
return sensor;
244+
}
245+
}
246+
222247
private void ensureUniqueIdData() throws IOException {
223248
if (uniqueIdData != null) {
224249
return;

core/src/main/java/com/bc/fiduceo/reader/insitu/sirds_sst/SirdsInsituReaderPlugin.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,17 @@
55
import com.bc.fiduceo.reader.ReaderContext;
66
import com.bc.fiduceo.reader.ReaderPlugin;
77

8-
public class SirdsInsituReaderPlugin implements ReaderPlugin {
8+
class SirdsInsituReaderPlugin implements ReaderPlugin {
99

10-
private final String[] SUPPORTED_KEYS = {"animal-sirds", "argo-sirds", "argo_surf-sirds", "bottle-sirds", "ctd-sirds", "drifter-sirds", "drifter_cmems-sirds", "gtmba-sirds", "mbt-sirds", "mooring-sirds", "ship-sirds", "xbt-sirds"};
10+
final String[] SUPPORTED_KEYS;
11+
12+
SirdsInsituReaderPlugin(String supported_keys) {
13+
SUPPORTED_KEYS = new String[]{supported_keys};
14+
}
1115

1216
@Override
1317
public Reader createReader(ReaderContext readerContext) {
14-
return new SirdsInsituReader();
18+
return new SirdsInsituReader(SUPPORTED_KEYS[0]);
1519
}
1620

1721
@Override

0 commit comments

Comments
 (0)