package me.prettyprint.cassandra.service.template; import java.nio.ByteBuffer; import java.util.Collection; import java.util.Date; import java.util.Iterator; import java.util.UUID; import me.prettyprint.hector.api.ResultStatus; import me.prettyprint.hector.api.beans.HColumn; /** * A common interface for access to the resuls of a query of either a standard or super column family. * There are different implementations of this which hide the differences requires of standar/super * column families. As this interface inherits from {@link ResultStatus}, results will also provide * execution details. * * @author david * @author zznate * @param <K> * @param <N> */ public interface ColumnFamilyResult<K, N> extends Iterator<ColumnFamilyResult<K,N>>,ResultStatus { K getKey(); UUID getUUID(N columnName); String getString(N columnName); Long getLong(N columnName); Integer getInteger(N columnName); Float getFloat(N columnName); Double getDouble(N columnName); Boolean getBoolean(N columnName); byte[] getByteArray(N columnName); Date getDate(N columnName); Collection<N> getColumnNames(); HColumn<N,ByteBuffer> getColumn(N columnName); boolean hasResults(); }