Package com.jbidwatcher.util.services

Source Code of com.jbidwatcher.util.services.ActivityMonitor

package com.jbidwatcher.util.services;

import com.jbidwatcher.util.LogProvider;
import com.jbidwatcher.util.queue.MessageQueue;
import com.jbidwatcher.util.queue.MQFactory;
import com.jbidwatcher.util.ScrollingBuffer;

import java.util.Date;

/**
* Created by IntelliJ IDEA.
* User: Morgan
* Date: Mar 9, 2008
* Time: 4:45:46 AM
*
* An activity monitor that stores recent activity (mostly status messages) in a fixed-size buffer.
*/
public class ActivityMonitor implements MessageQueue.Listener, LogProvider {
  private static final int MAX_BUFFER=4096;
  private ScrollingBuffer mBuffer;
  private static ActivityMonitor sInstance;

  public ActivityMonitor() {
    mBuffer = new ScrollingBuffer(MAX_BUFFER);
  }

  public StringBuffer getLog() {
    return mBuffer.getLog();
  }

  public void messageAction(Object deQ) {
    String msg = (String)deQ;
    Date logTime = new Date();

    mBuffer.addLog(logTime + ": " + msg);
  }

  public static ActivityMonitor getInstance() {
    return sInstance;
  }

  public static void start() {
    if(sInstance == null) MQFactory.getConcrete("activity").registerListener(sInstance = new ActivityMonitor());
  }
}
TOP

Related Classes of com.jbidwatcher.util.services.ActivityMonitor

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.