Changeset 419
- Timestamp:
- 05/10/2010 02:30:53 PM (11 years ago)
- Location:
- libs/cmion/cmionMain/src/cmion/level2
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
libs/cmion/cmionMain/src/cmion/level2/competencies/Migration.java
r391 r419 52 52 53 53 public class Migration extends Competency { 54 55 public static final String SUCCESS_TAG = "success"; 54 56 55 57 private HashMap<String, Device> deviceList; … … 224 226 migrationElements = new ArrayList<Element>(); 225 227 destination = deviceList.get(parameters.get("DeviceName")); 228 229 if(destination == null){ 230 System.out.println("Unknown Destination: "+parameters.get("DeviceName")); 231 raise(new SynchronizationFailed()); 232 return false; 233 } 234 226 235 migrationDocument = docBuilder.newDocument(); 227 236 raise(new MigrationStart(destination, migrationDocument)); … … 324 333 if(messageReceived.type.equals("status")){ 325 334 //TODO send back message indicating if device is occupied by another agent. 326 }327 328 if(messageReceived.type.equals("success")){329 raise(new MigrationComplete());330 }331 332 if(messageReceived.type.equals("failure")){333 raise(new MigrationFailed());334 335 } 335 336 … … 341 342 sync.schedule(new Reply(replySuccess())); 342 343 } else { 344 System.out.println("Refusing agent because device is occupied."); 343 345 sync.schedule(new Reply(replyFailure())); 344 346 } … … 387 389 public void invoke(IEvent evt) { 388 390 MessageDelivered delivered = (MessageDelivered) evt; 389 390 Element root = (Element) delivered.message.getElementsByTagName("success").item(0); 391 392 if(root != null){ 393 raise(new MessageDelivered(delivered.message)); 391 Element success = (Element) delivered.message; 392 393 if(success.getTagName().equals(SUCCESS_TAG)){ 394 raise(new MigrationComplete()); 394 395 occupied = false; 395 396 migrationSucceeded(); 396 397 } else { 398 raise(new MigrationFailed()); 397 399 migrationFailed(); 398 400 } -
libs/cmion/cmionMain/src/cmion/level2/migration/MessageDelivered.java
r362 r419 1 1 package cmion.level2.migration; 2 2 3 import org.w3c.dom. Document;3 import org.w3c.dom.Element; 4 4 5 5 import ion.Meta.Event; … … 7 7 public class MessageDelivered extends Event { 8 8 9 public final Document message;9 public final Element message; 10 10 11 public MessageDelivered( Document message) {11 public MessageDelivered(Element message) { 12 12 this.message = message; 13 13 } -
libs/cmion/cmionMain/src/cmion/level2/migration/Synchronizer.java
r418 r419 186 186 Node node = nodes.item(i); 187 187 if(node.getNodeType() == Node.ELEMENT_NODE){ 188 raise(new Message Received((org.w3c.dom.Element)node));188 raise(new MessageDelivered((org.w3c.dom.Element)node)); 189 189 return; 190 190 }
Note: See TracChangeset
for help on using the changeset viewer.