Trull

Uses of Interface
edu.luc.cs.trull.Component

Packages that use Component
edu.luc.cs.trull Contains all the classes for building systems in Trull, a framework for concurrent programming with objects, threads, and events in Java. 
edu.luc.cs.trull.demo Contains common classes used in the Triveni demos. 
edu.luc.cs.trull.demo.battleship Provides a simple battleship demo (run this demo). 
edu.luc.cs.trull.demo.counter Demonstrates how bounded counters, control buttons, and clocks can be composed (run demo 1 run demo 1a run demo 2 run demo 3 run demo 4 run demo 5 run demo 6). 
edu.luc.cs.trull.demo.microwave Provides a microwave oven demo (run this demo). 
edu.luc.cs.trull.demo.office Demonstrates an environmental control system for an office building (run this demo). 
edu.luc.cs.trull.demo.rmi Provides a small distributed demo based on a simple RMI peer-to-peer architecture. 
edu.luc.cs.trull.demo.stopwatch Provides a simple stopwatch demo (run this demo). 
edu.luc.cs.trull.demo.task Demonstrates some capabilities of the Trull Task framework (run timer demo run simple task demo run complex task demo). 
edu.luc.cs.trull.demo.test Provides some useful classes for manual unit testing of Trull components (run this demo). 
edu.luc.cs.trull.demo.wristwatch Demonstrates a simple wristwatch (run this demo). 
edu.luc.cs.trull.swing Provides various classes for the seamless integration of Trull with Swing. 
edu.luc.cs.trull.task Provides support for representing ongoing, autonomous activities as Trull components. 
edu.luc.cs.trull.tl Provides an implementation of temporal logic expressions in Java. 
 

Uses of Component in edu.luc.cs.trull
 

Subinterfaces of Component in edu.luc.cs.trull
 interface Combinator
          A building block for building complex components from existing components.
 

Classes in edu.luc.cs.trull that implement Component
 class AbstractCombinator
          An abstract superclass for combinators with the ability to manage a list of Trull components.
 class AbstractComponent
          An abstract superclass for components.
 class ActionComponent
          An adapter for using a simple PropertyChangeListener as a Trull component.
 class AwaitAll
          A conjunctive await.
 class AwaitOne
          A disjunctive await.
 class Composite
          The composition of zero or more concurrent components that communicate through PropertyChangeEvents.
 class Control
          A combinator that maps sets of events to a component's lifecycle methods start and stop.
 class Cycle
          A combinator that cycles round-robin among several components on any event from a given set of triggering events.
 class Done
          A basic component that does nothing and terminates immediately.
 class Emit
          A basic component for unconditional event emission.
 class EmitComponent
          A superclass or delegation support class for components that require preemptable and suspendable event emission.
 class EmptyComponent
          An empty Trull component implementation.
 class If
          A data-driven selection mechanism that evaluates its predicate and immediately chooses and starts the corresponding branch.
 class Local
          A combinator for hiding events within a component.
 class Loop
          A combinator that provides looping.
 class Nil
          A basic component does nothing but never terminates.
 class Rename
          A combinator for event renaming and event hiding.
 class Sequence
          A combinator for executing zero or more components in sequence.
 class SingleChildCombinator
          An abstract superclass for Trull combinators with a single child.
 class Suspend
          A combinator for mapping sets of events to a component's lifecycle methods suspend and resume.
 class Switch
          A data-driven selection mechanism that immediately evaluates its valuator (criterium) and chooses the corresponding branch.
 class TerminatingComponent
          An abstract superclass for components that signal termination to their parents in the component tree.
 class Watching
          A combinator for event-based preemption.
 

Methods in edu.luc.cs.trull that return Component
protected  Component Control.getBody()
          Returns the body of this component.
protected  Component SingleChildCombinator.getChild()
          Returns the current child component.
 Component Combinator.getComponent(int i)
          This method retrieves a child component from this combinator.
 Component AbstractCombinator.getComponent(int i)
          Returns the component at the specified position in this combinator.
 Component[] Combinator.getComponents()
          This method retrieves all child components from this combinator as an array.
 Component[] AbstractCombinator.getComponents()
          Returns an array of all components in this combinator.
protected  Component Switch.getCurrentComponent()
          The chosen branch comopnent.
protected  Component Sequence.getCurrentComponent()
          Returns the currently active component.
protected  Component Cycle.getCurrentComponent()
          Returns the currently active child component of this Cycle component.
protected  Component Control.getDefaultBody()
           
protected  Component Suspend.getDefaultChild()
           
protected abstract  Component SingleChildCombinator.getDefaultChild()
          This method returns the default child component.
protected  Component Rename.getDefaultChild()
           
protected  Component Loop.getDefaultChild()
           
protected  Component AwaitAll.getDefaultChild()
           
protected  Component Control.getDefaultHandler()
           
protected  Component Control.getHandler()
          Returns the handler of this component.
 

Methods in edu.luc.cs.trull with parameters of type Component
 void SingleChildCombinator.addComponent(Component child)
          Replaces the default child of the combinator with the given child.
 void Control.addComponent(Component comp)
          This method is not supported by this class.
 void Composite.addComponent(Component c)
           
 void Combinator.addComponent(Component comp)
          This method adds a component to this combinator.
 void AbstractCombinator.addComponent(Component comp)
          Adds a component to this combinator.
protected  void AbstractCombinator.addComponent(Component comp, int pos)
          Adds a component to this combinator at the specified position.
 void Control.addComponent(Component comp, java.lang.Object constraint)
           
 void Combinator.addComponent(Component comp, java.lang.Object constraints)
          This method adds a child component to this combinator using the given constraints to determine the role of the component.
 void AbstractCombinator.addComponent(Component comp, java.lang.Object constraints)
          Adds a component to this combinator.
protected  void Sequence.connectComponent(Component c)
          Hooks up the given component for communication and termination.
protected  void Switch.disconnectComponent(Component c)
          Unhooks the given component from communication and termination.
protected  void Sequence.disconnectComponent(Component c)
          Unhooks the given component from communication and termination.
 void ComponentSchedulerAdapter.propertyChange(Component c, java.beans.PropertyChangeEvent event)
           
 void ComponentScheduler.propertyChange(Component c, java.beans.PropertyChangeEvent event)
          This method sends an event to the component and waits until the component has processed the event.
 void Switch.removeComponent(Component c)
           
 void Sequence.removeComponent(Component c)
           
 void Cycle.removeComponent(Component c)
          This method removes a component from the cycle.
 void Composite.removeComponent(Component c)
           
 void Combinator.removeComponent(Component comp)
          This method removes the specified child component from this combinator.
 void AbstractCombinator.removeComponent(Component comp)
          Removes the specified component from this combinator.
 void ComponentSchedulerAdapter.resume(Component c)
           
 void ComponentScheduler.resume(Component c)
          This method resumes a component and waits until the component has resumed.
protected  void Control.setBody(Component c)
          Sets the child component.
protected  void Control.setHandler(Component c)
          Sets the handler component.
 void ComponentSchedulerAdapter.start(Component c)
           
 void ComponentScheduler.start(Component c)
          This method starts a component and waits until the component is ready.
 void ComponentSchedulerAdapter.start(Component c, java.beans.PropertyChangeEvent event)
           
 void ComponentScheduler.start(Component c, java.beans.PropertyChangeEvent event)
          This method starts a component with the given event and waits until the component is ready.
 void ComponentSchedulerAdapter.stop(Component c)
           
 void ComponentScheduler.stop(Component c)
          This method stops a component and waits until the component has stopped.
 void ComponentSchedulerAdapter.suspend(Component c)
           
 void ComponentScheduler.suspend(Component c)
          This method suspends a component and waits until the component has suspended.
 

Constructors in edu.luc.cs.trull with parameters of type Component
AwaitAll(java.lang.String[] labels, Component body)
          AwaitAll(labels, null, body).
AwaitAll(java.lang.String[] labels, java.beans.PropertyChangeListener action, Component body)
          Constructs an AwaitAll component that waits for all the given labels, executes the given action, and then starts the body.
AwaitOne(java.lang.String[] startLabels, Component body)
          AwaitOne(startLabels, null, body)
AwaitOne(java.lang.String[] startLabels, Component[] branches)
          Constructs an AwaitOne component whose body is a Switch with the given branches.
AwaitOne(java.lang.String[] startLabels, java.beans.PropertyChangeListener startAction, Component body)
          Constructs an AwaitOne component with the given array of triggering labels, action to be invoked when one of the triggering events occurs, and component to be started.
AwaitOne(java.lang.String startLabel, Component body)
          AwaitOne([startLabel], body)
AwaitOne(java.lang.String startLabel, java.beans.PropertyChangeListener startAction, Component body)
          AwaitOne([startLabel], startAction, body)
Composite(Component[] components)
          Constructs a composite that consists of the components given in the array.
Composite(Component first, Component second)
          Constructs a composite that consists of the given components.
Control(java.lang.String[] startLabels, Component body, java.lang.String[] stopLabels)
          Control(startLabels, body, stopLabels, new Done())
Control(java.lang.String[] startLabels, Component body, java.lang.String[] stopLabels, Component handler)
          Control(startLabels, null, body, stopLabels, null, handler)
Control(java.lang.String[] startLabels, java.beans.PropertyChangeListener startAction, Component body, java.lang.String[] stopLabels, java.beans.PropertyChangeListener stopAction, Component handler)
          Constructs a Control component.
Control(java.lang.String startLabel, Component body, java.lang.String stopLabel)
          Control([startLabel], body, [stopLabel], new Done())
Control(java.lang.String startLabel, Component body, java.lang.String stopLabel, Component handler)
          Control([startLabel], body, [stopLabel], handler)
Control(java.lang.String startLabel, java.beans.PropertyChangeListener startAction, Component body, java.lang.String stopLabel, java.beans.PropertyChangeListener stopAction, Component handler)
          Control([startLabel], startAction, body, [stopLabel], stopAction, handler)
Cycle(java.lang.String[] labels, Component[] branches)
          Cycle(labels, null, branches)
Cycle(java.lang.String[] labels, java.beans.PropertyChangeListener action, Component[] branches)
          Constructs a Cycle component.
Cycle(java.lang.String label, Component[] branches)
          Cycle(label, null, branches)
Cycle(java.lang.String label, java.beans.PropertyChangeListener action, Component[] branches)
          Cycle([label], action, branches)
If(EventPredicate predicate, Component yes)
          Constructs an If component with only a yes branch.
If(EventPredicate predicate, Component yes, Component no)
          Constructs an If component.
Local(Component body)
          Local([], body)
Local(java.lang.String[] internalLabels, Component body)
          Constructs a Local component with the given local event labels and body.
Local(java.lang.String internalLabel, Component body)
          Local([internalLabel], body)
Loop(Component body)
          Constructs a Loop component with the given body.
Rename(Component body)
          Rename([], [], body)
Rename(java.lang.String[] internalLabels, java.lang.String[] externalLabels, Component body)
          Constructs a Rename component.
Rename(java.lang.String internalLabel, java.lang.String externalLabel, Component body)
          Rename([internalLabel], [externalLabel], body)
Sequence(Component[] components)
          Constructs a Sequence component consisting of the given list of components.
Sequence(Component first, Component second)
          Constructs a Sequence component consisting of the two given components in order.
SingleChildCombinator(Component child)
          Constructs an instance with the given child component.
Suspend(Component body)
          Suspend([], [], body)
Suspend(java.lang.String[] suspendLabels, java.beans.PropertyChangeListener suspendAction, java.lang.String[] resumeLabels, java.beans.PropertyChangeListener resumeAction, Component body)
          Constsructs a Suspend component.
Suspend(java.lang.String[] suspendLabels, java.lang.String[] resumeLabels, Component body)
          Suspend([suspendLabel], null, [resumeLabel], null, body)
Suspend(java.lang.String suspendLabel, java.beans.PropertyChangeListener suspendAction, java.lang.String resumeLabel, java.beans.PropertyChangeListener resumeAction, Component body)
          Suspend([suspendLabel], suspendAction, [resumeLabel], resumeAction, body)
Suspend(java.lang.String suspendLabel, java.lang.String resumeLabel, Component body)
          Suspend([suspendLabel], [resumeLabel], body)
Switch(EventValuator valuator, Component[] components)
          Constructs a Switch component.
Watching(Component body, java.lang.String stopLabel)
          Watching(body, [stopLabel])
Watching(Component body, java.lang.String[] stopLabels)
          Watching(body, stopLabels, new Done())
Watching(Component body, java.lang.String[] stopLabels, Component handler)
          Watching(body, stopLabels, null, handler)
Watching(Component body, java.lang.String[] stopLabels, Component[] branches)
          Constructs a Watching component whose handler is a Switch with the given branches.
Watching(Component body, java.lang.String[] stopLabels, Component[] branches)
          Constructs a Watching component whose handler is a Switch with the given branches.
Watching(Component body, java.lang.String[] stopLabels, java.beans.PropertyChangeListener stopAction)
          Watching(body, stopLabels, stopAction, new Done())
Watching(Component body, java.lang.String[] stopLabels, java.beans.PropertyChangeListener stopAction, Component handler)
          Constructs a Watching component.
Watching(Component body, java.lang.String stopLabel, Component handler)
          Watching(body, [stopLabel], handler)
Watching(Component body, java.lang.String stopLabel, java.beans.PropertyChangeListener stopAction)
          Watching(body, [stopLabel], stopAction)
Watching(Component body, java.lang.String stopLabel, java.beans.PropertyChangeListener stopAction, Component handler)
          Watching(body, [stopLabel], stopAction, handler)
 

Uses of Component in edu.luc.cs.trull.demo
 

Classes in edu.luc.cs.trull.demo that implement Component
 class Clock
          A continuous one-tick-per-second activity.
 

Fields in edu.luc.cs.trull.demo declared as Component
private  Component Applet.component
           
 

Methods in edu.luc.cs.trull.demo with parameters of type Component
protected  void Applet.setComponent(Component component)
          Used by subclasses to specify the top-level Trull expression of this applet.
 

Uses of Component in edu.luc.cs.trull.demo.battleship
 

Classes in edu.luc.cs.trull.demo.battleship that implement Component
(package private)  class Ship
          A ship of a given length and witdh.
(package private)  class WindowShip
          User interface for entering Place and Shot events.
 

Uses of Component in edu.luc.cs.trull.demo.counter
 

Classes in edu.luc.cs.trull.demo.counter that implement Component
 class ButtonComponent
          A component that emits an event each time the button is pressed.
(package private)  class ButtonReactor
          An adapter that causes a button to emit a Trull event.
 class CarryCounter
          A carry counter suitable for building a multi-digit counter.
 class CompositeCounter
          A composite counter suitable for building a multi-digit counter from two existing carry counters.
 class Counter
          A bounded counter implemented as a JavaBean with Trull support only for event emission.
 class CounterComponent
          A bounded counter implemented fully in Trull as a complex component.
 class Haltable
          A preemption wrapper around a component.
 class Pauseable
          A suspend/resume wrapper around a component.
 

Fields in edu.luc.cs.trull.demo.counter declared as Component
private  Component CompositeCounter.c1
           
private  Component CompositeCounter.c2
           
private  Component Pauseable.component
           
 

Constructors in edu.luc.cs.trull.demo.counter with parameters of type Component
CompositeCounter(Component c1, Component c2)
           
Haltable(java.lang.String haltLabel, Component component)
           
Pauseable(java.lang.String pauseLab, java.lang.String continueLab, Component component)
           
 

Uses of Component in edu.luc.cs.trull.demo.microwave
 

Classes in edu.luc.cs.trull.demo.microwave that implement Component
 class ControlPanel
          The control panel consists of buttons for setting the time, for starting and stopping the device, for setting timer-only mode, and for changing the power setting.
(package private)  class HeatController
           
(package private)  class Heater
           
(package private)  class Light
           
(package private)  class LightController
           
 class Microwave
          The control logic for a microwave oven.
(package private)  class Platter
           
(package private)  class Safety
           
(package private)  class SetMode
           
(package private)  class SetPower
           
(package private)  class TimerController
           
(package private)  class TimerController.CountDown
           
(package private)  class TimerController.SetTime
           
 

Uses of Component in edu.luc.cs.trull.demo.office
 

Classes in edu.luc.cs.trull.demo.office that implement Component
 class Building
          An office building.
 class ControlPanelUI
          The central control panel for an office building.
 class EconomyControl
          The economy control logic for an office.
(package private)  class EconomyControl.EmitAwake
           
(package private)  class EconomyControl.EmitSleep
           
(package private)  class EconomyControl.SetLastTemp
           
 class OccupantControl
          The occupant control logic for an office.
 class Office
          An office in an office building.
 class OfficeControl
          An office control logic that switches between occupant control and economy control.
(package private) static class OfficeControl.EmitSetTemp
          A component that emits a SETTEMP event with the requested temperature.
 class OfficeUI
          The occupant control panel for an office.
 class TemperatureStableOffice
          A temperature-stabilized office.
 class Thermostat
          A simple thermostat.
 

Uses of Component in edu.luc.cs.trull.demo.rmi
 

Classes in edu.luc.cs.trull.demo.rmi that implement Component
(package private)  class TestComponent
          The main logic of the demo component.
(package private)  class UserInterface
          A button (-> PRESS) and a checkbox (<- CHECK) in a frame.
 

Fields in edu.luc.cs.trull.demo.rmi declared as Component
(package private)  Component PeerImpl.component
           
 

Constructors in edu.luc.cs.trull.demo.rmi with parameters of type Component
PeerImpl(Component component, java.lang.String selfHost, java.lang.String selfName, java.lang.String peerHost, java.lang.String peerName)
           
 

Uses of Component in edu.luc.cs.trull.demo.stopwatch
 

Classes in edu.luc.cs.trull.demo.stopwatch that implement Component
 class Translation
          The controller logic of the stopwatch.
 

Uses of Component in edu.luc.cs.trull.demo.task
 

Classes in edu.luc.cs.trull.demo.task that implement Component
 class TimerDemo
          This example demonstrates how a Swing timer can be placed under the control of a suitable Trull component.
 

Uses of Component in edu.luc.cs.trull.demo.test
 

Classes in edu.luc.cs.trull.demo.test that implement Component
 class ConsoleTester
          A tester for Trull components, which reads event labels from the console and passes it to the component.
 class SwingTester
          A GUI-based component used to test a Trull component manually.
 

Uses of Component in edu.luc.cs.trull.demo.wristwatch
 

Classes in edu.luc.cs.trull.demo.wristwatch that implement Component
 class DateMode
          datemode = emit DATE ; emit NOW(60 * month + day) ; loop UPDATE -> emit NOW(60 * month + day)
(package private)  class SetDay
          ( emit DAY ; emit NOW(60 * month + day) ; loop START -> emit NOW(60 * month + (day = ...)) )
(package private)  class SetHour
          ( emit HOUR ; emit NOW(time / 60) ; loop START -> emit NOW(time = (time + 3600) % ...) )
(package private)  class SetMinute
          ( emit MIN ; emit NOW(time / 60) ; loop START -> emit NOW(time = time / 3600 * 3600 + (time + 60) % ...) )
(package private)  class SetMonth
          ( emit MONTH ; emit NOW(60 * month + day) ; loop START -> emit NOW(60 * (month = ...) + day) )
 class TimeMode
          timemode = emit TIME ; emit NOW(time / 60) ; loop UPDATE -> emit NOW(time / 60)
 class Update
          update = loop TICK -> { time ++; } emit UPDATE
 class WristWatch
          The top-level control logic for the wristwatch.
 

Uses of Component in edu.luc.cs.trull.swing
 

Subinterfaces of Component in edu.luc.cs.trull.swing
 interface VisualComponent
          A visual component is a Trull component with an associated view in the form of a Swing component.
 

Classes in edu.luc.cs.trull.swing that implement Component
 class ActionEventAdapter
          A converter that listens to a Swing component and converts ActionEvents events to PropertyChangeEvents.
 class InputPanel
          A visual component that provides a user interface consisting of a button panel.
 

Uses of Component in edu.luc.cs.trull.task
 

Classes in edu.luc.cs.trull.task that implement Component
(package private)  class AbstractTaskWorker
          A Worker for the step-by-step execution of a Task using an Executor.
 class DefaultTaskWorker
          A Worker for the step-by-step execution of a Task using Trull's default scheduling mechanism.
 class PooledTaskWorker
          A Worker that uses a multi-threaded PooledExecutor to perform its Task.
 class QueuedTaskWorker
          A Worker that uses a single-threaded QueuedExecutor to perform its Task.
 

Uses of Component in edu.luc.cs.trull.tl
 

Classes in edu.luc.cs.trull.tl that implement Component
 class Assert
          An item-selectable component that wraps around a temporal logic assertion.
 


Trull

http://www.cs.luc.edu/trull/