GridSim 5.0 beta

gridsim.filter
Class FilterCreateAR

Object
  extended by Sim_predicate
      extended by FilterCreateAR

public class FilterCreateAR
extends Sim_predicate

Look for a specific incoming event that matches a given event tag name and a transaction id. Incoming events with a matching tag name must contain a data object of type long[], where long[0] stores the transaction id.
NOTE: This class can only be used for getting a reply or feedback from a ARGridResource entity regarding to a creation of new reservation.

This class is used by Sim_system to select or filter an event already present in the entity's deferred queue (incoming buffer), or used to selectively wait for a future event.

An example on how to use this class:
Imagine we have a scenario where RESOURCE_A sends one or more events to Entity_B with different tag names and data objects.
Entity_B wants to get an event that contains a create reservation result with a transaction id of 10 in this example.
Therefore, inside the Entity_B code:

   ... // other code

   int transactionID = 10;
   Sim_event ev = new Sim_event();
   FilterCreateAR filter = new FilterCreateAR(transactionID);

   // get an incoming event that matches a given transaction ID
   super.sim_get_next(filter, ev);

   // get the matching event data
   long[] data = (long[]) ev.get_data(); // data[0] contains transaction ID


NOTE:

Since:
GridSim Toolkit 3.2
Author:
Anthony Sulistio
Invariant:
$none

Constructor Summary
FilterCreateAR(int transactionID)
          Finds an incoming events that matches with the given transaction ID and a default tag name of GridSimTags.RETURN_AR_CREATE.
FilterCreateAR(int transactionID, int tag)
          Finds an incoming events that matches with the given transaction ID and event tag name.
 
Method Summary
 boolean match(Sim_event ev)
          Checks whether an event matches the required constraints or not.
NOTE: This method is not used directly by the user.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FilterCreateAR

public FilterCreateAR(int transactionID,
                      int tag)
Finds an incoming events that matches with the given transaction ID and event tag name.

Parameters:
transactionID - a unique transaction ID to differentiate itself among other events with the same tag name
tag - a matching event tag name
Pre Condition:
$none
Post Condition:
$none

FilterCreateAR

public FilterCreateAR(int transactionID)
Finds an incoming events that matches with the given transaction ID and a default tag name of GridSimTags.RETURN_AR_CREATE.

Parameters:
transactionID - a unique transaction ID to differentiate itself among other events with the same tag name
Pre Condition:
$none
Post Condition:
$none
Method Detail

match

public boolean match(Sim_event ev)
Checks whether an event matches the required constraints or not.
NOTE: This method is not used directly by the user. Instead, it is called by Sim_system.

Specified by:
match in class Sim_predicate
Parameters:
ev - an incoming event to compare with
Returns:
true if an event matches, false otherwise
Pre Condition:
ev != null
Post Condition:
$none

GridSim 5.0 beta

The University of Melbourne, Australia, 2009