2018-11-20 18:39:48 +01:00
|
|
|
package org.warp.jcwdb;
|
|
|
|
|
|
|
|
public interface DBDataOutput<T> {
|
2018-11-21 01:02:25 +01:00
|
|
|
int getSize();
|
|
|
|
int getType();
|
2018-12-04 23:57:49 +01:00
|
|
|
long calculateHash();
|
2018-11-21 01:02:25 +01:00
|
|
|
DBWriter<T> getWriter();
|
2018-11-20 18:39:48 +01:00
|
|
|
|
2018-12-04 23:57:49 +01:00
|
|
|
static <T> DBDataOutput<T> create(DBWriter<T> writer, int type, int size, long hash) {
|
2018-11-20 18:39:48 +01:00
|
|
|
return new DBDataOutput<T>() {
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getSize() {
|
|
|
|
return size;
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
|
|
public int getType() {
|
|
|
|
return type;
|
|
|
|
}
|
2018-12-04 23:57:49 +01:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public long calculateHash() {
|
|
|
|
return hash;
|
|
|
|
}
|
2018-11-20 18:39:48 +01:00
|
|
|
|
|
|
|
@Override
|
|
|
|
public DBWriter<T> getWriter() {
|
|
|
|
return writer;
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|