Project

General

Profile

1
package eu.dnetlib.dhp.wf.importer;
2

    
3
import java.io.IOException;
4

    
5
import org.apache.avro.file.DataFileWriter;
6

    
7
/**
8
 * {@link DataFileWriter} based record receiver with counter of
9
 * received records.
10
 * 
11
 * @author madryk
12
 */
13
public class DataFileRecordReceiverWithCounter<T> extends DataFileRecordReceiver<T> {
14

    
15
    private long receivedCount = 0L;
16
    
17
    
18
    //------------------------ CONSTRUCTORS --------------------------
19
    
20
    /**
21
     * Default constructor
22
     * 
23
     * @param writer - writer of the received records
24
     */
25
    public DataFileRecordReceiverWithCounter(DataFileWriter<T> writer) {
26
        super(writer);
27
    }
28
    
29
    
30
    //------------------------ GETTERS --------------------------
31
    
32
    /**
33
     * Returns number of received records
34
     */
35
    public long getReceivedCount() {
36
        return receivedCount;
37
    }
38
    
39
    
40
    //------------------------ LOGIC --------------------------
41
    
42
    /**
43
     * Receives passed record and increments the counter.
44
     */
45
    @Override
46
    public void receive(T record) throws IOException {
47
        super.receive(record);
48
        ++receivedCount;
49
    }
50
}
(2-2/4)