use of org.opennms.netmgt.config.groups.Groupinfo in project opennms by OpenNMS.
the class GroupManager method parseXml.
/**
* <p>parseXml</p>
*
* @param stream a {@link java.io.InputStream} object.
* @throws IOException
*/
protected synchronized void parseXml(InputStream stream) throws IOException {
try (final InputStreamReader isr = new InputStreamReader(stream)) {
Groupinfo groupinfo = JaxbUtils.unmarshal(Groupinfo.class, isr);
initializeGroupsAndRoles(groupinfo);
}
}
use of org.opennms.netmgt.config.groups.Groupinfo 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);
}
Aggregations