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    }