MockTimeSource.java

Uncle Bob's Agile Development Corner
Observer—Evolving into a pattern, Part 1
by Robert C. Martin
Listing 15. MockTimeSource.java.


import java.util.*;

public class MockTimeSource implements TimeSource
{
    private Vector itsObservers = new Vector();

    public void setTime(int hours, int minutes, int seconds)
    {
        Iterator i = itsObservers.iterator();
        while (i.hasNext())
        {
            ClockObserver observer = (ClockObserver) i.next();
            observer.update(hours, minutes, seconds);
        }
    }

    public void registerObserver(ClockObserver observer)
    {
      itsObservers.add(observer);
  }
}

About the Author

Robert C. Martin is president of Object Mentor Inc., a firm that offers high-level, OO software design consulting, training, and development services. He is the author of Designing Object Oriented C++ Applications Using the Booch Method. He can be contacted at [email protected].