Class CostBenefitAnalysis

All Implemented Interfaces:
ImageObserver, MenuContainer, BeanContextChild, Serializable, EventListener, Accessible, BeanCommon, HeadlessEventCollector, ThresholdDataListener, UserRequestAcceptor, Visible

@KFStep(category="Visualize", toolTipText="Interactive cost/benefit analysis") public class CostBenefitAnalysis extends JPanel implements BeanCommon, ThresholdDataListener, Visible, UserRequestAcceptor, Serializable, BeanContextChild, HeadlessEventCollector
Bean that aids in analyzing cost/benefit tradeoffs.
Version:
$Revision: 10220 $
Author:
Mark Hall (mhall{[at]}pentaho{[dot]}com)
See Also:
  • Constructor Details

    • CostBenefitAnalysis

      public CostBenefitAnalysis()
      Constructor.
  • Method Details

    • globalInfo

      public String globalInfo()
      Global info for this bean
      Returns:
      a String value
    • acceptDataSet

      public void acceptDataSet(ThresholdDataEvent e)
      Accept a threshold data event and set up the visualization.
      Specified by:
      acceptDataSet in interface ThresholdDataListener
      Parameters:
      e - a threshold data event
    • setCurveData

      public void setCurveData(PlotData2D curveData, Attribute origClassAtt) throws Exception
      Set the threshold curve data to use.
      Parameters:
      curveData - a PlotData2D object set up with the curve data.
      origClassAtt - the class attribute from the original data used to generate the curve.
      Throws:
      Exception - if somthing goes wrong during the setup process.
    • getVisual

      public BeanVisual getVisual()
      Description copied from interface: Visible
      Get the visual representation
      Specified by:
      getVisual in interface Visible
      Returns:
      a BeanVisual value
    • setVisual

      public void setVisual(BeanVisual newVisual)
      Description copied from interface: Visible
      Set a new visual representation
      Specified by:
      setVisual in interface Visible
      Parameters:
      newVisual - a BeanVisual value
    • useDefaultVisual

      public void useDefaultVisual()
      Description copied from interface: Visible
      Use the default visual representation
      Specified by:
      useDefaultVisual in interface Visible
    • enumerateRequests

      public Enumeration<String> enumerateRequests()
      Description copied from interface: UserRequestAcceptor
      Get a list of performable requests
      Specified by:
      enumerateRequests in interface UserRequestAcceptor
      Returns:
      an Enumeration value
    • performRequest

      public void performRequest(String request)
      Description copied from interface: UserRequestAcceptor
      Perform the named request
      Specified by:
      performRequest in interface UserRequestAcceptor
      Parameters:
      request - a String value
    • addVetoableChangeListener

      public void addVetoableChangeListener(String name, VetoableChangeListener vcl)
      Specified by:
      addVetoableChangeListener in interface BeanContextChild
    • getBeanContext

      public BeanContext getBeanContext()
      Specified by:
      getBeanContext in interface BeanContextChild
    • removeVetoableChangeListener

      public void removeVetoableChangeListener(String name, VetoableChangeListener vcl)
      Specified by:
      removeVetoableChangeListener in interface BeanContextChild
    • setBeanContext

      public void setBeanContext(BeanContext bc) throws PropertyVetoException
      Specified by:
      setBeanContext in interface BeanContextChild
      Throws:
      PropertyVetoException
    • connectionAllowed

      public boolean connectionAllowed(String eventName)
      Returns true if, at this time, the object will accept a connection via the named event
      Specified by:
      connectionAllowed in interface BeanCommon
      Parameters:
      eventName - the name of the event in question
      Returns:
      true if the object will accept a connection
    • connectionNotification

      public void connectionNotification(String eventName, Object source)
      Notify this object that it has been registered as a listener with a source for recieving events described by the named event This object is responsible for recording this fact.
      Specified by:
      connectionNotification in interface BeanCommon
      Parameters:
      eventName - the event
      source - the source with which this object has been registered as a listener
    • connectionAllowed

      public boolean connectionAllowed(EventSetDescriptor esd)
      Returns true if, at this time, the object will accept a connection according to the supplied EventSetDescriptor
      Specified by:
      connectionAllowed in interface BeanCommon
      Parameters:
      esd - the EventSetDescriptor
      Returns:
      true if the object will accept a connection
    • disconnectionNotification

      public void disconnectionNotification(String eventName, Object source)
      Notify this object that it has been deregistered as a listener with a source for named event. This object is responsible for recording this fact.
      Specified by:
      disconnectionNotification in interface BeanCommon
      Parameters:
      eventName - the event
      source - the source with which this object has been registered as a listener
    • getCustomName

      public String getCustomName()
      Get the custom (descriptive) name for this bean (if one has been set)
      Specified by:
      getCustomName in interface BeanCommon
      Returns:
      the custom name (or the default name)
    • isBusy

      public boolean isBusy()
      Returns true if. at this time, the bean is busy with some (i.e. perhaps a worker thread is performing some calculation).
      Specified by:
      isBusy in interface BeanCommon
      Returns:
      true if the bean is busy.
    • setCustomName

      public void setCustomName(String name)
      Set a custom (descriptive) name for this bean
      Specified by:
      setCustomName in interface BeanCommon
      Parameters:
      name - the name to use
    • setLog

      public void setLog(Logger logger)
      Set a logger
      Specified by:
      setLog in interface BeanCommon
      Parameters:
      logger - a weka.gui.Logger value
    • stop

      public void stop()
      Stop any processing that the bean might be doing.
      Specified by:
      stop in interface BeanCommon
    • main

      public static void main(String[] args)
    • retrieveHeadlessEvents

      public List<EventObject> retrieveHeadlessEvents()
      Get the list of events processed in headless mode. May return null or an empty list if not running in headless mode or no events were processed
      Specified by:
      retrieveHeadlessEvents in interface HeadlessEventCollector
      Returns:
      a list of EventObjects or null.
    • processHeadlessEvents

      public void processHeadlessEvents(List<EventObject> headless)
      Process a list of events that have been collected earlier. Has no affect if the component is running in headless mode.
      Specified by:
      processHeadlessEvents in interface HeadlessEventCollector
      Parameters:
      headless - a list of EventObjects to process.