Skip to content

Commit cc7916c

Browse files
committed
Merge branch 'dev' into ms/#723-use-nio-paths-instead-of-strings
# Conflicts: # CHANGELOG.md # src/main/java/edu/ie3/datamodel/io/source/csv/CsvGraphicSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvIdCoordinateSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvRawGridSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvResultEntitySource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvSystemParticipantSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvThermalSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvTimeSeriesMappingSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvTimeSeriesMetaInformationSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvTypeSource.java # src/main/java/edu/ie3/datamodel/io/source/csv/CsvWeatherSource.java # src/test/groovy/edu/ie3/datamodel/io/source/csv/CsvRawGridSourceTest.groovy
2 parents d5929ad + 2ac8733 commit cc7916c

File tree

69 files changed

+3445
-3528
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+3445
-3528
lines changed

CHANGELOG.md

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1515
- Fixed wrong rated power unit hint [#804](https://github.com/ie3-institute/PowerSystemDataModel/issues/804)
1616
- Fixed wrong hash code generation of ConnectorResult [#817](https://github.com/ie3-institute/PowerSystemDataModel/issues/817)
1717

18-
1918
### Changed
2019
- Removing deprecated classes and methods [#540](https://github.com/ie3-institute/PowerSystemDataModel/issues/540)
20+
- Refactor CSV data sources [#716](https://github.com/ie3-institute/PowerSystemDataModel/issues/716)
2121
- Use nio paths instead of strings for file path [#723](https://github.com/ie3-institute/PowerSystemDataModel/issues/723)
2222

2323

@@ -40,26 +40,26 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4040

4141
### Fixed
4242
- Reduced code smells [#492](https://github.com/ie3-institute/PowerSystemDataModel/issues/492)
43-
- Protected constructors for abstract classes
44-
- Use pattern matching
45-
- Remove unused imports
46-
- Use enhanced switch statements
47-
- Replace lambdas with method references
48-
- Use `Stream#toList`
49-
- Adapt visibility for JUnit 5
43+
- Protected constructors for abstract classes
44+
- Use pattern matching
45+
- Remove unused imports
46+
- Use enhanced switch statements
47+
- Replace lambdas with method references
48+
- Use `Stream#toList`
49+
- Adapt visibility for JUnit 5
5050
- More code smell fixing [#633](https://github.com/ie3-institute/PowerSystemDataModel/issues/633)
51-
- Use `List#of`
52-
- Use direct assignment with switch/case structures
53-
- Turn some classes into records
54-
- Making abstract classes' constructor protected
55-
- Improving some RegExs
56-
- Replacing `filter(Optional::isPresent).map(Optional::get)` on streams with `flatMap(Optional::stream)`
57-
- instanceof variable declarations
58-
- Removing unnecessary parentheses
59-
- Miscellaneous code smells
51+
- Use `List#of`
52+
- Use direct assignment with switch/case structures
53+
- Turn some classes into records
54+
- Making abstract classes' constructor protected
55+
- Improving some RegExs
56+
- Replacing `filter(Optional::isPresent).map(Optional::get)` on streams with `flatMap(Optional::stream)`
57+
- instanceof variable declarations
58+
- Removing unnecessary parentheses
59+
- Miscellaneous code smells
6060
- Fix JavaDoc creation
61-
- Create JavaDoc with java 17 instead of java 8
62-
- Let JavDoc pass, if there are warnings **ATTENTION:** Should be removed, when JavaDoc is fixed! (cf. Issue [#494](https://github.com/ie3-institute/PowerSystemDataModel/issues/494))
61+
- Create JavaDoc with java 17 instead of java 8
62+
- Let JavDoc pass, if there are warnings **ATTENTION:** Should be removed, when JavaDoc is fixed! (cf. Issue [#494](https://github.com/ie3-institute/PowerSystemDataModel/issues/494))
6363
- `BufferedCsvWriter` writes columns in the order, that the headline elements are defined [#434](https://github.com/ie3-institute/PowerSystemDataModel/issues/393)
6464
- Cleaned up `IndividualTimeSeriesMetaInformation`-related methods in `CsvFileConnector` [#544](https://github.com/ie3-institute/PowerSystemDataModel/issues/544)
6565
- Fixed spotlessApply handling for `.groovy` files [#637](https://github.com/ie3-institute/PowerSystemDataModel/issues/637)
@@ -80,15 +80,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
8080
- `edu.ie3.datamodel.io.connectors.CsvFileConnector.CsvIndividualTimeSeriesMetaInformation`
8181
- and related methods
8282
- BREAKING: Comprehensive harmonization around weather sources [#267](https://github.com/ie3-institute/PowerSystemDataModel/issues/267)
83-
- Adapted the expected column scheme
84-
- General weather model
85-
- `coordinate` to `coordinateid`
86-
- DWD COSMO model
87-
- `diffuseirradiation` to `diffuseirradiance`
88-
- `directirradiation` to `directirradiance`
89-
- ICON model:
90-
- `"datum"` to `"time"`
91-
- Force user to provide time stamp pattern to `CouchbaseWeatherSource` to ensure harmonized querying
83+
- Adapted the expected column scheme
84+
- General weather model
85+
- `coordinate` to `coordinateid`
86+
- DWD COSMO model
87+
- `diffuseirradiation` to `diffuseirradiance`
88+
- `directirradiation` to `directirradiance`
89+
- ICON model:
90+
- `"datum"` to `"time"`
91+
- Force user to provide time stamp pattern to `CouchbaseWeatherSource` to ensure harmonized querying
9292
- BREAKING: Updating PowerSystemUtils dependency to 2.0-SNAPSHOT [#595](https://github.com/ie3-institute/PowerSystemDataModel/issues/595)
9393
- BREAKING: Generified the `LoadInput` attribute `standardLoadProfile` to `loadProfile` as it should also address the newly added `TemperatureDependantLoadProfile`s [#601](https://github.com/ie3-institute/PowerSystemDataModel/issues/601)
9494
- Adapted to new double converters in PSU [#705](https://github.com/ie3-institute/PowerSystemDataModel/issues/705)

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ dependencies {
8787

8888
// Databases
8989
implementation 'org.influxdb:influxdb-java:2.23'
90-
implementation 'com.couchbase.client:java-client:3.4.6'
90+
implementation 'com.couchbase.client:java-client:3.4.7'
9191
runtimeOnly 'org.postgresql:postgresql:42.6.0' // postgresql jdbc driver required during runtime
9292

9393
implementation 'commons-io:commons-io:2.13.0' // I/O functionalities
43.3 KB
Loading
257 KB
Loading
25.9 KB
Loading
128 KB
Loading
106 KB
Loading
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# I/O
2+
3+
The PowerSystemDataModel library additionally offers I/O-capabilities.
4+
In the long run, it is our aim to provide many different source and sink technologies.
5+
Therefore, the I/O-package is structured as highly modular.
6+
7+
```{toctree}
8+
---
9+
maxdepth: 2
10+
---
11+
csvfiles
12+
sql
13+
influxdb
14+
ValidationUtils.md
15+
```
16+
17+
## Data sink structure
18+
19+
[![Class diagram of data sink classes](../_static/figures/uml/DataSinkClassDiagram.png)](../_static/figures/uml/DataSinkClassDiagram.png)
20+
21+
## Data source structure
22+
23+
The sources are divided in three blocks:
24+
1. InputEntities and ResultEntities
25+
2. TimeSeries related sources
26+
3. Weather and Coordinate sources
27+
28+
[![Class diagram of entity sources](../_static/figures/uml/EntitySourceClassDiagram.png)](../_static/figures/uml/EntitySourceClassDiagram.png)
29+
30+
[![Class diagram of time series sources](../_static/figures/uml/TimeSeriesSourceClassDiagram.png)](../_static/figures/uml/TimeSeriesSourceClassDiagram.png)
31+
32+
[![Class diagram of weather and coordinate sources](../_static/figures/uml/WeatherCoordinateSourceClassDiagram.png)](../_static/figures/uml/WeatherCoordinateSourceClassDiagram.png)
33+
34+
The function to read the sources are implemented in the DataSource classes.
35+
36+
[![Class diagram of data sources](../_static/figures/uml/FunctionalDataSourceClassDiagram.png)](../_static/figures/uml/FunctionalDataSourceClassDiagram.png)
37+
38+
## Data deployment
39+
40+
[![Diagram of input data deployment](../_static/figures/uml/InputDataDeployment.png)](../_static/figures/uml/InputDataDeployment.png)

docs/readthedocs/io/basiciousage.rst

Lines changed: 0 additions & 30 deletions
This file was deleted.

docs/readthedocs/io/csvfiles.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ The class `DefaultInputHierarchy` offers some helpful methods to validate and cr
121121
hierarchy.
122122

123123
## De-serialization (loading models)
124+
124125
Having an instance of [Grid Container](/models/input/grid/gridcontainer) is most of the time the target whenever you load your
125126
grid. It consists of the three main blocks:
126127

@@ -131,9 +132,6 @@ grid. It consists of the three main blocks:
131132
Those blocks are also reflected in the structure of data source interface definitions.
132133
There is one source for each of the containers, respectively.
133134

134-
![Class diagram of data sources](../_static/figures/uml/DataSourceClassDiagram.png)
135-
Class diagram of data sources
136-
137135
As a full data set has references among the models (e.g. a line model points to its' nodes it connects), there is a
138136
hierarchical structure, in which models have to be loaded.
139137
Therefore, the different sources have also references among themselves.

0 commit comments

Comments
 (0)