JavaScript




Листинг 27.


public class InfoBus extends Object {

public static synchronized InfoBus open (Component c); // Получение ссылки на экземпляр шины. // Аргумент используется для определения контекста // (контейнера), для которого подходящая шина, возможно, // уже существует. При необходимости создается // новый экземпляр шины

public static synchronized InfoBus open (String busName); // Получение ссылки на экземпляр шины. Аргумент задает // желательное имя экземпляра. Обычно используется // не-компонентами (например, инструментальным // окружением)

public synchronized void join (InfoBusMember member) throws PropertyVetoException, InfoBusMembershipException; // Включение заданного компонента в число членов шины. // Компонент, желающий подключиться к шине, должен // реализовать интерфейс InfoBusMember. Экземпляр // шины устанавливается в качестве значения свойства // InfoBus нового члена

public void leave (InfoBusMember member) throws PropertyVetoException; // Выведение компонента из числа членов шины. // Обычно вызывается самим компонентом

public void propertyChange (PropertyChangeEvent event); // Обработка события, вызванного изменением значения // свойства InfoBus у какого-либо члена шины. Служит // для обеспечения целостности связей между шинами и // их членами

public void addDataProducer (InfoBusDataProducer producer); public void addDataConsumer (InfoBusDataConsumer consumer); // Обслуживание подписки на события в экземпляре шины, // запрашиваемой поставщиками и/или потребителями // элементов данных

public void fireItemAvailable (String dataItemName, InfoBusDataProducer producer); // Распространение среди потребителей события, // состоящего в том, что на шине появился элемент // данных с указанным именем, помещенный заданным // поставщиком

public DataItem findDataItem (String dataItemName, InfoBusDataConsumer consumer); // Распространение среди поставщиков события, // состоящего в том, что заданный потребитель // нуждается в элементе данных с указанным именем . . .

}




Содержание  Назад  Вперед