private void merge(ConfigurationChanges diffs, WebApplication prev, WebApplication webapp, String deviceDN) throws NamingException { String webappDN = webappDN(webapp.getApplicationName(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, webappDN, ConfigurationChanges.ChangeType.U); modifyAttributes(webappDN, storeDiffs(ldapObj, prev, webapp, deviceDN, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); }
private void merge(ConfigurationChanges diffs, WebApplication prev, WebApplication webapp, String deviceDN) throws NamingException { String webappDN = webappDN(webapp.getApplicationName(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, webappDN, ConfigurationChanges.ChangeType.U); modifyAttributes(webappDN, storeDiffs(ldapObj, prev, webapp, deviceDN, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); }
private void merge(ConfigurationChanges diffs, ApplicationEntity prev, ApplicationEntity ae, String deviceDN, boolean preserveVendorData) throws NamingException { String aeDN = aetDN(ae.getAETitle(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, aeDN, ConfigurationChanges.ChangeType.U); modifyAttributes(aeDN, storeDiffs(ldapObj, prev, ae, deviceDN, new ArrayList<ModificationItem>(), preserveVendorData)); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); mergeChilds(diffs, prev, ae, aeDN); }
public void merge(ConfigurationChanges diffs, Map<String,BasicBulkDataDescriptor> prevs, Map<String,BasicBulkDataDescriptor> descriptors, String parentDN) throws NamingException { for (String prevBulkDataDescriptorID : prevs.keySet()) { if (!descriptors.containsKey(prevBulkDataDescriptorID)) { String dn = LdapUtils.dnOf("dcmBulkDataDescriptorID", prevBulkDataDescriptorID, parentDN); destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (Map.Entry<String, BasicBulkDataDescriptor> entry : descriptors.entrySet()) { String dn = LdapUtils.dnOf("dcmBulkDataDescriptorID", entry.getKey(), parentDN); BasicBulkDataDescriptor prev = prevs.get(entry.getKey()); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ldapObj, prev, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, entry.getValue(), new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
private void merge(ConfigurationChanges diffs, ApplicationEntity prev, ApplicationEntity ae, String deviceDN, boolean preserveVendorData) throws NamingException { String aeDN = aetDN(ae.getAETitle(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, aeDN, ConfigurationChanges.ChangeType.U); modifyAttributes(aeDN, storeDiffs(ldapObj, prev, ae, deviceDN, new ArrayList<ModificationItem>(), preserveVendorData)); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); mergeChilds(diffs, prev, ae, aeDN); }
public void merge(ConfigurationChanges diffs, Map<String,BasicBulkDataDescriptor> prevs, Map<String,BasicBulkDataDescriptor> descriptors, String parentDN) throws NamingException { for (String prevBulkDataDescriptorID : prevs.keySet()) { if (!descriptors.containsKey(prevBulkDataDescriptorID)) { String dn = LdapUtils.dnOf("dcmBulkDataDescriptorID", prevBulkDataDescriptorID, parentDN); destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (Map.Entry<String, BasicBulkDataDescriptor> entry : descriptors.entrySet()) { String dn = LdapUtils.dnOf("dcmBulkDataDescriptorID", entry.getKey(), parentDN); BasicBulkDataDescriptor prev = prevs.get(entry.getKey()); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ldapObj, prev, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, entry.getValue(), new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
ConfigurationChanges.addModifiedObject(diffs, deviceDN, ConfigurationChanges.ChangeType.U); modifyAttributes(deviceDN, storeDiffs(ldapObj, prev, device, new ArrayList<ModificationItem>(), preserveVendorData)); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); mergeChilds(diffs, prev, device, deviceDN, preserveVendorData);
ConfigurationChanges.addModifiedObject(diffs, deviceDN, ConfigurationChanges.ChangeType.U); modifyAttributes(deviceDN, storeDiffs(ldapObj, prev, device, new ArrayList<ModificationItem>(), preserveVendorData)); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); mergeChilds(diffs, prev, device, deviceDN, preserveVendorData);
private List<ModificationItem> storeDiffs(ConfigurationChanges.ModifiedObject ldapObj, TransferCapability a, TransferCapability b, List<ModificationItem> mods) { LdapUtils.storeDiffObject(ldapObj, mods, "dicomSOPClass", a.getSopClass(), b.getSopClass(), null); LdapUtils.storeDiffObject(ldapObj, mods, "dicomTransferRole", a.getRole(), b.getRole(), null); LdapUtils.storeDiff(ldapObj, mods, "dicomTransferSyntax", a.getTransferSyntaxes(), b.getTransferSyntaxes()); if (!extended) return mods; LdapUtils.storeDiffWithOrdinalPrefix(ldapObj, mods, "dcmPreferredTransferSyntax", a.getPreferredTransferSyntaxes(), b.getPreferredTransferSyntaxes()); storeDiffs(ldapObj, a.getQueryOptions(), b.getQueryOptions(), mods); storeDiffs(ldapObj, a.getStorageOptions(), b.getStorageOptions(), mods); return mods; }
private List<ModificationItem> storeDiffs(ConfigurationChanges.ModifiedObject ldapObj, TransferCapability a, TransferCapability b, List<ModificationItem> mods) { LdapUtils.storeDiffObject(ldapObj, mods, "dicomSOPClass", a.getSopClass(), b.getSopClass(), null); LdapUtils.storeDiffObject(ldapObj, mods, "dicomTransferRole", a.getRole(), b.getRole(), null); LdapUtils.storeDiff(ldapObj, mods, "dicomTransferSyntax", a.getTransferSyntaxes(), b.getTransferSyntaxes()); if (!extended) return mods; LdapUtils.storeDiffWithOrdinalPrefix(ldapObj, mods, "dcmPreferredTransferSyntax", a.getPreferredTransferSyntaxes(), b.getPreferredTransferSyntaxes()); storeDiffs(ldapObj, a.getQueryOptions(), b.getQueryOptions(), mods); storeDiffs(ldapObj, a.getStorageOptions(), b.getStorageOptions(), mods); return mods; }
private void merge(ConfigurationChanges diffs, Collection<TransferCapability> prevs, Collection<TransferCapability> tcs, String aeDN) throws NamingException { for (TransferCapability tc : prevs) { String dn = dnOf(tc, aeDN); if (findByDN(aeDN, tcs, dn) == null) { destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (TransferCapability tc : tcs) { String dn = dnOf(tc, aeDN); TransferCapability prev = findByDN(aeDN, prevs, dn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), tc, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, tc, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
private void merge(ConfigurationChanges diffs, Collection<TransferCapability> prevs, Collection<TransferCapability> tcs, String aeDN) throws NamingException { for (TransferCapability tc : prevs) { String dn = dnOf(tc, aeDN); if (findByDN(aeDN, tcs, dn) == null) { destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (TransferCapability tc : tcs) { String dn = dnOf(tc, aeDN); TransferCapability prev = findByDN(aeDN, prevs, dn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), tc, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, tc, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
public void merge(ConfigurationChanges diffs, AttributeCoercions prevs, AttributeCoercions acs, String parentDN) throws NamingException { for (AttributeCoercion prev : prevs) { String cn = prev.getCommonName(); if (acs.findByCommonName(cn) == null) { String dn = LdapUtils.dnOf("cn", cn, parentDN); destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (AttributeCoercion ac : acs) { String cn = ac.getCommonName(); String dn = LdapUtils.dnOf("cn", cn, parentDN); AttributeCoercion prev = prevs.findByCommonName(cn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ac, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, ac, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
public void merge(ConfigurationChanges diffs, AttributeCoercions prevs, AttributeCoercions acs, String parentDN) throws NamingException { for (AttributeCoercion prev : prevs) { String cn = prev.getCommonName(); if (acs.findByCommonName(cn) == null) { String dn = LdapUtils.dnOf("cn", cn, parentDN); destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (AttributeCoercion ac : acs) { String cn = ac.getCommonName(); String dn = LdapUtils.dnOf("cn", cn, parentDN); AttributeCoercion prev = prevs.findByCommonName(cn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ac, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, ac, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
private void mergeConnections(ConfigurationChanges diffs, Device prevDev, Device device, String deviceDN) throws NamingException { List<Connection> prevs = prevDev.listConnections(); List<Connection> conns = device.listConnections(); for (Connection prev : prevs) { String dn = LdapUtils.dnOf(prev, deviceDN); if (LdapUtils.findByDN(deviceDN, conns, dn) == null) { destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (Connection conn : conns) { String dn = LdapUtils.dnOf(conn, deviceDN); Connection prev = LdapUtils.findByDN(deviceDN, prevs, dn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), conn, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, conn, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
private void mergeConnections(ConfigurationChanges diffs, Device prevDev, Device device, String deviceDN) throws NamingException { List<Connection> prevs = prevDev.listConnections(); List<Connection> conns = device.listConnections(); for (Connection prev : prevs) { String dn = LdapUtils.dnOf(prev, deviceDN); if (LdapUtils.findByDN(deviceDN, conns, dn) == null) { destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (Connection conn : conns) { String dn = LdapUtils.dnOf(conn, deviceDN); Connection prev = LdapUtils.findByDN(deviceDN, prevs, dn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), conn, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); modifyAttributes(dn, storeDiffs(ldapObj, prev, conn, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }