Uncle Bob's Agile Development Corner
OBSERVER—Evolving into a pattern, Part 2
by Robert C. Martin
Listing 12.

public class MockTimeSink implements Observer
    private int itsHours;
    private int itsMinutes;
    private int itsSeconds;
    private TimeSource itsSource;

    public MockTimeSink(TimeSource source)
        itsSource = source;

    public int getSeconds()
        return itsSeconds;

    public int getMinutes()
        return itsMinutes;

    public int getHours()
        return itsHours;

    public void update()
        itsHours = itsSource.getHours();
        itsMinutes = itsSource.getMinutes();
        itsSeconds = itsSource.getSeconds();

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


Upcoming Events


Sign up for our newsletter.

Terms and Privacy Policy consent

I agree to this site's Privacy Policy.