p2pMapReduce.nodeModule.nodeFsm
Class NodeState

java.lang.Object
  extended by p2pMapReduce.nodeModule.nodeFsm.State
      extended by p2pMapReduce.nodeModule.nodeFsm.NodeState
Direct Known Subclasses:
Active, Check_Master, Idle, Master

public abstract class NodeState
extends State

A generic NodeFSM state.


Nested Class Summary
static class NodeState.StateName
           
 
Constructor Summary
NodeState()
           
 
Method Summary
 void backupJobAssigned(PrimaryJob primaryJob, java.lang.String primaryNodeID)
           
 void backupJobCompleted(java.lang.String completedJobID)
           
 void backupMasterFailure(java.lang.String failedBackupID)
           
 void becomeMaster(java.lang.String coordID)
           
 void becomeSlave()
           
 void coordinatorFailure()
           
 void electionMessage(java.lang.String senderID)
          Invoked when an election message is received from another master In ELECTING_COORDINATOR state from a master which is taking part in the election algorithm In WAITING_COORDINATOR state from the new coordinator
static int getNextTimeout(int minTimeout, int maxTimeout)
           
 void jobAssigned(Job job, NodeInfo userNodeInfo)
           
 void jobCompleted(java.lang.String jobID, JobStatus.State jobState)
           
 void jobIDRequest(int requestNumber, NodeInfo userNodeInfo)
          Used by an user node to request a new unique JobID
 void jobReassigned(BackupJob bJ)
           
 void jobUpdate(java.lang.String jobID, java.util.LinkedList<java.lang.String> updatedBackupMasterList, java.util.LinkedList<JobTask> updatedJobTaskList)
           
 void newCoordinator(java.lang.String senderID)
          Invoked when a new coordinator id is received by another master.
 void outputRetrieved(JobTask reduceJT, boolean completionState)
          Received by JobManager.
 void primaryElectionMessage(java.lang.String jobID, java.lang.String senderID, double senderLoad)
           
 void primaryMasterFailure(java.lang.String primaryID)
           
 void primaryUpdate(java.lang.String jobID, java.lang.String updatedPrimaryID, double updatedPrimaryLoad)
           
 void slaveCheck(java.lang.String taskID)
           
 void slaveFailure(java.lang.String failedSlaveID)
           
 void taskAssigned(java.util.LinkedList<Task> assignedTaskList, java.lang.String primaryID)
           
 void taskCompleted(java.lang.String taskAttID, Task.TaskStatus taskStatus)
           
 void timeout(java.lang.Object param)
          A generic timeout method.
 
Methods inherited from class p2pMapReduce.nodeModule.nodeFsm.State
entryAction, exitAction
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NodeState

public NodeState()
Method Detail

getNextTimeout

public static int getNextTimeout(int minTimeout,
                                 int maxTimeout)

timeout

public void timeout(java.lang.Object param)
A generic timeout method. The param object is useful to handle different timeout event

Parameters:
param -

taskAssigned

public void taskAssigned(java.util.LinkedList<Task> assignedTaskList,
                         java.lang.String primaryID)

taskCompleted

public void taskCompleted(java.lang.String taskAttID,
                          Task.TaskStatus taskStatus)

becomeMaster

public void becomeMaster(java.lang.String coordID)

becomeSlave

public void becomeSlave()

electionMessage

public void electionMessage(java.lang.String senderID)
Invoked when an election message is received from another master In ELECTING_COORDINATOR state from a master which is taking part in the election algorithm In WAITING_COORDINATOR state from the new coordinator

Parameters:
senderID - The node id of the message sender

newCoordinator

public void newCoordinator(java.lang.String senderID)
Invoked when a new coordinator id is received by another master.

Parameters:
senderID - The node id of the message sender that has become the new Coordinator

coordinatorFailure

public void coordinatorFailure()

slaveFailure

public void slaveFailure(java.lang.String failedSlaveID)

backupMasterFailure

public void backupMasterFailure(java.lang.String failedBackupID)

jobIDRequest

public void jobIDRequest(int requestNumber,
                         NodeInfo userNodeInfo)
Used by an user node to request a new unique JobID

Parameters:
userNodeInfo -

jobAssigned

public void jobAssigned(Job job,
                        NodeInfo userNodeInfo)

jobReassigned

public void jobReassigned(BackupJob bJ)

jobCompleted

public void jobCompleted(java.lang.String jobID,
                         JobStatus.State jobState)

slaveCheck

public void slaveCheck(java.lang.String taskID)

outputRetrieved

public void outputRetrieved(JobTask reduceJT,
                            boolean completionState)
Received by JobManager. Notify the success state of reduceJT output retrieving by user node.

Parameters:
reduceJT -
completionState -

backupJobAssigned

public void backupJobAssigned(PrimaryJob primaryJob,
                              java.lang.String primaryNodeID)

primaryMasterFailure

public void primaryMasterFailure(java.lang.String primaryID)

primaryElectionMessage

public void primaryElectionMessage(java.lang.String jobID,
                                   java.lang.String senderID,
                                   double senderLoad)

primaryUpdate

public void primaryUpdate(java.lang.String jobID,
                          java.lang.String updatedPrimaryID,
                          double updatedPrimaryLoad)

jobUpdate

public void jobUpdate(java.lang.String jobID,
                      java.util.LinkedList<java.lang.String> updatedBackupMasterList,
                      java.util.LinkedList<JobTask> updatedJobTaskList)

backupJobCompleted

public void backupJobCompleted(java.lang.String completedJobID)