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 }