处理序列化对象成功后的处理

This commit is contained in:
ascrutae 2016-07-31 13:24:56 +08:00
parent ef98793f27
commit 682a4cc6f1
1 changed files with 19 additions and 2 deletions

View File

@ -12,10 +12,12 @@ import org.apache.logging.log4j.Logger;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class PersistenceThread extends Thread {
public class PersistenceThread extends Thread {
private Logger logger = LogManager.getLogger(PersistenceThread.class);
private File bufferFile = null;
@ -43,7 +45,7 @@ public class PersistenceThread extends Thread {
BufferFileReader bufferReader = new BufferFileReader(bufferFile, offset);
while (bufferReader.hasNext()) {
List<AbstractDataSerializable> serializableDataList = bufferReader.next();
//handleSpans(spans);
handleSpans(categorySerializableData(serializableDataList));
}
try {
@ -61,6 +63,21 @@ public class PersistenceThread extends Thread {
}
}
private Map<Integer, List<AbstractDataSerializable>> categorySerializableData(List<AbstractDataSerializable> serializableDataList) {
Map<Integer, List<AbstractDataSerializable>> result = new HashMap<Integer, List<AbstractDataSerializable>>();
for (AbstractDataSerializable serializableData : serializableDataList){
List<AbstractDataSerializable> specialTypeSerializableData = result.get(serializableData.getDataType());
if (specialTypeSerializableData == null){
specialTypeSerializableData = new ArrayList<AbstractDataSerializable>();
result.put(serializableData.getDataType(), specialTypeSerializableData);
}
specialTypeSerializableData.add(serializableData);
}
return result;
}
private int acquireOffset() {
int offset;
offset = MemoryRegister.instance().getOffSet(bufferFile.getName());