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

📄 viewfactory.java

📁 opennms得相关源码 请大家看看
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
            Map map = new HashMap();            while (iter.hasNext()) {                View view = (View) iter.next();                Membership membership = view.getMembership();                if (membership != null) {                    Collection memberColl = membership.getMemberCollection();                    if (memberColl != null) {                        Iterator iterMember = (Iterator) memberColl.iterator();                        while (iterMember != null && iterMember.hasNext()) {                            Member member = (Member) iterMember.next();                            if (member.getType().equals("user")) {                                String name = member.getContent();                                if (name.equals(oldName)) {                                    member.setContent(newName);                                }                            }                        }                    }                }                view.setMembership(membership);                map.put(view.getName(), view);            }            m_views.clear();            Views views = new Views();            views.setViewCollection((Collection) map.values());            saveViews(views);        }    }    /**     * When this method is called users name is changed. Also overwrites the     * "views.xml" file     */    /*     * public synchronized void renameGroup(String oldName, String newName)     * throws Exception {     *  // Check if the user exists if(oldName != null || !oldName.equals("")) { //     * Rename the group in the view. Enumeration viewKeys =     * (Enumeration)m_views.values(); View view;     * while(viewKeys.hasMoreElements()) { view =     * (View)m_views.get((String)viewKeys.nextElement()); Membership membership =     * view.getMembership(); Enumeration enummember =     * membership.enumerateMember(); while(enummember.hasMoreElements()) {     * Member member = (Member)enummember.nextElement();     * if(member.getContent().equals(oldName)) {     * if(member.getType().equals("group")) { membership.removeMember(member);     * member.setContent(newName); membership.addMember(member); break; } } } } }     * else { throw new Exception("ViewFactory:rename Invalid view name:" +     * oldName ); } // Saves into "views.xml" file Collection coll =     * (Collection) m_views.values(); Views views = new Views();     * views.setViewCollection(coll); saveViews(views); }     */    /**     * Removes the group from the list of groups. Then overwrites to the     * "views.xml"     */    /*     * public synchronized void deleteGroup(String name) throws Exception { //     * Check if the user exists if(name != null || !name.equals("")) { // Remove     * the user in the view. Enumeration viewKeys =     * (Enumeration)m_views.values(); View view;     * while(viewKeys.hasMoreElements()) { view =     * (View)m_views.get((String)viewKeys.nextElement()); Membership membership =     * view.getMembership(); Enumeration enummember =     * membership.enumerateMember(); while(enummember.hasMoreElements()) {     * Member member = (Member)enummember.nextElement();     * if(member.getContent().equals(name)) {     * if(member.getType().equals("group")) { membership.removeMember(member);     * break; } } } } } else { throw new Exception("ViewFactory:delete Invalid     * group name:" + name ); }     *  // Saves into "views.xml" file Collection coll = (Collection)     * m_views.values(); Views views = new Views();     * views.setViewCollection(coll); saveViews(views); }     */    /**     * When this method is called views name is changed. Also overwrites the     * "views.xml" file     */    public synchronized void renameView(String oldName, String newName) throws Exception {        View view;        // Check if the group exists        if (oldName != null || !oldName.equals("") || newName != "" || oldName != "") {            if (m_views.containsKey(oldName)) {                view = (View) m_views.get(oldName);                // Remove the view.                m_views.remove(oldName);                view.setName(newName);                m_views.put(newName, view);            } else                throw new Exception("ViewFactory:rename View doesnt exist:" + oldName);        } else {            throw new Exception("ViewFactory:rename Invalid view name:" + oldName);        }        // Saves into "views.xml" file        Collection coll = (Collection) m_views.values();        Views views = new Views();        views.setViewCollection(coll);        saveViews(views);    }    /**     * When this method is called view is to be deleted. Also overwrites the     * "views.xml" file     */    public synchronized void deleteView(String name) throws Exception {        // Check if the view exists        if (name == null || name.equals("")) {            throw new Exception("ViewFactory:deleteView  " + name);        } else if (!m_views.containsKey(name)) {            throw new Exception("ViewFactory:deleteView     View:" + name + " not found ");        } else {            m_views.remove(name);        }        // Saves into "views.xml" file        Views views = new Views();        Collection viewList = (Collection) m_views.values();        views.setViewCollection(viewList);        saveViews(views);    }    /**     */    public synchronized void saveViews(Views views) throws IOException, MarshalException, ValidationException {        // make a backup and save to xml        Viewinfo vinfo = new Viewinfo();        Header header = oldHeader;        vinfo.setViews(views);        header.setCreated(EventConstants.formatToString(new Date()));        vinfo.setHeader(header);        // Saves into "views.xml" file        //        File ofile = ConfigFileConstants.getFile(ConfigFileConstants.VIEWS_CONF_FILE_NAME);        // marshall to a string first, then write the string to the file. This        // way the original config        // isn't lost if the xml from the marshall is hosed.        StringWriter stringWriter = new StringWriter();        Marshaller.marshal(vinfo, stringWriter);        if (stringWriter.toString() != null) {            FileWriter fileWriter = new FileWriter(ofile);            fileWriter.write(stringWriter.toString());            fileWriter.flush();            fileWriter.close();        }        // clear out the internal structure and reload it        m_views.clear();        Enumeration en = views.enumerateView();        while (en.hasMoreElements()) {            View curView = (View) en.nextElement();            m_views.put(curView.getName(), curView);        }    }    /**     */    public String getCategoryComments(String viewName, String categoryName) {        View view = (View) m_views.get(viewName);        Categories categories = view.getCategories();        Collection category = (Collection) categories.getCategoryCollection();        Iterator iter = category.iterator();        org.opennms.netmgt.config.views.Category cat;        while (iter.hasNext()) {            cat = (org.opennms.netmgt.config.views.Category) iter.next();            String name = cat.getLabel();            if (name != null && name.equals(categoryName)) {                return stripWhiteSpace(cat.getCategoryComment());            }        }        return null;    }    private String stripWhiteSpace(String comment) {        StringBuffer buffer = new StringBuffer(comment);        try {            RE whiteSpaceRE = new RE("[:space:]");            for (int i = 0; i < buffer.length(); i++) {                int start = i;                int end = start + 1;                boolean foundWhiteSpace = false;                while (end < buffer.length() && whiteSpaceRE.match(buffer.substring(end - 1, end))) {                    foundWhiteSpace = true;                    end++;                }                if (foundWhiteSpace) {                    buffer.replace(start, end - 1, " ");                }            }        } catch (RESyntaxException e) {            return comment;        }        return buffer.toString();    }    /**     * Return a <code>Map</code> of usernames to user instances.     */    public View getView(String name) {        return (View) m_views.get(name);    }    /**     * Return a <code>Map</code> of usernames to user instances.     */    public Map getViews() {        return m_views;    }}

⌨️ 快捷键说明

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