Class EtaPlusApiClient
java.lang.Object
energy.eddie.regionconnector.de.eta.client.EtaPlusApiClient
Client for the ETA Plus API.
This client is responsible for fetching validated historical data from the German ETA Plus system.
-
Constructor Summary
ConstructorsConstructorDescriptionEtaPlusApiClient(org.springframework.web.reactive.function.client.WebClient webClient, DeEtaPlusConfiguration configuration) -
Method Summary
Modifier and TypeMethodDescriptionreactor.core.publisher.Mono<Boolean> checkPermissionValidity(DePermissionRequest permissionRequest) Check if permission is still valid at ETA Plus.reactor.core.publisher.Mono<EtaPlusAccountingPointData> fetchAccountingPointData(DePermissionRequest permissionRequest, String accessToken) Fetch accounting point master data for a permission request.reactor.core.publisher.Mono<EtaPlusMeteredData> fetchMeteredData(DePermissionRequest permissionRequest, String accessToken) Fetch validated historical metered data for a permission request.
-
Constructor Details
-
EtaPlusApiClient
public EtaPlusApiClient(org.springframework.web.reactive.function.client.WebClient webClient, DeEtaPlusConfiguration configuration)
-
-
Method Details
-
fetchMeteredData
public reactor.core.publisher.Mono<EtaPlusMeteredData> fetchMeteredData(DePermissionRequest permissionRequest, String accessToken) Fetch validated historical metered data for a permission request.- Parameters:
permissionRequest- the permission request containing connection details- Returns:
- a Mono emitting the metered data or an error
-
fetchAccountingPointData
public reactor.core.publisher.Mono<EtaPlusAccountingPointData> fetchAccountingPointData(DePermissionRequest permissionRequest, String accessToken) Fetch accounting point master data for a permission request. Single-shot fetch — caller is responsible for retry / state transitions on failure. Error envelope bodies (4xx/5xx) are not parsed; status code drives the mapping.- Parameters:
permissionRequest- the permission request whose metering point we wantaccessToken- the customer's OAuth bearer- Returns:
- a Mono emitting the accounting point data or an error
-
checkPermissionValidity
public reactor.core.publisher.Mono<Boolean> checkPermissionValidity(DePermissionRequest permissionRequest) Check if permission is still valid at ETA Plus. Used to verify that the final customer hasn't revoked permission.- Parameters:
permissionRequest- the permission request to check- Returns:
- a Mono emitting true if permission is valid, false otherwise
-