Interface ExtensionAdderProvider<T extends Extendable<T>,E extends Extension<T>,B extends ExtensionAdder<T,E>>

Type Parameters:
T - The extendable
E - The extension
B - The extensionBuilder
All Known Implementing Classes:
ActivePowerControlAdderImplProvider, BaseVoltageMappingAdderImplProvider, BranchObservabilityAdderImplProvider, BusbarSectionPositionAdderImplProvider, CgmesControlAreasAdderImplProvider, CgmesConversionContextExtensionAdderImplProvider, CgmesDanglingLineBoundaryNodeAdderImplProvider, CgmesLineBoundaryNodeAdderImplProvider, CgmesMetadataModelsAdderImplProvider, CgmesModelExtensionAdderImplProvider, CgmesTapChangersAdderImplProvider, CimCharacteristicsAdderImplProvider, ConnectablePositionAdderImplProvider, CoordinatedReactiveControlAdderImplProvider, DiscreteMeasurementsAdderImplProvider, EntsoeAreaAdderImplProvider, GeneratorEntsoeCategoryAdderImplProvider, GeneratorFortescueAdderImplProvider, GeneratorShortCircuitAdderImplProvider, GeneratorStartupAdderImplProvider, HvdcAngleDroopActivePowerControlAdderImplProvider, HvdcOperatorActivePowerRangeAdderImplProvider, IdentifiableShortCircuitAdderImplProvider, InjectionObservabilityAdderImplProvider, LineFortescueAdderImplProvider, LinePositionAdderImplProvider, LoadAsymmetricalAdderImplProvider, LoadDetailAdderImplProvider, MeasurementsAdderImplProvider, OperatingStatusAdderImplProvider, PsseConversionContextExtensionAdderImplProvider, PsseModelExtensionAdderImplProvider, ReferencePrioritiesAdderImplProvider, ReferenceTerminalsAdderImplProvider, RemoteReactivePowerControlAdderImplProvider, SecondaryVoltageControlAdderImplProvider, SlackTerminalAdderImplProvider, StandbyAutomatonAdderImplProvider, SubstationPositionAdderImplProvider, ThreeWindingsTransformerFortescueAdderImplProvider, ThreeWindingsTransformerPhaseAngleClockAdderImplProvider, ThreeWindingsTransformerToBeEstimatedAdderImplProvider, TwoWindingsTransformerFortescueAdderImplProvider, TwoWindingsTransformerPhaseAngleClockAdderImplProvider, TwoWindingsTransformerToBeEstimatedAdderImplProvider, VoltagePerReactivePowerControlAdderImplProvider, VoltageRegulationAdderImplProvider

public interface ExtensionAdderProvider<T extends Extendable<T>,E extends Extension<T>,B extends ExtensionAdder<T,E>>
A provider used through java's ServiceLoader. It will provide an ExtensionAdder to add an extension to an extendable. getImplementationName() is used to find providers corresponding to the implementation of the Extendable. getAdderClass() is used to specify the adder class.
Author:
Jon Harper <jon.harper at rte-france.com>
  • Method Details

    • getImplementationName

      String getImplementationName()
      Returns a name that is used to select this provider when searching for implementations of extension builders in Extendable.newExtension(java.lang.Class<B>).
      Returns:
      the name
    • getExtensionName

      default String getExtensionName()
      Returns extension name.
      Returns:
      the extension name
    • getAdderClass

      Class<? super B> getAdderClass()
      Returns the builder class provided by this Provider.
      Returns:
      the class
    • newAdder

      B newAdder(T extendable)
      returns an new empty ExtensionAdder for this extendable.
      Parameters:
      extendable - the extendable on which the adder will add the extension