private boolean isDeliverKey(TourActivity act) { if (!(act instanceof TourActivity.JobActivity)) return false; return ((TourActivity.JobActivity) act).getJob().getName().equals("deliver key"); }
private boolean isPickupKey(TourActivity act) { if (!(act instanceof TourActivity.JobActivity)) return false; return ((TourActivity.JobActivity) act).getJob().getName().equals("get key"); }
private boolean isUseKey(TourActivity act) { if (!(act instanceof TourActivity.JobActivity)) return false; return ((TourActivity.JobActivity) act).getJob().getName().equals("use key"); }
@Override public void visit(TourActivity activity) { if (((TourActivity.JobActivity) activity).getJob().getName().equals("use key")) { stateManager.putProblemState(keyUsedStateId, VehicleRoute.class, route); } else if (((TourActivity.JobActivity) activity).getJob().getName().equals("get key")) { stateManager.putProblemState(keyPickedStateId, VehicleRoute.class, route); } else if (((TourActivity.JobActivity) activity).getJob().getName().equals("deliver key")) { stateManager.putProblemState(keyDeliveredStateId, VehicleRoute.class, route); } }
@Override public boolean fulfilled(JobInsertionContext iFacts) { if (iFacts.getJob().getName().equals("get key") || iFacts.getJob().getName().equals("use key") || iFacts.getJob().getName().equals("deliver key")) { VehicleRoute routeOfPickupKey = stateManager.getProblemState(keyPickedStateId, VehicleRoute.class); VehicleRoute routeOfUseKey = stateManager.getProblemState(keyUsedStateId, VehicleRoute.class); VehicleRoute routeOfDeliverKey = stateManager.getProblemState(keyDeliveredStateId, VehicleRoute.class); if (routeOfPickupKey != null) { if (routeOfPickupKey != iFacts.getRoute()) return false; } if (routeOfUseKey != null) { if (routeOfUseKey != iFacts.getRoute()) return false; } if (routeOfDeliverKey != null) { if (routeOfDeliverKey != iFacts.getRoute()) return false; } } return true; } }
} else if (label.equals(Label.JOB_NAME)) { Node actNode = g.getNode(currIdentifier); actNode.addAttribute("ui.label", job.getName()); } else if (label.equals(Label.ARRIVAL_TIME)) { Node actNode = g.getNode(currIdentifier);
} else if (label.equals(Label.JOB_NAME)) { Node actNode = g.getNode(currIdentifier); actNode.addAttribute("ui.label", job.getName()); } else if (label.equals(Label.ARRIVAL_TIME)) { Node actNode = g.getNode(currIdentifier);