Interface SystemParticipantSource

All Superinterfaces:
DataSource
All Known Implementing Classes:
CsvSystemParticipantSource

public interface SystemParticipantSource extends DataSource
Interface that provides the capability to build entities of type SystemParticipantInput as well as SystemParticipants container from .csv files.
Since:
08.04.20
  • Method Details

    • getSystemParticipants

      Optional<SystemParticipants> getSystemParticipants()
      Should return either a consistent instance of SystemParticipants wrapped in Optional or an empty Optional. The decision to use Optional instead of returning the SystemParticipants instance directly is motivated by the fact, that a SystemParticipants is a container instance that depends on several other entities. Without being complete, it is useless for further processing.

      Hence, whenever at least one entity SystemParticipants depends on cannot be provided, Optional.empty() should be returned and extensive logging should provide enough information to debug the error and fix the persistent data that has been failed to processed.

      Furthermore, it is expected, that the specific implementation of this method ensures not only the completeness of the resulting SystemParticipants instance, but also its validity e.g. in the sense that not duplicate UUIDs exist within all entities contained in the returning instance.

      Returns:
      either a valid, complete SystemParticipants optional or Optional.empty()
    • getFixedFeedIns

      Set<FixedFeedInInput> getFixedFeedIns()
      Returns a unique set of FixedFeedInInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided FixedFeedInInput which has to be checked manually, as FixedFeedInInput.equals(Object) is NOT restricted on the uuid of FixedFeedInInput.

      Returns:
      a set of object and uuid unique FixedFeedInInput entities
    • getFixedFeedIns

      Set<FixedFeedInInput> getFixedFeedIns(Set<NodeInput> nodes, Set<OperatorInput> operators)
      Returns a set of FixedFeedInInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided FixedFeedInInput which has to be checked manually, as FixedFeedInInput.equals(Object) is NOT restricted on the uuid of FixedFeedInInput.

      In contrast to getFixedFeedIns() this interface provides the ability to pass in an already existing set of NodeInput and OperatorInput entities, the FixedFeedInInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      Returns:
      a set of object and uuid unique FixedFeedInInput entities
    • getPvPlants

      Set<PvInput> getPvPlants()
      Returns a unique set of PvInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided PvInput which has to be checked manually, as PvInput.equals(Object) is NOT restricted on the uuid of PvInput.

      Returns:
      a set of object and uuid unique PvInput entities
    • getPvPlants

      Set<PvInput> getPvPlants(Set<NodeInput> nodes, Set<OperatorInput> operators)
      Returns a set of PvInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided PvInput which has to be checked manually, as PvInput.equals(Object) is NOT restricted on the uuid of PvInput.

      In contrast to getPvPlants() this interface provides the ability to pass in an already existing set of NodeInput and OperatorInput entities, the PvInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      Returns:
      a set of object and uuid unique PvInput entities
    • getLoads

      Set<LoadInput> getLoads()
      Returns a unique set of LoadInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided LoadInput which has to be checked manually, as LoadInput.equals(Object) is NOT restricted on the uuid of LoadInput.

      Returns:
      a set of object and uuid unique LoadInput entities
    • getLoads

      Set<LoadInput> getLoads(Set<NodeInput> nodes, Set<OperatorInput> operators)
      Returns a set of LoadInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided LoadInput which has to be checked manually, as LoadInput.equals(Object) is NOT restricted on the uuid of LoadInput.

      In contrast to getLoads() this interface provides the ability to pass in an already existing set of NodeInput and OperatorInput entities, the LoadInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      Returns:
      a set of object and uuid unique LoadInput entities
    • getEvCS

      Set<EvcsInput> getEvCS()
      Returns a unique set of EvcsInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided EvcsInput which has to be checked manually, as EvcsInput.equals(Object) is NOT restricted on the uuid of EvcsInput.

      Returns:
      a set of object and uuid unique EvcsInput entities
    • getEvCS

      Set<EvcsInput> getEvCS(Set<NodeInput> nodes, Set<OperatorInput> operators)
      Returns a set of EvcsInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided EvcsInput which has to be checked manually, as EvcsInput.equals(Object) is NOT restricted on the uuid of EvcsInput.

      In contrast to getEvCS() this interface provides the ability to pass in an already existing set of NodeInput and OperatorInput entities, the EvcsInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      Returns:
      a set of object and uuid unique EvcsInput entities
    • getBmPlants

      Set<BmInput> getBmPlants()
      Returns a unique set of BmInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided BmInput which has to be checked manually, as BmInput.equals(Object) is NOT restricted on the uuid of BmInput.

      Returns:
      a set of object and uuid unique BmInput entities
    • getBmPlants

      Set<BmInput> getBmPlants(Set<NodeInput> nodes, Set<OperatorInput> operators, Set<BmTypeInput> types)
      Returns a set of BmInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided BmInput which has to be checked manually, as BmInput.equals(Object) is NOT restricted on the uuid of BmInput.

      In contrast to getBmPlants() this interface provides the ability to pass in an already existing set of NodeInput, BmTypeInput and OperatorInput entities, the BmInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      types - a set of object and uuid unique BmTypeInput entities
      Returns:
      a set of object and uuid unique BmInput entities
    • getStorages

      Set<StorageInput> getStorages()
      Returns a unique set of StorageInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided StorageInput which has to be checked manually, as StorageInput.equals(Object) is NOT restricted on the uuid of StorageInput.

      Returns:
      a set of object and uuid unique StorageInput entities
    • getStorages

      Set<StorageInput> getStorages(Set<NodeInput> nodes, Set<OperatorInput> operators, Set<StorageTypeInput> types)
      Returns a set of StorageInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided StorageInput which has to be checked manually, as StorageInput.equals(Object) is NOT restricted on the uuid of StorageInput.

      In contrast to getStorages() this interface provides the ability to pass in an already existing set of NodeInput, StorageTypeInput and OperatorInput entities, the StorageInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      types - a set of object and uuid unique StorageTypeInput entities
      Returns:
      a set of object and uuid unique StorageInput entities
    • getWecPlants

      Set<WecInput> getWecPlants()
      Returns a unique set of WecInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided WecInput which has to be checked manually, as WecInput.equals(Object) is NOT restricted on the uuid of WecInput.

      Returns:
      a set of object and uuid unique WecInput entities
    • getWecPlants

      Set<WecInput> getWecPlants(Set<NodeInput> nodes, Set<OperatorInput> operators, Set<WecTypeInput> types)
      Returns a set of WecInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided WecInput which has to be checked manually, as WecInput.equals(Object) is NOT restricted on the uuid of WecInput.

      In contrast to getWecPlants() this interface provides the ability to pass in an already existing set of NodeInput, WecTypeInput and OperatorInput entities, the WecInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      types - a set of object and uuid unique WecTypeInput entities
      Returns:
      a set of object and uuid unique WecInput entities
    • getEvs

      Set<EvInput> getEvs()
      Returns a unique set of EvInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided EvInput which has to be checked manually, as EvInput.equals(Object) is NOT restricted on the uuid of EvInput.

      Returns:
      a set of object and uuid unique EvInput entities
    • getEvs

      Set<EvInput> getEvs(Set<NodeInput> nodes, Set<OperatorInput> operators, Set<EvTypeInput> types)
      Returns a set of EvInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided EvInput which has to be checked manually, as EvInput.equals(Object) is NOT restricted on the uuid of EvInput.

      In contrast to getEvs() this interface provides the ability to pass in an already existing set of NodeInput, EvTypeInput and OperatorInput entities, the EvInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      types - a set of object and uuid unique EvTypeInput entities
      Returns:
      a set of object and uuid unique EvInput entities
    • getChpPlants

      Set<ChpInput> getChpPlants()
      Returns a unique set of ChpInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided ChpInput which has to be checked manually, as ChpInput.equals(Object) is NOT restricted on the uuid of ChpInput.

      Returns:
      a set of object and uuid unique ChpInput entities
    • getChpPlants

      Set<ChpInput> getChpPlants(Set<NodeInput> nodes, Set<OperatorInput> operators, Set<ChpTypeInput> types, Set<ThermalBusInput> thermalBuses, Set<ThermalStorageInput> thermalStorages)
      Returns a set of ChpInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided ChpInput which has to be checked manually, as ChpInput.equals(Object) is NOT restricted on the uuid of ChpInput.

      In contrast to getChpPlants() this interface provides the ability to pass in an already existing set of NodeInput, ChpTypeInput, ThermalBusInput, ThermalStorageInput and OperatorInput entities, the ChpInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      types - a set of object and uuid unique ChpTypeInput entities
      thermalBuses - a set of object and uuid unique ThermalBusInput entities
      thermalStorages - a set of object and uuid unique ThermalStorageInput entities
      Returns:
      a set of object and uuid unique ChpInput entities
    • getHeatPumps

      Set<HpInput> getHeatPumps()
      Returns a unique set of HpInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided HpInput which has to be checked manually, as HpInput.equals(Object) is NOT restricted on the uuid of HpInput.

      Returns:
      a set of object and uuid unique HpInput entities
    • getHeatPumps

      Set<HpInput> getHeatPumps(Set<NodeInput> nodes, Set<OperatorInput> operators, Set<HpTypeInput> types, Set<ThermalBusInput> thermalBuses)
      Returns a set of HpInput instances. This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided HpInput which has to be checked manually, as HpInput.equals(Object) is NOT restricted on the uuid of HpInput.

      In contrast to getHeatPumps() this interface provides the ability to pass in an already existing set of NodeInput, HpTypeInput, ThermalBusInput, ThermalStorageInput and OperatorInput entities, the HpInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      types - a set of object and uuid unique HpTypeInput entities
      thermalBuses - a set of object and uuid unique ThermalBusInput entities
      Returns:
      a set of object and uuid unique HpInput entities
    • getEmSystems

      Set<EmInput> getEmSystems()
      Returns a unique set of EmInput instances.

      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided EmInput which has to be checked manually, as EmInput.equals(Object) is NOT restricted on the uuid of EmInput.

      Returns:
      a set of object and uuid unique EmInput entities
    • getEmSystems

      Set<EmInput> getEmSystems(Set<NodeInput> nodes, Set<OperatorInput> operators)
      This set has to be unique in the sense of object uniqueness but also in the sense of UUID uniqueness of the provided EmInput which has to be checked manually, as EmInput.equals(Object) is NOT restricted on the uuid of EmInput.

      In contrast to getHeatPumps() this interface provides the ability to pass in an already existing set of NodeInput and OperatorInput entities, the EmInput instances depend on. Doing so, already loaded nodes can be recycled to improve performance and prevent unnecessary loading operations.

      If something fails during the creation process it's up to the concrete implementation of an empty set or a set with all entities that has been able to be build is returned.

      Parameters:
      operators - a set of object and uuid unique OperatorInput that should be used for the returning instances
      nodes - a set of object and uuid unique NodeInput entities
      Returns:
      a set of object and uuid unique EmInput entities