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

📄 node.java

📁 opennms得相关源码 请大家看看
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    public long getTotalWindow() {        return m_totalWindow;    }    /**     * Return the interfaces     *      * @return A list of interfaces.     */    public ArrayList getInterfaces() {        return m_interfaces;    }    /**     * Return the nodeid     *      * @return This node's id.     */    public int getNodeID() {        return m_nodeid;    }    /**     * Returns the service affected count.     *      * @return The number of affected services.     */    public int getServiceAffectCount() {        int count = 0;        ListIterator lstIter = m_interfaces.listIterator();        while (lstIter.hasNext()) {            Interface intf = (Interface) lstIter.next();            if (intf != null) {                count += intf.getServiceAffectCount();            }        }        return count;    }    /**     * Add Interface with interface name.     *      * @param intfname     *            interface name Checks if the interface with name intfname     *            exists. If not, adds a new interface with name intfname.     */    public void addInterface(String intfname) {        if (intfname == null)            return;        int ndx = m_interfaces.indexOf(InterfaceComparator.make(intfname));        if (ndx == -1) {            Interface intf = new Interface(intfname);            m_interfaces.add(intf);        }    }    /**     * Add an Interface with interface and service name.     *      * @param intfname     *            interface name     * @param service     *            service name Checks if the interface with name intfname     *            exists. If so, adds service to that interface. Otherwise, adds     *            a new interface with name intfname and service.     */    public void addInterface(String intfname, String service) {        if (intfname == null)            return;        int ndx = m_interfaces.indexOf(InterfaceComparator.make(intfname));        if (ndx != -1) {            Interface intf = (Interface) m_interfaces.get(ndx);            if (service != null)                intf.addService(service);            return;        }        Interface intf = new Interface(intfname);        if (service != null)            intf.addService(service);        m_interfaces.add(intf);    }    /**     * Add Interface with interface name, service id, lost time.     *      * @param intfname     *            Interface name     * @param service     *            Service name     * @param lost     *            Lost time Checks if the interface with name intfname exists.     *            If so, adds service to that interface. Otherwise, adds a new     *            interface with name intfname and service, and adds an outage     *            with losttime as lost.     */    public void addInterface(String intfname, String service, long lost) {        int ndx = m_interfaces.indexOf(InterfaceComparator.make(intfname));        if (ndx != -1) {            Interface intf = (Interface) m_interfaces.get(ndx);            if (service != null) {                intf.addService(service, lost);                m_hasOutage = true;            }            return;        }        Interface intf = new Interface(intfname);        if (service != null) {            intf.addService(service, lost);            m_hasOutage = true;        }        m_interfaces.add(intf);    }    /**     * Searches the list of interfaces and returns the interface object with     * name intfname.     *      * @return Interface with name intfname     */    public Interface getInterface(String intfname) {        if (intfname == null)            return null;        int ndx = m_interfaces.indexOf(InterfaceComparator.make(intfname));        if (ndx != -1) {            Interface intf = (Interface) m_interfaces.get(ndx);            return intf;        }        return null;    }    /**     * Adds Interface with interface name, service id, lost time, regained time.     *      * @param intfname     *            Interface name     * @param service     *            Service name     * @param lost     *            Lost time     * @param regained     *            Regained time. Checks if the interface with name intfname     *            exists. If so, adds service to that interface. Otherwise, adds     *            a new interface with name intfname and service, and adds an     *            outage with losttime as lost and regained time as regained.     */    public void addInterface(String intfname, String service, long lost, long regained) {        if (intfname == null)            return;        int ndx = m_interfaces.indexOf(InterfaceComparator.make(intfname));        if (ndx != -1) {            Interface intf = (Interface) m_interfaces.get(ndx);            intf.addService(service, lost, regained);            m_hasOutage = true;            return;        }        Interface intf = new Interface(intfname);        if (service != null) {            intf.addService(service, lost, regained);            m_hasOutage = true;        }        m_interfaces.add(intf);    }    /**     * Computes the availability of the node. The rolling window (in     * milliseconds)     *      * @param endTime     *            End Time of the rolling window in milliseconds.     * @return percentage availability of node for the last week.     */    public double getPercentAvail(long endTime, long rollingWindow) {        double percent = 0;        long outage = 0;        int serviceCount = 0;        if (m_interfaces != null && m_interfaces.size() > 0) {            ListIterator lstIter = m_interfaces.listIterator();            while (lstIter.hasNext()) {                Interface intf = (Interface) lstIter.next();                if (intf != null) {                    long down = intf.getDownTime(endTime, rollingWindow);                    if (down > 0)                        outage += down;                    serviceCount += intf.getServiceCount();                }            }        }        if (serviceCount > 0) {            m_downTime = outage;            m_totalWindow = rollingWindow * serviceCount;            m_serviceCount = serviceCount;            double denom = rollingWindow * serviceCount * 1.0d;            double num = 1.0d * outage;            percent = 100.0 * (1.0 - (num / denom));        } else            percent = 100.0;        m_percentAvail = percent;        return percent;    }    /**     * Get the outage for this node.     *      * @return The outage time.     */    public long getOutage(long endTime, long rollingWindow) {        double percent = 0;        long outage = 0;        int serviceCount = 0;        if (m_interfaces != null && m_interfaces.size() > 0) {            ListIterator lstIter = m_interfaces.listIterator();            while (lstIter.hasNext()) {                Interface intf = (Interface) lstIter.next();                if (intf != null) {                    long down = intf.getDownTime(endTime, rollingWindow);                    if (down > 0)                        outage += down;                    serviceCount += intf.getServiceCount();                }            }        }        if (serviceCount > 0) {            m_serviceCount = serviceCount;        }        return outage;    }    /**     * Returns the string that displays the Node/Interface/Service/Outages     * combinations.     *      * @return The string representation.     */    public String toString() {        StringBuffer retVal = new StringBuffer();        String nl = System.getProperty("line.separator");        retVal.append(nl).append(nl).append("Nodeid : ").append(getName()).append(nl).append("Interfaces");        ListIterator lstInterfaces = (ListIterator) m_interfaces.listIterator();        while (lstInterfaces.hasNext()) {            Interface intf = (Interface) lstInterfaces.next();            if (intf != null) {                retVal.append(nl).append("\t\t").append(intf.getName());                List services = intf.getServices();                ListIterator lstServices = (ListIterator) services.listIterator();                while (lstServices.hasNext()) {                    Service service = (Service) lstServices.next();                    retVal.append(nl).append("\t\t\t\t").append(service.getName());                    if (service != null) {                        retVal.append(nl).append("\t\t\t\t\t").append(service.getOutages());                    }                }            }        }        return retVal.toString();    }}

⌨️ 快捷键说明

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