Buggy code:
@ Override public Boolean getbit ( final String key , final long offset ) { } @ Override public Long setrange ( final String key , final long offset , final String value ) { } @ Override public String getrange ( final String key , final long startOffset , final long endOffset ) { } @ Override public String getSet ( final String key , final String value ) { } @ Override public Long setnx ( final String key , final String value ) { } @ Override public String setex ( final String key , final int seconds , final String value ) { } @ Override public Long decrBy ( final String key , final long integer ) { } @ Override public Long decr ( final String key ) { } @ Override public Long incrBy ( final String key , final long integer ) { } @ Override public Double incrByFloat ( final String key , final double value ) { } @ Override public Long incr ( final String key ) { } @ Override public Long append ( final String key , final String value ) { } @ Override public String substr ( final String key , final int start , final int end ) { } @ Override public Long hset ( final String key , final String field , final String value ) { } @ Override public String hget ( final String key , final String field ) { } @ Override public Long hsetnx ( final String key , final String field , final String value ) { } @ Override public String hmset ( final String key , final Map < String , String > hash ) { } @ Override public List < String > hmget ( final String key , final String ... fields ) { } @ Override public Long hincrBy ( final String key , final String field , final long value ) { } @ Override public Boolean hexists ( final String key , final String field ) { } @ Override public Long hdel ( final String key , final String ... field ) { } @ Override public Long hlen ( final String key ) { } @ Override public Set < String > hkeys ( final String key ) { } @ Override public List < String > hvals ( final String key ) { } @ Override public Map < String , String > hgetAll ( final String key ) { } @ Override public Long rpush ( final String key , final String ... string ) { } @ Override public Long lpush ( final String key , final String ... string ) { } @ Override public Long llen ( final String key ) { } @ Override public List < String > lrange ( final String key , final long start , final long end ) { } @ Override public String ltrim ( final String key , final long start , final long end ) { } @ Override public String lindex ( final String key , final long index ) { } @ Override public String lset ( final String key , final long index , final String value ) { } @ Override public Long lrem ( final String key , final long count , final String value ) { } @ Override public String lpop ( final String key ) { } @ Override public String rpop ( final String key ) { } @ Override public Long sadd ( final String key , final String ... member ) { } @ Override public Set < String > smembers ( final String key ) { } @ Override public Long srem ( final String key , final String ... member ) { } @ Override public String spop ( final String key ) { } @ Override public Set < String > spop ( final String key , final long count ) { <START_BUG> return new JedisClusterCommand < Set < String > > ( connectionHandler , timeout , maxRedirections ) { <END_BUG> @ Override public Set < String > execute ( Jedis connection ) { return connection . spop ( key , count ) ; } } . run ( key ) ; } @ Override public Long scard ( final String key ) { } @ Override public Boolean sismember ( final String key , final String member ) { } @ Override public String srandmember ( final String key ) { } @ Override public List < String > srandmember ( final String key , final int count ) { } @ Override public Long strlen ( final String key ) { } @ Override public Long zadd ( final String key , final double score , final String member ) { } @ Override public Long zadd ( final String key , final Map < String , Double > scoreMembers ) { } @ Override public Set < String > zrange ( final String key , final long start , final long end ) { } @ Override public Long zrem ( final String key , final String ... member ) { } @ Override public Double zincrby ( final String key , final double score , final String member ) { } @ Override public Long zrank ( final String key , final String member ) { } @ Override public Long zrevrank ( final String key , final String member ) { } @ Override public Set < String > zrevrange ( final String key , final long start , final long end ) { } @ Override public Set < Tuple > zrangeWithScores ( final String key , final long start , final long end ) { } @ Override public Set < Tuple > zrevrangeWithScores ( final String key , final long start , final long end ) { }

Fix:
return new JedisClusterCommand < Set < String > > ( connectionHandler , maxRedirections ) {