Search in sources :

Example 1 with Header

use of org.opennms.netmgt.config.groups.Header in project opennms by OpenNMS.

the class GroupManager method saveGroups.

/**
     * <p>saveGroups</p>
     *
     * @throws java.lang.Exception if any.
     */
public synchronized void saveGroups() throws Exception {
    Header header = m_oldHeader;
    if (header != null)
        header.setCreated(EventConstants.formatToString(new Date()));
    final List<Group> groups = new ArrayList<>();
    for (final Group grp : m_groups.values()) {
        groups.add(grp);
    }
    final List<Role> roles = new ArrayList<>();
    for (final Role role : m_roles.values()) {
        roles.add(role);
    }
    Groupinfo groupinfo = new Groupinfo();
    groupinfo.setGroups(groups);
    groupinfo.setRoles(roles);
    groupinfo.setHeader(header);
    m_oldHeader = header;
    // marshal to a string first, then write the string to the file. This
    // way the original configuration
    // isn't lost if the XML from the marshal is hosed.
    StringWriter stringWriter = new StringWriter();
    JaxbUtils.marshal(groupinfo, stringWriter);
    String data = stringWriter.toString();
    saveXml(data);
}
Also used : Role(org.opennms.netmgt.config.groups.Role) Group(org.opennms.netmgt.config.groups.Group) OnmsGroup(org.opennms.netmgt.model.OnmsGroup) Header(org.opennms.netmgt.config.groups.Header) StringWriter(java.io.StringWriter) ArrayList(java.util.ArrayList) Groupinfo(org.opennms.netmgt.config.groups.Groupinfo) Date(java.util.Date)

Aggregations

StringWriter (java.io.StringWriter)1 ArrayList (java.util.ArrayList)1 Date (java.util.Date)1 Group (org.opennms.netmgt.config.groups.Group)1 Groupinfo (org.opennms.netmgt.config.groups.Groupinfo)1 Header (org.opennms.netmgt.config.groups.Header)1 Role (org.opennms.netmgt.config.groups.Role)1 OnmsGroup (org.opennms.netmgt.model.OnmsGroup)1