flightinfosubscriber.java

来自「《移动Agent技术》一书的所有章节源代码。」· Java 代码 · 共 99 行

JAVA
99
字号
/* FlightInfoSubscriber.java * $Id: FlightInfoSubscriber.java,v 2.3 1997-11-19 19:22:41+09 ht Exp $ $Name: alpha5_1-release $ */package com.ibm.acl.kqmlsample.travel;import java.util.*;import java.awt.TextArea;import com.ibm.acl.kqml.*;// add notify dialogimport java.awt.Frame;import java.awt.Color;/** *  * * @version     $Revision: 2.3 $ $Date: 1997-11-19 19:22:41+09 $ * @author      Hajime Tsuchitani * @author      Osamu  Furusawa */public class FlightInfoSubscriber extends Subscriber{  private static final String rcsid = "$Id: FlightInfoSubscriber.java,v 2.3 1997-11-19 19:22:41+09 ht Exp $ $Name: alpha5_1-release $";  /**   * variable description goes here   */  private boolean forever = false;  private long timeout;    private Frame frame;    private Conversation conv = null;    // flag  for text color change    private boolean delayFlag = false;  //private Object textArea = null;  public FlightInfoSubscriber(Conversation conv, Object textArea) {    super(conv, textArea, 0);  }  public FlightInfoSubscriber(Conversation conv, Object textArea, long timeout) {    super(conv, textArea, timeout);  }    public FlightInfoSubscriber(Conversation conv, Object textArea, Frame frame) {    super(conv, textArea, 0);    this.frame = frame;  }  public synchronized boolean handleResult(ReturnValue rtn, Object textArea) {    System.err.println("> FlightInfoSubscriber.handleResult entered");    if (rtn.getReturnValue() instanceof Vector) {      Vector flightsInfo = (Vector)rtn.getReturnValue();      if (flightsInfo.size() == 0) return false;      FlightInfo flightInfo = (FlightInfo) flightsInfo.elementAt(0);      String flight = 	new String("Carrier:" + flightInfo.getCarrier() +		   " Flight:" + flightInfo.getFlight()      +"\n"+ 		   "Departure:" + flightInfo.getDeparture() +"\n"+		   "Arrival:" + flightInfo.getArrival()     +"\n"+		   "DeptTime : " + flightInfo.getDeptTime()		   );      System.err.println("FlightInfoSubscriber.handleResult");      System.err.println(flight);        String oldSchedule = new String( ((TextArea)textArea).getText() );        if ( oldSchedule == null) {            ((TextArea) textArea).setText(flight);              } else if ( ! oldSchedule.equals(flight) ) {            ((TextArea) textArea).setText(flight);            if (delayFlag == false)                 ((TextArea) textArea).setForeground(Color.red);            else                 ((TextArea) textArea).setForeground(Color.black);                delayFlag = !delayFlag;            PersonalAssistNotifyDialog diag = new PersonalAssistNotifyDialog(frame);            diag.start();        }        return true;    }    return false;  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?