--- /dev/null
+package and.hpcvm;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+
+
+
+public class RunningApplication implements Serializable
+{
+ private static final long serialVersionUID = 1L;
+ private String name ;
+ private ArrayList<ComputingClient> computingsNodes ;
+ private long lastSaveDate ;
+ private String vmName ;
+ private boolean running ;
+ private long startTime ;
+ private long endTime ;
+
+ public RunningApplication( String _name )
+ {
+ name = _name ;
+ computingsNodes = new ArrayList<ComputingClient>() ;
+ lastSaveDate = 0 ;
+ running = false ;
+ startTime = 0 ;
+ endTime = 0 ;
+ }
+
+
+ public void clear() { computingsNodes.clear() ; }
+
+ public int getNbComputingClients() { return computingsNodes.size() ; }
+
+ public long getLastSaveDate() { return lastSaveDate ; }
+
+ public void setLastSaveDate( long _sd ) { lastSaveDate = _sd ; }
+
+ public void setName( String _name ) { name = _name ; }
+
+ public String getName() { return name ; }
+
+ public void setStartTime( long _t ) { startTime = _t ; }
+
+ public long getStartTime() { return startTime ; }
+
+ public void setEndTime( long _t ) { endTime = _t ; }
+
+ public long getEndTime() { return endTime ; }
+
+ public long getExecutionTime() { return endTime - startTime ; }
+
+
+ public void setComputingClients( ArrayList<ComputingClient> _cc )
+ {
+ if( _cc != null )
+ {
+ computingsNodes.clear() ;
+
+ System.out.println( "Application " + name + " contains clients:" ) ;
+
+ for( int i = 0 ; i < _cc.size() ; i++ )
+ {
+ computingsNodes.add( _cc.get( i ) ) ;
+ System.out.println( " " + _cc.get(i).getClient().getName() ) ;
+ }
+ }
+ }
+
+
+ public ArrayList<ComputingClient> getComputingClients() { return computingsNodes ; }
+
+
+ public int replaceComputingClient( ComputingClient _dead, ComputingClient _new )
+ {
+ if( _dead != null && _new != null )
+ {
+ for( int i = 0 ; i < computingsNodes.size() ; i++ )
+ {
+ if( computingsNodes.get( i ).getClient().getIP().equalsIgnoreCase( _dead.getClient().getIP() ) )
+ {
+ System.out.println( "Replacing " + _dead.getClient().getName() + " with " +_new.getClient().getName() ) ;
+ computingsNodes.set( i , _new ) ;
+ return 0 ;
+ }
+
+ System.err.println( "Dead computing client not found. Unable to replace it!" ) ;
+ }
+ }
+
+ return 1 ;
+ }
+
+
+ public void setVmName( String _vmname ) { vmName = _vmname ; }
+
+ public String getVmName() { return vmName ; }
+
+ public void setRunning( boolean _b ) { running = _b ; }
+
+ public boolean getRunning() { return running ; }
+
+}
+
+/** La programmation est un art, respectons ceux qui la pratiquent !! **/