merged Multiline capability

This commit is contained in:
dsteger
2016-09-18 21:49:52 +02:00
parent 13abc67ba4
commit 41d973bfba
14 changed files with 1975 additions and 75 deletions

View File

@@ -17,10 +17,14 @@ package info.fetter.logstashforwarder;
*
*/
import info.fetter.logstashforwarder.util.RandomAccessFile;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;
//import java.io.RandomAccessFile;
import org.apache.commons.lang.builder.ToStringBuilder;
@@ -49,10 +53,10 @@ public class FileState {
private FileState oldFileState;
@JsonIgnore
private Event fields;
@JsonIgnore
private Multiline multiline;
@JsonIgnore
private byte[] bufferedLines = null;
@JsonIgnore
private Multiline multiline;
@JsonIgnore
private boolean matchedToNewFile = false;
public FileState() {
}
@@ -61,7 +65,7 @@ public class FileState {
this.file = file;
directory = file.getCanonicalFile().getParent();
fileName = file.getName();
randomAccessFile = new RandomAccessFile(file, "r");
randomAccessFile = new RandomAccessFile(file.getPath(), "r");
lastModified = file.lastModified();
size = file.length();
}
@@ -161,6 +165,7 @@ public class FileState {
public void setOldFileState(FileState oldFileState) {
this.oldFileState = oldFileState;
oldFileState.setMatchedToNewFile(true);
}
public void deleteOldFileState() {
@@ -177,22 +182,23 @@ public class FileState {
public void setFields(Event fields) {
this.fields = fields;
}
public Multiline getMultiline() {
return multiline;
}
public void setMultiline(Multiline multiline) {
this.multiline = multiline;
}
public Multiline getMultiline() {
return multiline;
}
public void setMultiline(Multiline multiline) {
this.multiline = multiline;
}
public byte[] getBufferedLines() {
return bufferedLines;
}
public void setBufferedLines(byte[] bufferedLines) {
this.bufferedLines = bufferedLines;
}
public boolean isMatchedToNewFile() {
return matchedToNewFile;
}
public void setMatchedToNewFile(boolean matchedToNewFile) {
this.matchedToNewFile = matchedToNewFile;
}
@Override
public String toString() {