From ae892750ae54ac8eaf3a1e5593473c0ab9e81fba Mon Sep 17 00:00:00 2001 From: Dominique Marcadet <Dominique.Marcadet@centralesupelec.fr> Date: Fri, 10 May 2019 18:56:07 +0200 Subject: [PATCH] Fatal exception if no SCL root element --- .../edf/riseclipse/iec61850/scl/util/SclUtilities.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/fr.centralesupelec.edf.riseclipse.iec61850.scl/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/util/SclUtilities.java b/fr.centralesupelec.edf.riseclipse.iec61850.scl/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/util/SclUtilities.java index 8dfd3fd..02a7a87 100644 --- a/fr.centralesupelec.edf.riseclipse.iec61850.scl/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/util/SclUtilities.java +++ b/fr.centralesupelec.edf.riseclipse.iec61850.scl/src/fr/centralesupelec/edf/riseclipse/iec61850/scl/util/SclUtilities.java @@ -33,14 +33,18 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.LN; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SCL; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclObject; import fr.centralesupelec.edf.riseclipse.util.IRiseClipseConsole; +import fr.centralesupelec.edf.riseclipse.util.RiseClipseFatalException; public class SclUtilities { - public static SCL getSCL( SclObject object ) { + public static @NonNull SCL getSCL( SclObject object ) { EObject scl = object; while(( scl != null ) && ! ( scl instanceof SCL )) { scl = scl.eContainer(); } + if( scl == null ) { + throw new RiseClipseFatalException( "root container is not SCL", null ); + } return ( SCL ) scl; } -- GitLab