switch(cmd.getAction()) {
case DatanodeProtocol.DNA_TRANSFER:
//
// Send a copy of a block to another datanode
//
BlockCommand bcmd = (BlockCommand)cmd;
transferBlocks(bcmd.getBlocks(), bcmd.getTargets());
break;
case DatanodeProtocol.DNA_INVALIDATE:
//
// Some local block(s) are obsolete and can be
// safely garbage-collected.