001 // Copyright 2006 Waterken Inc. under the terms of the MIT X license
002 // found at http://www.opensource.org/licenses/mit-license.html
003 package org.waterken.bang;
004
005 import org.ref_send.promise.Promise;
006
007 /**
008 * Something to bang on.
009 */
010 public interface
011 Drum {
012
013 /**
014 * Gets the number of hits.
015 */
016 Promise<Integer> getHits();
017
018 /**
019 * Bangs the drum.
020 * @param beats number of beats
021 * @return self reference
022 */
023 Drum bang(int beats);
024 }