class KeyValueValueListOutput<K, V> extends CommandOutput<K, V, KeyValue<K, List<V>>> {

    private K key;

    private boolean hasKey;

    private List<V> values = Collections.emptyList();

    public KeyValueValueListOutput(RedisCodec<K, V> codec) {
        super(codec, null);
    }

    @Override
    public void set(ByteBuffer bytes) {<FILL_FUNCTION_BODY>}

    @Override
    public void multi(int count) {
        values = OutputFactory.newList(count);
    }

    @Override
    public void complete(int depth) {
        if (depth == 0 && hasKey) {
            output = KeyValue.just(key, values);
        }
    }

}


        if (bytes != null) {
            if (!hasKey) {
                key = codec.decodeKey(bytes);
                hasKey = true;
            } else {
                V value = codec.decodeValue(bytes);
                values.add(value);
            }
        }
    
<methods>public void <init>(RedisCodec<K,V>, KeyValue<K,List<V>>) ,public void complete(int) ,public KeyValue<K,List<V>> get() ,public java.lang.String getError() ,public boolean hasError() ,public void multi(int) ,public void multiArray(int) ,public void multiMap(int) ,public void multiPush(int) ,public void multiSet(int) ,public void set(java.nio.ByteBuffer) ,public void set(long) ,public void set(double) ,public void set(boolean) ,public void setBigNumber(java.nio.ByteBuffer) ,public void setError(java.nio.ByteBuffer) ,public void setError(java.lang.String) ,public void setSingle(java.nio.ByteBuffer) ,public java.lang.String toString() <variables>protected final non-sealed RedisCodec<K,V> codec,protected java.lang.String error,protected KeyValue<K,List<V>> output