OTExample Observer/Flower

From Eclipsepedia

Jump to: navigation, search

Simple base class for the Observer pattern

(note, that this class bears no pre-planning for being observed).

package flower_example;
 
/**
 * @author Bruce Eckel (original Java example)
 * @author Miguel P. Monteiro (adaptation to OT/J)
 *
 * Base class to play the Subject role
 */
public class Flower {
    private boolean isOpen;
 
    public Flower() {
        isOpen = false;
    }
    /** Opens its petals. */
    public void open() {
        isOpen = true;
        print();
    }
    /** Closes its petals. */
    public void close() {
        isOpen = false;
        print();
    }
    void print() {
        System.out.println("=> The flower is now "+(this.isOpen?"open":"closed")+".");
    }
}