001 package org.shiftone.jrat.core.spi;
002
003
004 import org.shiftone.jrat.core.shutdown.ShutdownListener;
005
006 import java.io.OutputStream;
007 import java.io.PrintWriter;
008 import java.io.Serializable;
009 import java.io.Writer;
010 import java.util.Properties;
011
012
013 /**
014 * @author jeff@shiftone.org (Jeff Drost)
015 */
016 public interface RuntimeContext {
017
018 void writeSerializable(String fileName, Serializable serializable);
019
020 OutputStream createOutputStream(String fileName);
021
022 PrintWriter createPrintWriter(String fileName);
023
024 Writer createWriter(String fileName);
025
026 void registerMBean(Object mbean);
027
028 void registerMBean(Object mbean, String objectNameText);
029
030 void register(Commandlet commandlet);
031
032 long uniqNumber();
033
034 void registerShutdownListener(ShutdownListener listener);
035
036 long getStartTimeMs();
037
038 Properties getSystemPropertiesAtStartup();
039
040 String getHostAddress();
041
042 String getHostName();
043 }