⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jettycontainer.java

📁 Sequoia ERP是一个真正的企业级开源ERP解决方案。它提供的模块包括:电子商务应用(e-commerce), POS系统(point of sales),知识管理,存货与仓库管理
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
                        listener.setIdentifyListener(identifyListener);                    }                    if (props.getProperty("buffer-size") != null) {                        int value = 0;                        try {                            value = Integer.parseInt(props.getProperty("buffer-size").value);                        } catch (NumberFormatException e) {                            value = 0;                        }                        if (value > 0) {                            listener.setBufferSize(value);                        }                    }                    server.addListener(listener);                }            } else if ("request-log".equals(props.value)) {                NCSARequestLog rl = new NCSARequestLog();                if (props.getProperty("filename") != null) {                    rl.setFilename(props.getProperty("filename").value);                }                if (props.getProperty("append") != null) {                    rl.setAppend("true".equalsIgnoreCase(props.getProperty("append").value));                }                if (props.getProperty("buffered") != null) {                    rl.setBuffered("true".equalsIgnoreCase(props.getProperty("buffered").value));                }                if (props.getProperty("extended") != null) {                    rl.setExtended("true".equalsIgnoreCase(props.getProperty("extended").value));                }                if (props.getProperty("timezone") != null) {                    rl.setLogTimeZone(props.getProperty("timezone").value);                }                if (props.getProperty("date-format") != null) {                    rl.setLogDateFormat(props.getProperty("date-format").value);                }                if (props.getProperty("retain-days") != null) {                    int days = 90;                    try {                        days = Integer.parseInt(props.getProperty("retain-days").value);                    } catch (NumberFormatException e) {                        days = 90;                    }                    rl.setRetainDays(days);                }                server.setRequestLog(rl);            }        }        return server;    }    private void setListenerOptions(ThreadedServer listener, ContainerConfig.Container.Property listenerProps) throws ContainerException {        String systemHost = null;        if ("default".equals(listenerProps.getProperty("type").value)) {            systemHost = System.getProperty(listenerProps.name + ".host");        }        if (listenerProps.getProperty("host") != null && systemHost == null) {            try {                listener.setHost(listenerProps.getProperty("host").value);            } catch (UnknownHostException e) {                throw new ContainerException(e);            }        } else {            String host = "0.0.0.0";            if (systemHost != null) {                host = systemHost;            }            try {                listener.setHost(host);            } catch (UnknownHostException e) {                throw new ContainerException(e);            }        }        String systemPort = null;        if ("default".equals(listenerProps.getProperty("type").value)) {            systemPort = System.getProperty(listenerProps.name + ".port");        }        if (listenerProps.getProperty("port") != null && systemPort == null) {            int value = 8080;            try {                value = Integer.parseInt(listenerProps.getProperty("port").value);            } catch (NumberFormatException e) {                value = 8080;            }            if (value == 0) value = 8080;            listener.setPort(value);        } else {            int port = 8080;            if (systemPort != null) {                try {                    port = Integer.parseInt(systemPort);                } catch (NumberFormatException e) {                    port = 8080;                }            }            listener.setPort(port);        }        if (listenerProps.getProperty("min-threads") != null) {            int value = 0;            try {                value = Integer.parseInt(listenerProps.getProperty("min-threads").value);            } catch (NumberFormatException e) {                value = 0;            }            if (value > 0) {                listener.setMinThreads(value);            }        }        if (listenerProps.getProperty("max-threads") != null) {            int value = 0;            try {                value = Integer.parseInt(listenerProps.getProperty("max-threads").value);            } catch (NumberFormatException e) {                value = 0;            }            if (value > 0) {                listener.setMaxThreads(value);            }        }        if (listenerProps.getProperty("max-idle-time") != null) {            int value = 0;            try {                value = Integer.parseInt(listenerProps.getProperty("max-idle-time").value);            } catch (NumberFormatException e) {                value = 0;            }            if (value > 0) {                listener.setMaxIdleTimeMs(value);            }        }        if (listenerProps.getProperty("linger-time") != null) {            int value = 0;            try {                value = Integer.parseInt(listenerProps.getProperty("linger-time").value);            } catch (NumberFormatException e) {                value = 0;            }            if (value > 0) {                listener.setLingerTimeSecs(value);            }        }    }    /**     * @see org.ofbiz.base.container.Container#start()     */    public boolean start() throws ContainerException {        // start the server(s)        this.initJetty();        if (servers != null) {            Iterator i = servers.values().iterator();            while (i.hasNext()) {                Server server = (Server) i.next();                try {                    server.start();                } catch (MultiException e) {                    Debug.logError(e, "Jetty Server Multi-Exception", module);                    throw new ContainerException(e);                }            }        }        return true;    }    /**     * @see org.ofbiz.base.container.Container#stop()     */    public void stop() throws ContainerException {        if (servers != null) {            Iterator i = servers.values().iterator();            while(i.hasNext()) {                Server server = (Server) i.next();                try {                    server.stop();                } catch (InterruptedException e) {                    Debug.logWarning(e, module);                }            }        }    }}// taken from JettyPlusclass Log4jSink implements LogSink {    private String _options;    private transient boolean _started;    public void setOptions(String filename) {        _options=filename;    }    public String getOptions() {        return _options;    }    public void start() throws Exception {        _started=true;    }    public void stop() {        _started=false;    }    public boolean isStarted() {        return _started;    }    public void log(String tag, Object msg, Frame frame, long time) {        String method = frame.getMethod();        int lb = method.indexOf('(');        int ld = (lb > 0) ? method.lastIndexOf('.', lb) : method.lastIndexOf('.');        if (ld < 0) ld = lb;        String class_name = (ld > 0) ? method.substring(0,ld) : method;        Logger log = Logger.getLogger(class_name);        Priority priority = Priority.INFO;        if (Log.DEBUG.equals(tag)) {            priority = Priority.DEBUG;        } else if (Log.WARN.equals(tag) || Log.ASSERT.equals(tag)) {            priority = Priority.ERROR;        } else if (Log.FAIL.equals(tag)) {            priority = Priority.FATAL;        }        if (!log.isEnabledFor(priority)) {            return;        }        log.log(Log4jSink.class.getName(), priority, "" + msg, null);    }    public synchronized void log(String s) {        Logger.getRootLogger().log("jetty.log4jSink", Priority.INFO, s, null);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -