org.opennms.netmgt.poller.pollables
Class PollableElement

java.lang.Object
  extended by org.opennms.netmgt.poller.pollables.PollableElement
Direct Known Subclasses:
PollableContainer, PollableService

public abstract class PollableElement
extends Object

Represents a PollableElement

Author:
Mathew Brozowski

Constructor Summary
protected PollableElement(PollableContainer parent, Scope scope)
           
 
Method Summary
abstract  Event createDownEvent(Date date)
           
protected  void createOutage(PollEvent cause)
           
abstract  Event createUpEvent(Date date)
           
 void delete()
           
protected  PollEvent doExtrapolateCause()
           
protected  void doInheritParentalCause()
           
 PollStatus doPoll(PollableElement elem)
           
 PollEvent extrapolateCause()
           
 PollEvent getCause()
           
abstract  PollContext getContext()
           
 PollableElement getLockRoot()
           
 PollableContainer getParent()
           
 Scope getScope()
           
 PollStatus getStatus()
           
 boolean hasOpenOutage()
           
 void inheritParentalCause()
           
 boolean isDeleted()
           
 boolean isStatusChanged()
           
 boolean isTreeLockAvailable()
           
 void obtainTreeLock(long timeout)
           
abstract  PollStatus poll()
           
protected  PollStatus poll(PollableElement elem)
           
protected  void processCause(PollEvent cause)
           
protected  void processComingUp(Date date)
           
protected  void processGoingDown(Date date)
           
protected  void processLingeringCauses(PollEvent resolvedCause, PollEvent resolution)
           
protected  void processResolution(PollEvent cause, PollEvent resolution)
           
 void processStatusChange(Date date)
           
 void recalculateStatus()
           
 void releaseTreeLock()
           
 void resetStatusChanged()
           
protected  void resolveAllOutages(PollEvent resolvedCause, PollEvent resolution)
           
protected  void resolveOutage(PollEvent resolution)
           
 PollableElement selectPollElement()
           
 void setCause(PollEvent cause)
           
protected  void setParent(PollableContainer newParent)
           
 void updateStatus(PollStatus newStatus)
           
 void visit(PollableVisitor v)
           
protected  void visitThis(PollableVisitor v)
           
<T> T
withTreeLock(Callable<T> c)
           
<T> T
withTreeLock(Callable<T> c, long timeout)
           
 void withTreeLock(Runnable r)
           
 void withTreeLock(Runnable r, long timeout)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PollableElement

protected PollableElement(PollableContainer parent,
                          Scope scope)
Method Detail

getParent

public PollableContainer getParent()

setParent

protected void setParent(PollableContainer newParent)

getScope

public Scope getScope()

visit

public void visit(PollableVisitor v)

visitThis

protected void visitThis(PollableVisitor v)

getStatus

public PollStatus getStatus()

isStatusChanged

public boolean isStatusChanged()

updateStatus

public void updateStatus(PollStatus newStatus)

resetStatusChanged

public void resetStatusChanged()

recalculateStatus

public void recalculateStatus()

getContext

public abstract PollContext getContext()

doPoll

public PollStatus doPoll(PollableElement elem)
Parameters:
service -
Returns:

getLockRoot

public PollableElement getLockRoot()

isTreeLockAvailable

public boolean isTreeLockAvailable()

obtainTreeLock

public void obtainTreeLock(long timeout)

releaseTreeLock

public void releaseTreeLock()

withTreeLock

public void withTreeLock(Runnable r)

withTreeLock

public <T> T withTreeLock(Callable<T> c)

withTreeLock

public void withTreeLock(Runnable r,
                         long timeout)

withTreeLock

public <T> T withTreeLock(Callable<T> c,
                          long timeout)

poll

public abstract PollStatus poll()

poll

protected PollStatus poll(PollableElement elem)

selectPollElement

public PollableElement selectPollElement()
Returns:

createDownEvent

public abstract Event createDownEvent(Date date)
Parameters:
date -
Returns:

createUpEvent

public abstract Event createUpEvent(Date date)
Parameters:
date -
Returns:

createOutage

protected void createOutage(PollEvent cause)
Parameters:
cause - TODO

resolveOutage

protected void resolveOutage(PollEvent resolution)
Parameters:
resolution - TODO
e -

hasOpenOutage

public boolean hasOpenOutage()

setCause

public void setCause(PollEvent cause)

getCause

public PollEvent getCause()

processStatusChange

public void processStatusChange(Date date)
Parameters:
date -

processComingUp

protected void processComingUp(Date date)

processResolution

protected void processResolution(PollEvent cause,
                                 PollEvent resolution)

processGoingDown

protected void processGoingDown(Date date)

processCause

protected void processCause(PollEvent cause)

resolveAllOutages

protected void resolveAllOutages(PollEvent resolvedCause,
                                 PollEvent resolution)

isDeleted

public boolean isDeleted()

delete

public void delete()

processLingeringCauses

protected void processLingeringCauses(PollEvent resolvedCause,
                                      PollEvent resolution)

extrapolateCause

public PollEvent extrapolateCause()

doExtrapolateCause

protected PollEvent doExtrapolateCause()

inheritParentalCause

public void inheritParentalCause()

doInheritParentalCause

protected void doInheritParentalCause()


Copyright © 2009. All Rights Reserved.