1 29 30 package nextapp.echo2.testapp.thousandmonkeys; 31 32 import nextapp.echo2.app.ApplicationInstance; 33 import nextapp.echo2.app.ContentPane; 34 import nextapp.echo2.app.TaskQueueHandle; 35 import nextapp.echo2.app.Window; 36 import nextapp.echo2.webcontainer.ContainerContext; 37 38 41 public class ThousandMonkeysApp extends ApplicationInstance { 42 43 private int iteration; 44 private TaskQueueHandle ghostTaskQueue; 45 private Monkey monkey; 46 47 50 public Window init() { 51 Window window = new Window(); 52 window.setTitle("Thousand Monkeys (Start)"); 53 ContentPane contentPane = new ContentPane(); 54 window.setContent(contentPane); 55 monkey = new Monkey(contentPane); 56 startGhostTask(); 57 return window; 58 } 59 60 63 private void startGhostTask() { 64 if (ghostTaskQueue != null) { 65 return; 66 } 67 ghostTaskQueue = createTaskQueue(); 68 ContainerContext containerContext = 69 (ContainerContext) getContextProperty(ContainerContext.CONTEXT_PROPERTY_NAME); 70 containerContext.setTaskQueueCallbackInterval(ghostTaskQueue, 0); 71 GhostTask.start(this, ghostTaskQueue); 72 } 73 74 77 void iterate() { 78 monkey.iterate(); 79 getDefaultWindow().setTitle("Thousand Monkeys: Iteration #" + ++iteration); 80 } 81 } 82 | Popular Tags |