001    // Copyright 2010 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.pipelined;
004    
005    import java.io.Serializable;
006    
007    import org.joe_e.Struct;
008    
009    /**
010     * A {@link PlugNPlay} maker.
011     */
012    public final class PlugNPlayMaker {
013        private PlugNPlayMaker() {}
014        
015        static public PlugNPlay
016        make() {
017            class PlugNPlayX extends Struct implements PlugNPlay, Serializable {
018                static private final long serialVersionUID = 1L;
019    
020                public PlugNPlayX
021                play() { return this; }
022    
023                public PlugNPlayX
024                plug(final PlugNPlay player) { return (PlugNPlayX)player; }
025            }
026            return new PlugNPlayX();
027        }
028    }