1 4 package org.oddjob.jmx.server; 5 6 import org.oddjob.OJConstants; 7 import org.oddjob.arooa.Lifecycle; 8 import org.oddjob.arooa.registry.ComponentRegistry; 9 import org.oddjob.logging.ConsoleArchiver; 10 import org.oddjob.logging.LocalConsoleArchiver; 11 import org.oddjob.logging.Log4jArchiver; 12 import org.oddjob.logging.LogArchiver; 13 import org.oddjob.util.ThreadManager; 14 15 20 public class ServerModel { 21 22 private final ThreadManager threadManager; 23 private final InterfaceManagerFactory imf; 24 private final String url; 25 26 27 private Object root; 28 29 private ComponentRegistry componentRegistry; 30 private LogArchiver logArchiver; 31 private ConsoleArchiver consoleArchiver; 32 33 private String logFormat; 34 35 39 public ServerModel(String url, 40 ThreadManager threadManager, 41 InterfaceManagerFactory imf) { 42 43 this.url = url; 44 this.threadManager = threadManager; 45 this.imf = imf; 46 } 47 48 54 public void setRoot(Object root) { 55 this.root = root; 56 57 logArchiver = new Log4jArchiver(root, 58 logFormat == null ? OJConstants.DEFAULT_LOG_FORMAT : logFormat); 59 consoleArchiver = new LocalConsoleArchiver(root); 60 61 } 62 63 68 public Object getRoot() { 69 return root; 70 } 71 72 75 public String getUrl() { 76 return url; 77 } 78 79 82 public ThreadManager getThreadManager() { 83 return threadManager; 84 } 85 86 90 public InterfaceManagerFactory getInterfaceManagerFactory() { 91 return imf; 92 } 93 94 99 public LogArchiver getLogArchiver() { 100 return logArchiver; 101 } 102 103 108 public ConsoleArchiver getConsoleArchiver() { 109 return consoleArchiver; 110 } 111 112 117 public ComponentRegistry getComponentRegistry() { 118 if (componentRegistry == null) { 119 componentRegistry = new ComponentRegistry(); 120 } 121 return componentRegistry; 122 } 123 124 129 public void setComponentRegistry(ComponentRegistry componentRegistry) { 130 this.componentRegistry = componentRegistry; 131 } 132 133 138 public String getLogFormat() { 139 return logFormat; 140 } 141 142 147 public void setLogFormat(String logFormat) { 148 this.logFormat = logFormat; 149 } 150 151 154 public void destroy() { 155 Lifecycle.destroy(consoleArchiver); 156 consoleArchiver = null; 157 Lifecycle.destroy(logArchiver); 158 logArchiver = null; 159 root = null; 160 } 161 } 162 | Popular Tags |