Beispiel #1
0
  public static void applyCritics(Object dm, Designer d, Vector
				  critics, long reasonCode) {
    int size = critics.size();
//     if (_hot) System.out.println("----------");
//     if (_hot) System.out.println("HOT: " +
// 				 Long.toBinaryString(reasonCode) +
// 				 " " +  dm);
    for (int i = 0; i < size; i++) {
      Critic c = (Critic) critics.elementAt(i);
      if (c.isActive() && c.matchReason(reasonCode)) {
// 	if (_hot) System.out.println("hot: " +
// 				     Long.toBinaryString(c.getTriggerMask()) +
// 				     " " + c.getClass().getName());
	try {
	  //_numCriticsApplied++;
	  c.critique(dm, d);
	}
	catch (Exception ex) {
	  System.out.println("Exception raised in critique");
	  System.out.println(c.toString());
	  System.out.println(dm.toString());
	  ex.printStackTrace();
	  System.out.println("----------");
	}
      }
    }
  }