1234567891011121314151617181920212223242526272829303132333435363738 |
- package at.acdp.urweb.sclient;
- import at.acdp.urweb.sclient.data.ILogentry;
- import java.util.ArrayList;
- import java.util.Arrays;
- public class Log {
- private final static int LENGTH=100;
- private static ILogentry[] list=new ILogentry[LENGTH];
- private static int pos=0;
- public static void add(ILogentry le) {
- synchronized (list) {
- list[pos++%LENGTH]=le;
- }
- }
- public static void get(int from) {
- synchronized (list){
- int length=LENGTH-from+pos;
- ILogentry[] ret=new ILogentry[length];
- int upperPos=from+length;
- if(upperPos>LENGTH){
- int lowerLength=upperPos-LENGTH;
- upperPos=LENGTH;
- System.arraycopy(list,0,ret,0,lowerLength);
- }
- System.arraycopy(list,from,ret,0,upperPos-from);
- }
- }
- }
|