Skip to content
Snippets Groups Projects
Commit 56ebb322 authored by Dominique Marcadet's avatar Dominique Marcadet
Browse files

avoid other potential NPE

parent cf0e7f88
No related branches found
No related tags found
1 merge request!62Resolve "NPE in SclUtilities.getAnyLN() if lnInst is null"
Pipeline #5164 passed
...@@ -60,6 +60,9 @@ public class SclUtilities { ...@@ -60,6 +60,9 @@ public class SclUtilities {
} }
public static Pair< IED, Integer > getIED( @NonNull SCL scl, @NonNull String iedName ) { public static Pair< IED, Integer > getIED( @NonNull SCL scl, @NonNull String iedName ) {
// protect against NPE
if( scl == null ) return Pair.of( null, 0 );
List< IED > res = List< IED > res =
scl scl
.getIED() .getIED()
...@@ -74,6 +77,9 @@ public class SclUtilities { ...@@ -74,6 +77,9 @@ public class SclUtilities {
} }
public static Pair< AccessPoint, Integer > getAccessPoint( @NonNull IED ied, @NonNull String apName ) { public static Pair< AccessPoint, Integer > getAccessPoint( @NonNull IED ied, @NonNull String apName ) {
// protect against NPE
if( ied == null ) return Pair.of( null, 0 );
List< AccessPoint > res = List< AccessPoint > res =
ied ied
.getAccessPoint() .getAccessPoint()
...@@ -88,9 +94,11 @@ public class SclUtilities { ...@@ -88,9 +94,11 @@ public class SclUtilities {
} }
public static Pair< LDevice, Integer > getLDevice( @NonNull AccessPoint accessPoint, @NonNull String ldInst ) { public static Pair< LDevice, Integer > getLDevice( @NonNull AccessPoint accessPoint, @NonNull String ldInst ) {
if( accessPoint.getServer() == null ) { // protect against NPE
return Pair.of( null, 0 ); if( ldInst == null ) return Pair.of( null, 0 );
} if( accessPoint == null ) return Pair.of( null, 0 );
if( accessPoint.getServer() == null ) return Pair.of( null, 0 );
List< LDevice > res = List< LDevice > res =
accessPoint accessPoint
.getServer() .getServer()
...@@ -106,6 +114,10 @@ public class SclUtilities { ...@@ -106,6 +114,10 @@ public class SclUtilities {
} }
public static Pair< LDevice, Integer > getLDevice( @NonNull IED ied, @NonNull String ldInst ) { public static Pair< LDevice, Integer > getLDevice( @NonNull IED ied, @NonNull String ldInst ) {
// protect against NPE
if( ldInst == null ) return Pair.of( null, 0 );
if( ied == null ) return Pair.of( null, 0 );
List< LDevice > res = List< LDevice > res =
ied ied
.getAccessPoint() .getAccessPoint()
...@@ -128,9 +140,11 @@ public class SclUtilities { ...@@ -128,9 +140,11 @@ public class SclUtilities {
if( "LLN0".equals( lnClass )) { if( "LLN0".equals( lnClass )) {
return Pair.of( lDevice.getLN0(), ( lDevice.getLN0() == null ) ? 0 : 1 ); return Pair.of( lDevice.getLN0(), ( lDevice.getLN0() == null ) ? 0 : 1 );
} }
// Null checks must be done as annotation-based null analysis is not enabled (issue #64) // Null checks must be done as annotation-based null analysis is not enabled (issue #64)
if( lnClass == null ) return Pair.of( null, 0 ); if( lnClass == null ) return Pair.of( null, 0 );
if( lnInst == null ) return Pair.of( null, 0 ); if( lnInst == null ) return Pair.of( null, 0 );
List< LN > res = List< LN > res =
lDevice lDevice
.getLN() .getLN()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment