Skip to content

Commit 722d084

Browse files
committed
refactoring, introduce per-reference plugins, added ingestion integration test
1 parent d15d319 commit 722d084

File tree

12 files changed

+223
-20
lines changed

12 files changed

+223
-20
lines changed

core/src/main/java/com/bc/fiduceo/reader/insitu/sic_cci/SicCciInsituReaderPlugin.java renamed to core/src/main/java/com/bc/fiduceo/reader/insitu/sic_cci/ANTXXXISicInsituReaderPlugin.java

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

8-
public class SicCciInsituReaderPlugin implements ReaderPlugin {
8+
public class ANTXXXISicInsituReaderPlugin implements ReaderPlugin {
99

10-
private final String[] SUPPORTED_KEYS = {"sic-cci-dmisic0"};
10+
private final String[] SUPPORTED_KEYS = {"ANTXXXI-sic-cci"};
1111

1212
@Override
1313
public Reader createReader(ReaderContext readerContext) {
14-
return new SicCciInsituReader();
14+
return new SicCciInsituReader(".*ANTXXXI.*.text");
1515
}
1616

1717
@Override
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package com.bc.fiduceo.reader.insitu.sic_cci;
2+
3+
import com.bc.fiduceo.reader.DataType;
4+
import com.bc.fiduceo.reader.Reader;
5+
import com.bc.fiduceo.reader.ReaderContext;
6+
import com.bc.fiduceo.reader.ReaderPlugin;
7+
8+
public class DMISIC0SicInsituReaderPlugin implements ReaderPlugin {
9+
10+
private final String[] SUPPORTED_KEYS = {"DMISIC0-sic-cci"};
11+
12+
@Override
13+
public Reader createReader(ReaderContext readerContext) {
14+
return new SicCciInsituReader(".*DMISIC0.*.text");
15+
}
16+
17+
@Override
18+
public String[] getSupportedSensorKeys() {
19+
return SUPPORTED_KEYS;
20+
}
21+
22+
@Override
23+
public DataType getDataType() {
24+
return DataType.INSITU;
25+
}
26+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
package com.bc.fiduceo.reader.insitu.sic_cci;
2+
3+
import com.bc.fiduceo.reader.DataType;
4+
import com.bc.fiduceo.reader.Reader;
5+
import com.bc.fiduceo.reader.ReaderContext;
6+
import com.bc.fiduceo.reader.ReaderPlugin;
7+
8+
public class DTUSIC1SicInsituReaderPlugin implements ReaderPlugin {
9+
10+
private final String[] SUPPORTED_KEYS = {"DTUSIC1-sic-cci"};
11+
12+
@Override
13+
public Reader createReader(ReaderContext readerContext) {
14+
return new SicCciInsituReader(".*DTUSIC1.*.text");
15+
}
16+
17+
@Override
18+
public String[] getSupportedSensorKeys() {
19+
return SUPPORTED_KEYS;
20+
}
21+
22+
@Override
23+
public DataType getDataType() {
24+
return DataType.INSITU;
25+
}
26+
}

core/src/main/java/com/bc/fiduceo/reader/insitu/sic_cci/SicCciInsituReader.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,17 @@
2727

2828
public class SicCciInsituReader implements Reader {
2929

30-
private static final String REG_EX = "ASCAT-vs-AMSR2-vs-ERA5-vs-\\p{Upper}{6}\\d{1}-\\d{4}-[N|S].text";
31-
30+
private final String regEx;
3231
private FileReader fileReader;
3332
private TimeLocator timeLocator;
3433
private ArrayList<String> linelist;
3534
private SectionCache sectionCache;
3635
private ReferenceSectionParser referenceSectionParser;
3736

37+
public SicCciInsituReader(String filenameRegEx) {
38+
this.regEx = filenameRegEx;
39+
}
40+
3841
@Override
3942
public void open(File file) throws IOException {
4043
fileReader = new FileReader(file);
@@ -75,7 +78,7 @@ public AcquisitionInfo read() throws IOException {
7578

7679
@Override
7780
public String getRegEx() {
78-
return REG_EX;
81+
return regEx;
7982
}
8083

8184
@Override

core/src/main/resources/META-INF/services/com.bc.fiduceo.reader.ReaderPlugin

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,4 +34,7 @@ com.bc.fiduceo.reader.insitu.sirds_sst.SirdsMbtInsituReaderPlugin
3434
com.bc.fiduceo.reader.insitu.sirds_sst.SirdsMooringInsituReaderPlugin
3535
com.bc.fiduceo.reader.insitu.sirds_sst.SirdsShipInsituReaderPlugin
3636
com.bc.fiduceo.reader.insitu.sirds_sst.SirdsXbtInsituReaderPlugin
37-
com.bc.fiduceo.reader.smos.SmosL1CDailyGriddedReaderPlugin
37+
com.bc.fiduceo.reader.smos.SmosL1CDailyGriddedReaderPlugin
38+
com.bc.fiduceo.reader.insitu.sic_cci.ANTXXXISicInsituReaderPlugin
39+
com.bc.fiduceo.reader.insitu.sic_cci.DMISIC0SicInsituReaderPlugin
40+
com.bc.fiduceo.reader.insitu.sic_cci.DTUSIC1SicInsituReaderPlugin

core/src/test/java/com/bc/fiduceo/TestUtil.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,9 @@ public static void writeSystemConfig(File configDir, File archiveRoot) throws IO
155155
" <rule sensors = \"miras-smos-CDF3TD, miras-smos-CDF3TA\">" +
156156
" SENSOR/VERSION/YEAR/DAY_OF_YEAR" +
157157
" </rule>" +
158+
" <rule sensors = \"ANTXXXI-sic-cci, DMISIC0-sic-cci, DTUSIC1-sic-cci\">" +
159+
" insitu/sic-cci/SENSOR/VERSION" +
160+
" </rule>" +
158161
" </archive>" +
159162
" <temp-directory>" +
160163
" " + TestUtil.getTestDir().getAbsolutePath() +

core/src/test/java/com/bc/fiduceo/reader/insitu/sic_cci/SciCciInsituReaderPluginTest.java renamed to core/src/test/java/com/bc/fiduceo/reader/insitu/sic_cci/ANTXXXISicInsituReaderPluginTest.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,18 @@
88
import static org.junit.Assert.*;
99
import static org.junit.Assert.assertTrue;
1010

11-
public class SciCciInsituReaderPluginTest {
11+
public class ANTXXXISicInsituReaderPluginTest {
1212

13-
private SicCciInsituReaderPlugin plugin;
13+
private ANTXXXISicInsituReaderPlugin plugin;
1414

1515
@Before
1616
public void setUp() {
17-
plugin = new SicCciInsituReaderPlugin();
17+
plugin = new ANTXXXISicInsituReaderPlugin();
1818
}
1919

2020
@Test
2121
public void testGetSupportedSensorKeys() {
22-
final String[] expected = {"sic-cci-dmisic0"};
22+
final String[] expected = {"ANTXXXI-sic-cci"};
2323

2424
final String[] sensorKeys = plugin.getSupportedSensorKeys();
2525
assertArrayEquals(expected, sensorKeys);
@@ -35,5 +35,7 @@ public void testCreateReader() {
3535
final Reader reader = plugin.createReader(null);
3636
assertNotNull(reader);
3737
assertTrue(reader instanceof SicCciInsituReader);
38+
39+
assertEquals(".*ANTXXXI.*.text", reader.getRegEx());
3840
}
3941
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.bc.fiduceo.reader.insitu.sic_cci;
2+
3+
import com.bc.fiduceo.reader.DataType;
4+
import com.bc.fiduceo.reader.Reader;
5+
import org.junit.Before;
6+
import org.junit.Test;
7+
8+
import static org.junit.Assert.*;
9+
10+
public class DMISIC0SicInsituReaderPluginTest {
11+
12+
private DMISIC0SicInsituReaderPlugin plugin;
13+
14+
@Before
15+
public void setUp() {
16+
plugin = new DMISIC0SicInsituReaderPlugin();
17+
}
18+
19+
@Test
20+
public void testGetSupportedSensorKeys() {
21+
final String[] expected = {"DMISIC0-sic-cci"};
22+
23+
final String[] sensorKeys = plugin.getSupportedSensorKeys();
24+
assertArrayEquals(expected, sensorKeys);
25+
}
26+
27+
@Test
28+
public void testGetDataType() {
29+
assertEquals(DataType.INSITU, plugin.getDataType());
30+
}
31+
32+
@Test
33+
public void testCreateReader() {
34+
final Reader reader = plugin.createReader(null);
35+
assertNotNull(reader);
36+
assertTrue(reader instanceof SicCciInsituReader);
37+
38+
assertEquals(".*DMISIC0.*.text", reader.getRegEx());
39+
}
40+
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package com.bc.fiduceo.reader.insitu.sic_cci;
2+
3+
import com.bc.fiduceo.reader.DataType;
4+
import com.bc.fiduceo.reader.Reader;
5+
import org.junit.Before;
6+
import org.junit.Test;
7+
8+
import static org.junit.Assert.*;
9+
10+
public class DTUSIC1SicInsituReaderPluginTest {
11+
12+
private DTUSIC1SicInsituReaderPlugin plugin;
13+
14+
@Before
15+
public void setUp() {
16+
plugin = new DTUSIC1SicInsituReaderPlugin();
17+
}
18+
19+
@Test
20+
public void testGetSupportedSensorKeys() {
21+
final String[] expected = {"DTUSIC1-sic-cci"};
22+
23+
final String[] sensorKeys = plugin.getSupportedSensorKeys();
24+
assertArrayEquals(expected, sensorKeys);
25+
}
26+
27+
@Test
28+
public void testGetDataType() {
29+
assertEquals(DataType.INSITU, plugin.getDataType());
30+
}
31+
32+
@Test
33+
public void testCreateReader() {
34+
final Reader reader = plugin.createReader(null);
35+
assertNotNull(reader);
36+
assertTrue(reader instanceof SicCciInsituReader);
37+
38+
assertEquals(".*DTUSIC1.*.text", reader.getRegEx());
39+
}
40+
}

core/src/test/java/com/bc/fiduceo/reader/insitu/sic_cci/SciCciInsituReader_IO_Test.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public class SciCciInsituReader_IO_Test {
3434

3535
@Before
3636
public void setUp() {
37-
reader = new SicCciInsituReader();
37+
reader = new SicCciInsituReader("whatever");
3838
}
3939

4040
@Test

0 commit comments

Comments
 (0)