Project

General

Profile

1
package eu.dnetlib.data.hadoop.hbase;
2

    
3
import java.util.List;
4

    
5
import org.apache.hadoop.hbase.client.Delete;
6
import org.apache.hadoop.hbase.client.Mutation;
7
import org.apache.hadoop.hbase.util.Bytes;
8

    
9
import eu.dnetlib.data.transform.Column;
10
import eu.dnetlib.data.transform.Row;
11

    
12
/**
13
 * The Class HBaseDeleteFeeder performs a batch of Delete operations.
14
 */
15
public class HBaseDeleteFeeder extends HbaseTableFeeder {
16

    
17
	/*
18
	 * (non-Javadoc)
19
	 * 
20
	 * @see eu.dnetlib.data.hadoop.hbase.HbaseTableFeeder#addOperation(java.util.List, eu.dnetlib.data.transform.Row)
21
	 */
22
	@Override
23
	protected void addOperation(final List<Mutation> buffer, final Row row) {
24
		final Delete delete = new Delete(Bytes.toBytes(row.getKey()));
25
		delete.setWriteToWAL(false);
26

    
27
		for (final Column<String, byte[]> col : row) {
28
			delete.deleteColumns(Bytes.toBytes(row.getColumnFamily()), Bytes.toBytes(col.getName()));
29

    
30
		}
31

    
32
		buffer.add(delete);
33
	}
34

    
35
}
(2-2/4)