1package com.sleepycat.util; 2 3public class ErrorBuffer { 4 String[] msgs; 5 int first, current; 6 7 public ErrorBuffer(int num_msg) { 8 msgs = new String[num_msg]; 9 clear(); 10 } 11 12 public void append(String msg) { 13 msgs[current] = msg; 14 current = (current + 1) % msgs.length; 15 if (current == first) 16 first = (first + 1) % msgs.length; 17 } 18 19 public String get() { 20 StringBuffer buf = new StringBuffer(); 21 for (int i = first; i != current; i = (i + 1) % msgs.length) { 22 buf.append(msgs[i]); 23 if ((i + 1) % msgs.length != current) 24 buf.append("\n"); 25 } 26 return buf.toString(); 27 } 28 29 public void clear() { 30 current = first = 0; 31 } 32} 33 34