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 8dfd3fd31cacc49bd95557e22097bd0ba7583440..02a7a87a21e5d8075c06dc9aa9157014cff0657c 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; }