使用 AIDE 实现高效率,第 4 部分: 接触点通知与简单管理器
2010-04-06 00:00:00 来源:WEB开发网清单 1. 发出通知的 WeatherStation 方法
public void setOperationalStatus(String newOperationalStatus)
{
String oldOperationalStatus = operationalStatus;
operationalStatus = newOperationalStatus;
if (eNotificationRequired())
{
System.out.println("Emitting a notification for OperationalStatus\n");
eNotify(new ENotificationImpl(this, Notification.SET,
ComPackage.WEATHER_STATION__OPERATIONAL_STATUS,
oldOperationalStatus,
operationalStatus));
}
}
我们现在可以直接使用 WeatherStation 接触点测试清单 1 中的代码。此接触点将运行代码:它不会导致您接收通知。这将在稍后发生。完成以下步骤,以测试清单 1 中的代码:
在 Resource Viewer 窗口中单击 Kickme()。
在 Resource Viewer 窗口中单击 Recalibrate()。
帮助中对这两个操作进行了详细说明。调用 Kickme() 方法将导致不确定的温度更改——可将此视为 WeatherStation 中一个可通知的事件!调用 Recalibrate() 方法会随后使得 WeatherStation 接触点脱机,从而可以等待 10 秒,以等待温度稳定下来。这个暂停将随后导致 OperationalStatus 的值从 Available 更改为 Unavailable。对 OperationalStatus 的修改出现在前面清单 1 中所示的 setOperationalStatus() 方法中。
图 2 显示了执行清单 1 中的代码时得到的控制台窗口输出。必须向下滚动控制台窗口内容才能看到此输出。
图 2. 产生了一个通知
更多精彩
赞助商链接