StreamLogger bug fix and added new line to JSONWriter flush function

This commit is contained in:
Ziver Koc 2015-10-22 15:50:19 +00:00
parent e9715298b6
commit f1e5e17d50
3 changed files with 18 additions and 24 deletions

View file

@ -42,12 +42,12 @@ public class InputStreamLogger extends InputStream implements StreamLogger.LogCa
} }
public int read(byte b[]) throws IOException { public int read(byte b[]) throws IOException {
int n = in.read(b); int n = in.read(b);
log.log(b, 0, b.length); log.log(b, 0, n);
return n; return n;
} }
public int read(byte b[], int off, int len) throws IOException { public int read(byte b[], int off, int len) throws IOException {
int n = in.read(b, off, len); int n = in.read(b, off, len);
log.log(b, off, len); log.log(b, off, n);
return n; return n;
} }
public long skip(long n) throws IOException { public long skip(long n) throws IOException {

View file

@ -30,7 +30,7 @@ public class StreamLogger {
protected void log(int n){ protected void log(int n){
if(n == DELIMETER) if(n < 0 || n == DELIMETER)
flushLog(); flushLog();
else else
buffer.append(n); buffer.append(n);
@ -38,33 +38,26 @@ public class StreamLogger {
flushLog(); flushLog();
} }
protected void log(byte[] b, int off, int len){ protected void log(byte[] b, int off, int len){
try { if (logger.isLoggable()) {
if (logger.isLoggable()) { for(int i=0; i<len; ++i){
for(int i=0; i<len; ++i){ if(b[off+i] == DELIMETER)
if(b[off+i] == DELIMETER){
buffer.append(new String(b, off, i, "UTF-8"));
flushLog();
off += i;
len -= i;
i = 0;
}
}
if(len > 0)
buffer.append(new String(b, off, len, "UTF-8"));
if(buffer.length() > MAX_BUFFER_SIZE)
flushLog(); flushLog();
else
buffer.append((char)b[off+i]);
} }
} catch (UnsupportedEncodingException e){ if(buffer.length() > MAX_BUFFER_SIZE)
e.printStackTrace(); flushLog();
} }
} }
protected void flushLog(){ protected void flushLog(){
if(prefix != null) if(buffer.length() > 0) {
logger.log(prefix + ": " + buffer.toString()); if (prefix != null)
else logger.log(prefix + ": " + buffer.toString());
logger.log(buffer.toString()); else
clearLog(); logger.log(buffer.toString());
clearLog();
}
} }
protected void clearLog(){ protected void clearLog(){
buffer.delete(0, buffer.length()); buffer.delete(0, buffer.length());

View file

@ -144,6 +144,7 @@ public class JSONWriter{
} }
public void flush(){ public void flush(){
out.print("\n");
out.flush(); out.flush();
} }
} }