Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Correction of the grid status update.
[jaceP2P.git] / src / jaceP2P / JaceSuperNodeServer.java
index 0200806..58d2401 100644 (file)
@@ -546,22 +546,27 @@ public class JaceSuperNodeServer extends UnicastRemoteObject implements
        @Override
        public void updateMappedNode( GNode _dead, GNode _remp ) 
        {
-               int pos = 0 ;
-               pos = al.getMapping().getIdOfAssociation( _dead ) ;
-               
-               if( pos == -1 )
+               if( _dead != null )
                {
-                       System.err.println( "GNode "+_dead+" does not exist in the mapping!" ) ;
-                       return ;
-               }
+                       int pos = 0 ;
                
-               /** Changing the node in the mapping **/
-               al.getMapping().getMapping().get( pos ).setGNode( _remp ) ;
+                       pos = al.getMapping().getIdOfAssociation( _dead ) ;
                
-               /** Changing the status in the grid **/
-               al.getGrid().setMappedStatus( _remp, true ) ;
-
-               System.out.println( "Succesfully replacing the fallen node in the mapping." ) ;
+                       if( pos != -1 )
+                       {
+                               /** Changing the node in the mapping **/
+                               al.getMapping().getMapping().get( pos ).setGNode( _remp ) ;
+                               
+                               System.out.println( "Succesfully replacing the fallen node in the mapping." ) ;
+                       }               
+                       
+                       /** Changing the status in the grid **/
+                       al.getGrid().setMappedStatus( _remp, true ) ;
+               
+                       al.updateGrid() ;
+               } else {
+                       System.err.println( "GNode "+_dead+" does not exist in the mapping!" ) ;
+               }
        }