wt.notify
Class NotificationList

java.lang.Object
  extended bywt.fc.WTObject
      extended bywt.notify.NotificationList
All Implemented Interfaces:
DisplayIdentification, Externalizable, NetFactor, ObjectMappable, Persistable, Serializable

public class NotificationList
extends WTObject
implements Externalizable

A notification list is simply a set of messages and principals that must be notified in case a event happens to a certain class of objects in a certain state. Notification lists are derived from the rules when they are needed and kept in a cache. Notification lists are not directly manipulated by the users.

Use the newNotificationList static factory method(s), not the NotificationList constructor, to construct instances of this class. Instances must be constructed using the static factory(s), in order to ensure proper initialization of the instance.



Supported API: false

Extendable: false

See Also:
Serialized Form

Field Summary
private static String CLASSNAME
           
static long EXTERNALIZATION_VERSION_UID
           
protected static long OLD_FORMAT_VERSION_UID
           
private static String RESOURCE
           
private  ReferenceFactory rf
           
static String RULE_SET
          Label for the attribute; Set of rules that are applicable to the list's selector.
private static int RULE_SET_UPPER_LIMIT
           
private  WTStringSet ruleSet
           
private  AttributeValueSelector selector
           
static String SELECTOR
          Label for the attribute; Rule antecedent.
(package private) static long serialVersionUID
           
 
Fields inherited from class wt.fc.WTObject
CREATE_TIMESTAMP, MODIFY_TIMESTAMP
 
Fields inherited from interface wt.fc.Persistable
IDENTITY, PERSIST_INFO, TYPE
 
Fields inherited from interface wt.identity.DisplayIdentification
DISPLAY_IDENTIFIER, DISPLAY_IDENTITY, DISPLAY_TYPE
 
Constructor Summary
NotificationList()
           
 
Method Summary
protected  void addRule(NotificationRule rule)
          Adds rule to notification list.
 boolean equals(Object obj)
          Indicates whether the given object is equal to this object from a persistence perspective, by comparing the two objects ObjectIdentifiers.
 String getConceptualClassname()
          Deprecated.  
 Enumeration getPrincipalReferences()
          Returns the set of principal references that are in the rules associated with the notification list.
protected  Enumeration getRules()
          Return all rules in the notification list.
 WTStringSet getRuleSet()
          Gets the value of the attribute: RULE_SET.
 AttributeValueSelector getSelector()
          Gets the value of the attribute: SELECTOR.
 int hashCode()
          Returns a hash code for this object based upon its ObjectIdentifier.
protected  void initialize(Selector sel)
          Supports initialization, following construction of an instance.
 boolean isEmpty()
          Returns if the rule list is empty.
protected static NotificationList newNotificationList(Selector sel)
          Constructs a list for a given selector.
 void readExternal(ObjectInput input)
          Reads the non-transient fields of this class from an external source.
 void readExternal(PersistentRetrieveIfc input)
          Used by Persistent Data Service to populate the persistent attributes of this class from a persistent store.
private  boolean readOldVersion(ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source, which is not the current version.
protected  boolean readVersion(NotificationList thisObject, ObjectInput input, long readSerialVersionUID, boolean passThrough, boolean superDone)
          Reads the non-transient fields of this class from an external source.
protected  void removeRule(NotificationRule rule)
          Removes rule from notification list.
protected  void resetRules()
          Removes all rules from list.
private  String ruleSetToString(WTStringSet rule_set)
           
private  String ruleToString(String rule)
           
 void setRuleSet(WTStringSet a_RuleSet)
          Sets the value of the attribute: RULE_SET.
 void setSelector(AttributeValueSelector a_Selector)
          Sets the value of the attribute: SELECTOR.
 String toString()
          Returns a string representation of the list.
 void writeExternal(ObjectOutput output)
          Writes the non-transient fields of this class to an external source.
 void writeExternal(PersistentStoreIfc output)
          Used by Persistent Data Service to obtain the values of the persistent attributes of this class, so they can be written to a persistent store.
 
Methods inherited from class wt.fc.WTObject
checkAttributes, duplicate, finalize, getClassInfo, getCreateTimestamp, getDisplayIdentifier, getDisplayIdentity, getDisplayType, getIdentity, getModifyTimestamp, getPersistInfo, getType, initialize, readVersion, setPersistInfo
 
Methods inherited from class java.lang.Object
clone, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

RESOURCE

private static final String RESOURCE
See Also:
Constant Field Values

CLASSNAME

private static final String CLASSNAME

SELECTOR

public static final String SELECTOR
Label for the attribute; Rule antecedent. As such contains the domain, the class, the state, the event and attribute-value pairs.

Supported API: false

See Also:
Constant Field Values

selector

private AttributeValueSelector selector

RULE_SET

public static final String RULE_SET
Label for the attribute; Set of rules that are applicable to the list's selector. Rules are represented internally by their reference strings.

Supported API: false

See Also:
Constant Field Values

RULE_SET_UPPER_LIMIT

private static int RULE_SET_UPPER_LIMIT

ruleSet

private WTStringSet ruleSet

serialVersionUID

static final long serialVersionUID
See Also:
Constant Field Values

EXTERNALIZATION_VERSION_UID

public static final long EXTERNALIZATION_VERSION_UID
See Also:
Constant Field Values

OLD_FORMAT_VERSION_UID

protected static final long OLD_FORMAT_VERSION_UID
See Also:
Constant Field Values

rf

private ReferenceFactory rf
Constructor Detail

NotificationList

public NotificationList()
Method Detail

writeExternal

public void writeExternal(ObjectOutput output)
                   throws IOException
Writes the non-transient fields of this class to an external source.

Supported API: false

Specified by:
writeExternal in interface Externalizable
Overrides:
writeExternal in class WTObject
Parameters:
output -
Throws:
IOException

readExternal

public void readExternal(ObjectInput input)
                  throws IOException,
                         ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Specified by:
readExternal in interface Externalizable
Overrides:
readExternal in class WTObject
Parameters:
input -
Throws:
IOException
ClassNotFoundException

readVersion

protected boolean readVersion(NotificationList thisObject,
                              ObjectInput input,
                              long readSerialVersionUID,
                              boolean passThrough,
                              boolean superDone)
                       throws IOException,
                              ClassNotFoundException
Reads the non-transient fields of this class from an external source.

Supported API: false

Parameters:
thisObject -
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

readOldVersion

private boolean readOldVersion(ObjectInput input,
                               long readSerialVersionUID,
                               boolean passThrough,
                               boolean superDone)
                        throws IOException,
                               ClassNotFoundException
Reads the non-transient fields of this class from an external source, which is not the current version.

Parameters:
input -
readSerialVersionUID -
passThrough -
superDone -
Returns:
boolean
Throws:
IOException
ClassNotFoundException

writeExternal

public void writeExternal(PersistentStoreIfc output)
                   throws SQLException,
                          DatastoreException
Used by Persistent Data Service to obtain the values of the persistent attributes of this class, so they can be written to a persistent store.

(Not intended for general use.)

Supported API: false

Specified by:
writeExternal in interface ObjectMappable
Overrides:
writeExternal in class WTObject
Parameters:
output -
Throws:
SQLException
DatastoreException

readExternal

public void readExternal(PersistentRetrieveIfc input)
                  throws SQLException,
                         DatastoreException
Used by Persistent Data Service to populate the persistent attributes of this class from a persistent store.

(Not intended for general use.)

Supported API: false

Specified by:
readExternal in interface ObjectMappable
Overrides:
readExternal in class WTObject
Parameters:
input -
Throws:
SQLException
DatastoreException

getConceptualClassname

public String getConceptualClassname()
Deprecated.  

Returns the conceptual (modeled) name for the class.

Supported API: false

Specified by:
getConceptualClassname in interface NetFactor
Returns:
String

getSelector

public AttributeValueSelector getSelector()
Gets the value of the attribute: SELECTOR. Rule antecedent. As such contains the domain, the class, the state, the event and attribute-value pairs.

Supported API: false

Returns:
AttributeValueSelector

setSelector

public void setSelector(AttributeValueSelector a_Selector)
Sets the value of the attribute: SELECTOR. Rule antecedent. As such contains the domain, the class, the state, the event and attribute-value pairs.

Supported API: false

Parameters:
a_Selector -

getRuleSet

public WTStringSet getRuleSet()
Gets the value of the attribute: RULE_SET. Set of rules that are applicable to the list's selector. Rules are represented internally by their reference strings.

Supported API: false

Returns:
WTStringSet

setRuleSet

public void setRuleSet(WTStringSet a_RuleSet)
                throws WTPropertyVetoException
Sets the value of the attribute: RULE_SET. Set of rules that are applicable to the list's selector. Rules are represented internally by their reference strings.

Supported API: false

Parameters:
a_RuleSet -
Throws:
WTPropertyVetoException

newNotificationList

protected static NotificationList newNotificationList(Selector sel)
                                               throws WTException
Constructs a list for a given selector. Protected so that are not available outside the package. Lists are constructed from the rules when a call to 'getNotificationList' is made and the list is not in the cache nor in the database.

Supported API: false

Parameters:
sel -
Returns:
NotificationList
Throws:
WTException

initialize

protected void initialize(Selector sel)
                   throws WTException
Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

Supported API: false

Parameters:
sel -
Throws:
WTException

getPrincipalReferences

public Enumeration getPrincipalReferences()
                                   throws WTException
Returns the set of principal references that are in the rules associated with the notification list.

Supported API: false

Returns:
Enumeration
Throws:
WTException

toString

public String toString()
Returns a string representation of the list.

Supported API: false

Overrides:
toString in class WTObject
Returns:
String

isEmpty

public boolean isEmpty()
Returns if the rule list is empty. Returns 'true' if this is the case and 'false' otherwise.

Supported API: false

Returns:
boolean

addRule

protected void addRule(NotificationRule rule)
                throws WTException
Adds rule to notification list.

Supported API: false

Parameters:
rule -
Throws:
WTException

removeRule

protected void removeRule(NotificationRule rule)
                   throws WTException
Removes rule from notification list.

Supported API: false

Parameters:
rule -
Throws:
WTException

getRules

protected Enumeration getRules()
                        throws WTException
Return all rules in the notification list.

Supported API: false

Returns:
Enumeration
Throws:
WTException

resetRules

protected void resetRules()
Removes all rules from list.

Supported API: false


equals

public boolean equals(Object obj)
Indicates whether the given object is equal to this object from a persistence perspective, by comparing the two objects ObjectIdentifiers. Changed or stale copies are still considered equal by this method. Delegates to PersistenceHelper.equals(Persistable,Object).

Warning: Certain core Windchill operations may depend upon equals being ObjectIdentifier-based. Changes to the default implementation should be done with care, if at all.

Supported API: false

Overrides:
equals in class WTObject
Parameters:
obj -
Returns:
boolean

hashCode

public int hashCode()
Returns a hash code for this object based upon its ObjectIdentifier. Delegates to PersistenceHelper.hashCode(Persistable).

Warning: Certain core Windchill operations may depend upon hashCode being ObjectIdentifier-based. Changes to the default implementation should be done with care, if at all.

Supported API: false

Overrides:
hashCode in class WTObject
Returns:
int

ruleSetToString

private String ruleSetToString(WTStringSet rule_set)

ruleToString

private String ruleToString(String rule)