package #package_name#;

import java.nio.ByteBuffer;
import java.util.List;

import org.apache.cassandra.cql3.functions.JavaUDF;

import com.datastax.driver.core.DataType;

public final class #class_name# extends JavaUDF
{
    public #class_name#(DataType returnDataType, DataType[] argDataTypes)
    {
        super(returnDataType, argDataTypes);
    }

    public ByteBuffer executeImpl(int protocolVersion, List<ByteBuffer> params)
    {
        #return_type# result = executeInternal(
#arguments#
        );
        return decompose(protocolVersion, result);
    }

    private #return_type# executeInternal(#argument_list#)
    {
#body#
    }
}
