/* * Copyright (c) 2006 Stiftung Deutsches Elektronen-Synchroton, * Member of the Helmholtz Association, (DESY), HAMBURG, GERMANY. * * THIS SOFTWARE IS PROVIDED UNDER THIS LICENSE ON AN "../AS IS" BASIS. * WITHOUT WARRANTY OF ANY KIND, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED * TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR PARTICULAR PURPOSE AND * NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * THE USE OR OTHER DEALINGS IN THE SOFTWARE. SHOULD THE SOFTWARE PROVE DEFECTIVE * IN ANY RESPECT, THE USER ASSUMES THE COST OF ANY NECESSARY SERVICING, REPAIR OR * CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. * NO USE OF ANY SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. * DESY HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, * OR MODIFICATIONS. * THE FULL LICENSE SPECIFYING FOR THE SOFTWARE THE REDISTRIBUTION, MODIFICATION, * USAGE AND OTHER RIGHTS AND OBLIGATIONS IS INCLUDED WITH THE DISTRIBUTION OF THIS * PROJECT IN THE FILE LICENSE.HTML. IF THE LICENSE IS NOT INCLUDED YOU MAY FIND A COPY * AT HTTP://WWW.DESY.DE/LEGAL/LICENSE.HTM */ package org.csstudio.dal; /** * Interface <code>DynamicValueMonitor</code> defines the way in which an observer * (realized as JavaBeans listener) can influence the flow of events from the * data access event source. Subscription can be changed by each observer separately * and it affects that observer only. Event delivery is changed by changing characteristics * in the characteristic context of the subscription. * <p> * Timer trigger is the only statically declared trigger in this interface; implementations * may choose to provide additional triggers through the characteristic context. * Timer trigger may operate at the prescribed default frequency, with all other (optional) * triggers set to their respective default values. In this case the method * <code>isDefault</code> must return <code>true</code>. The default subscription may be * handled separately (in a more efficient way) by the underlying implementation. * </p> * <p> * Datatypes library does not link this interface explicitely from any other interface. * In this way the implementation is free to choose how it will offer subscription control * and whether it will offer it at all. If there is no subscription control, the same * events must be dispatched to all listeners, as in JavaBeans specification. * </p> * <p> * Methods of this interface which generate transient connection objects such as requests and * responses, store those objects directly into the latest values of the property to * which this monitor belongs. For example, if changing trigger thorugh this method generates * a request the request will be accessible through the <code>AbstractProperty</code> * <code>Updateable</code> interface. * </p> * * @see org.csstudio.dal.CharacteristicContext * @see org.csstudio.dal.DynamicValueMonitorCharacteristics * @see org.csstudio.dal.SimpleMonitor */ public interface DynamicValueMonitor extends CharacteristicContext, DynamicValueMonitorCharacteristics, SimpleMonitor, Suspendable { } /* __oOo__ */