
javax.tv.service.SIChangeEvent Maven / Gradle / Ivy
/*
* @(#)SIChangeEvent.java 1.25 00/08/28
*
* Copyright 1998-2000 by Sun Microsystems, Inc.,
* 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
* All rights reserved.
*
* This software is the confidential and proprietary information
* of Sun Microsystems, Inc. ("Confidential Information"). You
* shall not disclose such Confidential Information and shall use
* it only in accordance with the terms of the license agreement
* you entered into with Sun.
*/
package javax.tv.service;
import java.util.EventObject;
/**
* SIChangeEvent
objects are sent to
* SIChangeListener
instances to signal detected changes
* in the SI database.
*
* Note that while the SI database may detect changes, notification of
* which specific SIElement
has changed is not guaranteed.
* The entity reported by the method getSIElement()
will
* be either:
*
* - The specific SI element that changed, or
*
- An SI element that contains, however indirectly, the specific SI
* element that changed, or
*
null
, if the specific changed element is unknown.
*
*
* The level of specificity provided by the change mechanism is
* entirely dependent on the capabilities and current resources of the
* implementation.
*
* SIChangeEvent
instances also report the kind of change
* that occurred to the SI element, via the method
* getChangeType()
:
*
*
* - An
SIChangeType
of ADD
indicates that
* the reported SI element is new in the database.
*
*
- An
SIChangeType
of REMOVE
indicates
* that the reported SI element is defunct and no longer cached by the
* database. The results of subsequent method invocations on the
* removed SIElement are undefined.
*
*
- An
SIChangeType
of MODIFY
indicates
* that the data encapsulated by the reported SI element has changed.
*
*
*
* In the event that the SIElement reported by this event is not
* the actual element that changed in the broadcast (i.e. it is
* instead a containing element or null
), the
* SIChangeType
will be MODIFY
.
* Individual SI element changes are reported only once, i.e.,
* a change to an SI element is not also reported as a change
* to any containing (or "parent") SI elements.
*
* @see #getSIElement
* @see #getChangeType
*/
public abstract class SIChangeEvent extends EventObject {
/**
* Constructs an SIChangeEvent
object.
*
* @param source The entity in which the change occurred.
*
* @param type The type of change that occurred.
*
* @param e The SIElement
that changed, or
* null
if this is unknown.
*/
public SIChangeEvent(Object source, SIChangeType type, SIElement e) {
super(null);
}
/**
* Reports the SIElement
that changed.
*
* This method may return null
, since it is not
* guaranteed that the SI database can or will determine which
* element in a particular table changed.
*
* @return The SIElement
that changed, or
* null
if this is unknown. */
public SIElement getSIElement() {
return null;
}
/**
* Indicates the type of change that occurred.
*
* @return The type of change that occurred.
*/
public SIChangeType getChangeType() {
return null;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy