com.logicbus.kvalue.core.StringRow Maven / Gradle / Ivy
package com.logicbus.kvalue.core;
/**
* String类型的Row
*
* @author duanyy
*
*/
public interface StringRow extends KeyValueRow {
/**
* 设置字符串值
* @param value
*/
public boolean set(final String value);
/**
* 设置字符串值
*
* writeIfExist和writeifNotExist有下列组合:
* - (true,true) 只有该Row存在时才写入,如果Row不存在,操作不成功,但不会报错
* - (true,false) 同(true,true)
* - (false,true) 只有当该Row不存在时才写入,如果Row存在,操作不成功,但不会报错
* - (false,false) 无论该Row是否存在,都写入
*
* @param value
* @param ttl time to live
* @param writeIfExist 仅仅Row存在才写入
* @param writeifNotExist 仅仅Row不存在才写入
*/
public boolean set(final String value,final long ttl,final boolean writeIfExist,final boolean writeifNotExist);
/**
* 获取字符串值
* @param dftValue 缺省值
* @return 字符串值,当不存在或为空时返回缺省值
*/
public String get(final String dftValue);
/**
* 在指定的位置覆盖字符串
* @param offset
* @param value
* @return 修改之后的字符串长度
*/
public long setRange(final long offset,final String value);
/**
* 在当前值后面append指定的value
* @param value
*/
public long append(final String value);
/**
* 获取字符串长度
* @return 字符串长度
*/
public long strlen();
}