* @see org.xtreemfs.babudb.replication.transmission.dispatcher.Operation#
* processRequest(org.xtreemfs.babudb.replication.transmission.dispatcher.Request)
*/
@Override
public void processRequest(final Request rq) {
RangeLookup req = (RangeLookup) rq.getRequestMessage();
int limit = req.getFromLength();
ReusableBuffer data = rq.getData();
byte[] from = null;
byte[] to = null;
ReusableBuffer f = null;
ReusableBuffer t = null;
if (data != null) {
f = data.createViewBuffer();
f.limit(limit);
from = f.getData();
t = data.createViewBuffer();
t.position(limit);
to = t.getData();
}
Logging.logMessage(Logging.LEVEL_DEBUG, this, "RangeLookupReverseOperation:" +
"db %s, index %d, from %s, to %s.", req.getDatabaseName(), req.getIndexId(),
(from == null) ? "null" : new String(from), (to == null) ? "null" : new String(to));
try {
dbs.getDatabase(req.getDatabaseName()).reverseRangeLookup(req.getIndexId(),
from, to, null).registerListener(
new DatabaseRequestListener<ResultSet<byte[], byte[]>>() {
@Override
public void finished(ResultSet<byte[], byte[]> result, Object context) {