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, HL7Application prev, HL7Application app, String deviceDN) throws NamingException { String appDN = hl7appDN(app.getApplicationName(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, appDN, ConfigurationChanges.ChangeType.U); config.modifyAttributes(appDN, storeDiffs(ldapObj, prev, app, deviceDN, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); for (LdapHL7ConfigurationExtension ext : extensions) ext.mergeChilds(diffs, prev, app, appDN); }
private void merge(ConfigurationChanges diffs, AuditLogger prevLogger, AuditLogger logger, String deviceDN) throws NamingException { String appDN = auditLoggerDN(logger.getCommonName(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, appDN, ConfigurationChanges.ChangeType.U); config.modifyAttributes(appDN, storeDiffs(ldapObj, prevLogger, logger, deviceDN, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); mergeAuditSuppressCriteria(diffs, prevLogger, logger, appDN); }
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); }
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, AuditLogger prevLogger, AuditLogger logger, String deviceDN) throws NamingException { String appDN = auditLoggerDN(logger.getCommonName(), deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, appDN, ConfigurationChanges.ChangeType.U); config.modifyAttributes(appDN, storeDiffs(ldapObj, prevLogger, logger, deviceDN, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); mergeAuditSuppressCriteria(diffs, prevLogger, logger, appDN); }
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, ImageWriterFactory prev, ImageWriterFactory factory, String imageWritersDN) throws NamingException { for (Entry<String, ImageWriterParam> entry : prev.getEntries()) { String tsuid = entry.getKey(); if (factory.get(tsuid) == null) { String dn = dnOf(tsuid, imageWritersDN); config.destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (Entry<String, ImageWriterParam> entry : factory.getEntries()) { String tsuid = entry.getKey(); String dn = dnOf(tsuid, imageWritersDN); ImageWriterParam prevParam = prev.get(tsuid); if (prevParam == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); config.createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), tsuid, entry.getValue(), new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); config.modifyAttributes(dn, storeDiffs(ldapObj, prevParam, entry.getValue(), new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
@Override protected void mergeChilds(ConfigurationChanges diffs, Device prev, Device device, String deviceDN) throws NamingException { AuditRecordRepository prevARR = prev.getDeviceExtension(AuditRecordRepository.class); AuditRecordRepository arr = device.getDeviceExtension(AuditRecordRepository.class); if (arr == null && prevARR == null) return; String dn = CN_AUDIT_RECORD_REPOSITORY + deviceDN; if (arr == null) { config.destroySubcontextWithChilds(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } else if (prevARR == null) { store(diffs, deviceDN, arr); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); config.modifyAttributes(dn, storeDiffs(ldapObj, prevARR, arr, deviceDN, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } }
@Override protected void mergeChilds(ConfigurationChanges diffs, Device prev, Device device, String deviceDN) throws NamingException { AuditRecordRepository prevARR = prev.getDeviceExtension(AuditRecordRepository.class); AuditRecordRepository arr = device.getDeviceExtension(AuditRecordRepository.class); if (arr == null && prevARR == null) return; String dn = CN_AUDIT_RECORD_REPOSITORY + deviceDN; if (arr == null) { config.destroySubcontextWithChilds(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } else if (prevARR == null) { store(diffs, deviceDN, arr); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); config.modifyAttributes(dn, storeDiffs(ldapObj, prevARR, arr, deviceDN, 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); } } }
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); } } }
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); } } }
private void mergeAuditSuppressCriteria(ConfigurationChanges diffs, AuditLogger prevLogger, AuditLogger logger, String auditLoggerDN) throws NamingException { for (AuditSuppressCriteria prevCriteria : prevLogger.getAuditSuppressCriteriaList()) { String cn = prevCriteria.getCommonName(); if (logger.findAuditSuppressCriteriaByCommonName(cn) == null) { String dn = LdapUtils.dnOf("cn", cn, auditLoggerDN); config.destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (AuditSuppressCriteria criteria : logger.getAuditSuppressCriteriaList()) { String cn = criteria.getCommonName(); String dn = LdapUtils.dnOf("cn", cn, auditLoggerDN); AuditSuppressCriteria prev = prevLogger.findAuditSuppressCriteriaByCommonName(cn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); config.createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), criteria, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); config.modifyAttributes(dn, storeDiffs(ldapObj, prev, criteria, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }
private void mergeAuditSuppressCriteria(ConfigurationChanges diffs, AuditLogger prevLogger, AuditLogger logger, String auditLoggerDN) throws NamingException { for (AuditSuppressCriteria prevCriteria : prevLogger.getAuditSuppressCriteriaList()) { String cn = prevCriteria.getCommonName(); if (logger.findAuditSuppressCriteriaByCommonName(cn) == null) { String dn = LdapUtils.dnOf("cn", cn, auditLoggerDN); config.destroySubcontext(dn); ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.D); } } for (AuditSuppressCriteria criteria : logger.getAuditSuppressCriteriaList()) { String cn = criteria.getCommonName(); String dn = LdapUtils.dnOf("cn", cn, auditLoggerDN); AuditSuppressCriteria prev = prevLogger.findAuditSuppressCriteriaByCommonName(cn); if (prev == null) { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); config.createSubcontext(dn, storeTo(ConfigurationChanges.nullifyIfNotVerbose(diffs, ldapObj), criteria, new BasicAttributes(true))); } else { ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.U); config.modifyAttributes(dn, storeDiffs(ldapObj, prev, criteria, new ArrayList<ModificationItem>())); ConfigurationChanges.removeLastIfEmpty(diffs, ldapObj); } } }