package me.xhh.hector07;
import java.util.Date;
import java.util.List;
import me.prettyprint.hector.api.beans.HColumn;
/**
* Definition of super column family whose key, name and value are all String type.
*/
public class StringSuperColumnFamily extends SuperColumnFamily<String, String, String, String> {
public StringSuperColumnFamily(String columnFamilyName) {
super(columnFamilyName, DBUtil.STRING_SERIALIZER, DBUtil.STRING_SERIALIZER, DBUtil.STRING_SERIALIZER, DBUtil.STRING_SERIALIZER);
}
/**
* @param colName
* @param value
* @return
*/
public HColumn<String, String> createColumnDate(String colName, Date value) {
return createColumn(colName, String.valueOf(value.getTime()));
}
public HColumn<String, String> createColumnBool(String colName, Boolean value) {
return createColumn(colName.toString(), DBUtil.toString(value));
}
public HColumn<String, String> createColumnObject(String colName, Object value) {
String _value = value == null ? null : value.toString();
return createColumn(colName.toString(), _value);
}
public boolean addColumnObject(String name, Object value, List<HColumn<String, String>> columns) {
String _value = value == null ? null : value.toString();
return super.addColumn(name, _value, columns);
}
public boolean addColumnDate(String colName, Date value, List<HColumn<String, String>> columns) {
if (colName != null && value != null) {
columns.add(createColumnDate(colName, value));
return true;
} else {
return false;
}
}
public boolean addColumnBool(String colName, Boolean value, List<HColumn<String, String>> columns) {
if (colName != null && value != null) {
columns.add(createColumnBool(colName, value));
return true;
} else {
return false;
}
}
public boolean addColumnInteger(String colName, Integer value, List<HColumn<String, String>> columns) {
return addColumnObject(colName, value, columns);
}
public boolean addColumnLong(String colName, Long value, List<HColumn<String, String>> columns) {
return addColumnObject(colName, value, columns);
}
public boolean addColumnDouble(String colName, Double value, List<HColumn<String, String>> columns) {
return addColumnObject(colName, value, columns);
}
}