Package com.powsybl.iidm.serde.util
Class IidmSerDeUtil
java.lang.Object
com.powsybl.iidm.serde.util.IidmSerDeUtil
- Author:
- Miora Ralambotiana <miora.ralambotiana at rte-france.com>
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic void
assertMaximumVersion
(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is less recent than a given IIDM version.static void
assertMaximumVersion
(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is less recent than a given IIDM version.static void
assertMaximumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is less recent than a given IIDM version.static void
assertMaximumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is less recent than a given IIDM version.static void
assertMinimumVersion
(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version.static void
assertMinimumVersion
(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version.static void
assertMinimumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, IidmVersion version) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version.static void
assertMinimumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version.static void
assertMinimumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version.static void
assertMinimumVersionAndRunIfNotDefault
(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context, Runnable runnable) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions).static void
assertMinimumVersionAndRunIfNotDefault
(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context, Runnable runnable) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions).static void
assertMinimumVersionIfNotDefault
(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, IidmVersion version) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions).static void
assertMinimumVersionIfNotDefault
(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions).static void
assertMinimumVersionIfNotDefault
(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions).static void
assertStrictMaximumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version is strictly older than a given IIDM version.static void
assertStrictMaximumVersion
(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version is strictly older than a given IIDM version.static String
getAttributeName
(String oldName, String newName, IidmVersion version, IidmVersion comparisonVersion) Get an attribute name depending on IIDM version.static <C extends AbstractNetworkSerDeContext>
voidrunFromMinimumVersion
(IidmVersion minVersion, C context, Runnable runnable) Run a given runnable if the context's IIDM version equals or is more recent than a given minimum IIDM version.static <C extends AbstractNetworkSerDeContext>
voidrunUntilMaximumVersion
(IidmVersion maxVersion, C context, Runnable runnable) Run a given runnable if the context's IIDM version equals or is older than a given maximum IIDM version.static <T extends Identifiable>
Iterable<T>sorted
(Iterable<T> identifiables, ExportOptions exportOptions) Sort identifiables by their ids.static <T extends Identifiable<T>>
Stream<T>sorted
(Stream<T> stream, ExportOptions exportOptions) Sort identifiables by their ids.static Iterable<? extends Extension<? extends Identifiable<?>>>
sortedExtensions
(Iterable<? extends Extension<? extends Identifiable<?>>> extensions, ExportOptions exportOptions) Sort extensions by their names.sortedInternalConnections
(Iterable<VoltageLevel.NodeBreakerView.InternalConnection> internalConnections, ExportOptions exportOptions) Sort internal connections first by their side one node value then by their side 2 node value.sortedNames
(Iterable<String> names, ExportOptions exportOptions) Sort names.static Iterable<LoadingLimits.TemporaryLimit>
sortedTemporaryLimits
(Iterable<LoadingLimits.TemporaryLimit> temporaryLimits, ExportOptions exportOptions) Sort temporary limits by their names.static void
writeBooleanAttributeFromMinimumVersion
(String rootElementName, String attributeName, boolean value, boolean defaultValue, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Write a mandatory boolean attribute from a given minimum IIDM version.
If the context's IIDM version is strictly older than the given minimum IIDM version, the attribute's value should be default (else an exception is thrown).static void
writeDoubleAttributeFromMinimumVersion
(String rootElementName, String attributeName, double value, double defaultValue, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Write a double attribute from a given minimum IIDM version if its value is defined.
If the context's IIDM version is strictly older than the given minimum IIDM version, the attribute's value should be default (else an exception is thrown).static void
writeDoubleAttributeFromMinimumVersion
(String rootElementName, String attributeName, double value, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Write a double attribute from a given minimum IIDM version if its value is defined.
If the context's IIDM version is strictly older than the given minimum IIDM version, the attribute's value should be undefined i.e.static void
writeIntAttributeUntilMaximumVersion
(String attributeName, int value, IidmVersion maxVersion, NetworkSerializerContext context) Write a mandatory int attribute until a given maximum IIDM version.
-
Method Details
-
assertMaximumVersion
public static void assertMaximumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is less recent than a given IIDM version. If not, throw an exception with a given type of error message. -
assertMaximumVersion
public static void assertMaximumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is less recent than a given IIDM version. If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. -
assertMaximumVersion
public static void assertMaximumVersion(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is less recent than a given IIDM version. If not, throw an exception with a given type of error message. -
assertMaximumVersion
public static void assertMaximumVersion(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is less recent than a given IIDM version. If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. -
assertMinimumVersion
public static void assertMinimumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version. If not, throw an exception with a given type of error message. -
assertMinimumVersion
public static void assertMinimumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, IidmVersion version) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version. If not, throw an exception with a given type of error message. -
assertMinimumVersion
public static void assertMinimumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version. If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. -
assertMinimumVersion
public static void assertMinimumVersion(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version. If not, throw an exception with a given type of error message. -
assertMinimumVersion
public static void assertMinimumVersion(String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version. If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. -
assertMinimumVersionIfNotDefault
public static void assertMinimumVersionIfNotDefault(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, IidmVersion version) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions). If not, throw an exception with a given type of error message. -
assertMinimumVersionIfNotDefault
public static void assertMinimumVersionIfNotDefault(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions). If not, throw an exception with a given type of error message. -
assertMinimumVersionIfNotDefault
public static void assertMinimumVersionIfNotDefault(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions). If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. -
assertMinimumVersionAndRunIfNotDefault
public static void assertMinimumVersionAndRunIfNotDefault(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkDeserializerContext context, Runnable runnable) Assert that the reader context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions). If not, throw an exception with a given type of error message. If the value is not default and no exception has been thrown, run a given runnable. -
assertMinimumVersionAndRunIfNotDefault
public static void assertMinimumVersionAndRunIfNotDefault(boolean valueIsNotDefault, String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context, Runnable runnable) Assert that the writer context's IIDM version equals or is more recent than a given IIDM version if the value of an attribute or the state of an equipment is not default (interpretable for previous versions). If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. If the value is not default and the version is compatible, run a given runnable. -
assertStrictMaximumVersion
public static void assertStrictMaximumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkDeserializerContext context) Assert that the reader context's IIDM version is strictly older than a given IIDM version. If not, throw an exception with a given type of error message. -
assertStrictMaximumVersion
public static void assertStrictMaximumVersion(String rootElementName, String elementName, IidmSerDeUtil.ErrorMessage type, IidmVersion maxVersion, NetworkSerializerContext context) Assert that the writer context's IIDM version is strictly older than a given IIDM version. If not, throw an exception or log an error with a given type of error message, depending ofExportOptions.IidmVersionIncompatibilityBehavior
found in theExportOptions
of the given context. -
runFromMinimumVersion
public static <C extends AbstractNetworkSerDeContext> void runFromMinimumVersion(IidmVersion minVersion, C context, Runnable runnable) Run a given runnable if the context's IIDM version equals or is more recent than a given minimum IIDM version. -
runUntilMaximumVersion
public static <C extends AbstractNetworkSerDeContext> void runUntilMaximumVersion(IidmVersion maxVersion, C context, Runnable runnable) Run a given runnable if the context's IIDM version equals or is older than a given maximum IIDM version. -
writeBooleanAttributeFromMinimumVersion
public static void writeBooleanAttributeFromMinimumVersion(String rootElementName, String attributeName, boolean value, boolean defaultValue, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Write a mandatory boolean attribute from a given minimum IIDM version.
If the context's IIDM version is strictly older than the given minimum IIDM version, the attribute's value should be default (else an exception is thrown). -
writeDoubleAttributeFromMinimumVersion
public static void writeDoubleAttributeFromMinimumVersion(String rootElementName, String attributeName, double value, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Write a double attribute from a given minimum IIDM version if its value is defined.
If the context's IIDM version is strictly older than the given minimum IIDM version, the attribute's value should be undefined i.e. NaN (else an exception is thrown). -
writeDoubleAttributeFromMinimumVersion
public static void writeDoubleAttributeFromMinimumVersion(String rootElementName, String attributeName, double value, double defaultValue, IidmSerDeUtil.ErrorMessage type, IidmVersion minVersion, NetworkSerializerContext context) Write a double attribute from a given minimum IIDM version if its value is defined.
If the context's IIDM version is strictly older than the given minimum IIDM version, the attribute's value should be default (else an exception is thrown). -
writeIntAttributeUntilMaximumVersion
public static void writeIntAttributeUntilMaximumVersion(String attributeName, int value, IidmVersion maxVersion, NetworkSerializerContext context) Write a mandatory int attribute until a given maximum IIDM version.
If the context's IIDM version is strictly more recent than the given maximum IIDM version, do nothing. -
getAttributeName
public static String getAttributeName(String oldName, String newName, IidmVersion version, IidmVersion comparisonVersion) Get an attribute name depending on IIDM version.- Returns:
- oldName if version strictly older than comparisonVersion, else newName.
-
sorted
public static <T extends Identifiable> Iterable<T> sorted(Iterable<T> identifiables, ExportOptions exportOptions) Sort identifiables by their ids. -
sorted
public static <T extends Identifiable<T>> Stream<T> sorted(Stream<T> stream, ExportOptions exportOptions) Sort identifiables by their ids. -
sortedExtensions
public static Iterable<? extends Extension<? extends Identifiable<?>>> sortedExtensions(Iterable<? extends Extension<? extends Identifiable<?>>> extensions, ExportOptions exportOptions) Sort extensions by their names. -
sortedTemporaryLimits
public static Iterable<LoadingLimits.TemporaryLimit> sortedTemporaryLimits(Iterable<LoadingLimits.TemporaryLimit> temporaryLimits, ExportOptions exportOptions) Sort temporary limits by their names. -
sortedInternalConnections
public static Iterable<VoltageLevel.NodeBreakerView.InternalConnection> sortedInternalConnections(Iterable<VoltageLevel.NodeBreakerView.InternalConnection> internalConnections, ExportOptions exportOptions) Sort internal connections first by their side one node value then by their side 2 node value. -
sortedNames
Sort names.
-