public ApplicationEntity getApplicationEntity(String aet, boolean matchOtherAETs) { ApplicationEntity ae = aes.get(aet); if (ae == null) ae = aes.get("*"); if (ae == null && matchOtherAETs) for (ApplicationEntity ae1 : getApplicationEntities()) if (ae1.isOtherAETitle(aet)) return ae1; return ae; }
public ApplicationEntity getApplicationEntity(String aet, boolean matchOtherAETs) { ApplicationEntity ae = aes.get(aet); if (ae == null) ae = aes.get("*"); if (ae == null && matchOtherAETs) for (ApplicationEntity ae1 : getApplicationEntities()) if (ae1.isOtherAETitle(aet)) return ae1; return ae; }
private void writeApplicationAEsTo(Device device, JsonWriter writer, boolean extended) { Collection<ApplicationEntity> aes = device.getApplicationEntities(); if (aes.isEmpty()) return; List<Connection> conns = device.listConnections(); writer.writeStartArray("dicomNetworkAE"); for (ApplicationEntity ae : aes) writeTo(ae, conns, writer, extended); writer.writeEnd(); }
private void writeApplicationAEsTo(Device device, JsonWriter writer, boolean extended) { Collection<ApplicationEntity> aes = device.getApplicationEntities(); if (aes.isEmpty()) return; List<Connection> conns = device.listConnections(); writer.writeStartArray("dicomNetworkAE"); for (ApplicationEntity ae : aes) writeTo(ae, conns, writer, extended); writer.writeEnd(); }
@Override public ApplicationEntity findApplicationEntityByUUID(String uuid) throws ConfigurationException { if (uuid == null) throw new IllegalArgumentException("Requested AE's uuid cannot be null"); Iterator search = lowLevelConfig.search(DicomPath.DeviceNameByAEUUID.set("aeUUID", uuid).path()); try { String deviceNameNode = (String) search.next(); Device device = findDevice(deviceNameNode); for (ApplicationEntity applicationEntity : device.getApplicationEntities()) { if (uuid.equals(applicationEntity.getUuid())) { return applicationEntity; } } throw new NoSuchElementException("Unexpected error"); } catch (NoSuchElementException e) { throw new ConfigurationNotFoundException("AE with UUID '" + uuid + "' not found", e); } }
void initGroupBasedTCs(Device d) throws ConfigurationException { TCConfiguration tcConfig = getTCConfig(); for (ApplicationEntity applicationEntity : d.getApplicationEntities()) { TCGroupConfigAEExtension tcGroupConfigAEExtension = applicationEntity.getAEExtension(TCGroupConfigAEExtension.class); if (tcGroupConfigAEExtension != null) { // override any entries that might have been added before applicationEntity.setTransferCapabilities(new ArrayList<TransferCapability>()); // Always add CEcho SCP applicationEntity.addTransferCapability(new TransferCapability("CEcho SCP", UID.VerificationSOPClass, TransferCapability.Role.SCP, UID.ImplicitVRLittleEndian)); // add processed TCs from pre-configured groups to this ae for (Map.Entry<String, TCGroupConfigAEExtension.TCGroupDetails> tcGroupRefEntry : tcGroupConfigAEExtension.getScpTCs().entrySet()) addTC(applicationEntity, tcConfig, tcGroupRefEntry, TransferCapability.Role.SCP); for (Map.Entry<String, TCGroupConfigAEExtension.TCGroupDetails> tcGroupRefEntry : tcGroupConfigAEExtension.getScuTCs().entrySet()) addTC(applicationEntity, tcConfig, tcGroupRefEntry, TransferCapability.Role.SCU); } } }
private void mergeAEs(ConfigurationChanges diffs, Device prevDev, Device dev, String deviceDN, boolean preserveVendorData) throws NamingException { Collection<String> aets = dev.getApplicationAETitles(); for (String aet : prevDev.getApplicationAETitles()) { if (!aets.contains(aet)) { String aetDN = aetDN(aet, deviceDN); destroySubcontextWithChilds(aetDN); ConfigurationChanges.addModifiedObject(diffs, aetDN, ConfigurationChanges.ChangeType.D); } } Collection<String> prevAETs = prevDev.getApplicationAETitles(); for (ApplicationEntity ae : dev.getApplicationEntities()) { String aet = ae.getAETitle(); if (!prevAETs.contains(aet)) { store(diffs, ae, deviceDN); } else merge(diffs, prevDev.getApplicationEntity(aet), ae, deviceDN, preserveVendorData); } }
private void mergeAEs(ConfigurationChanges diffs, Device prevDev, Device dev, String deviceDN, boolean preserveVendorData) throws NamingException { Collection<String> aets = dev.getApplicationAETitles(); for (String aet : prevDev.getApplicationAETitles()) { if (!aets.contains(aet)) { String aetDN = aetDN(aet, deviceDN); destroySubcontextWithChilds(aetDN); ConfigurationChanges.addModifiedObject(diffs, aetDN, ConfigurationChanges.ChangeType.D); } } Collection<String> prevAETs = prevDev.getApplicationAETitles(); for (ApplicationEntity ae : dev.getApplicationEntities()) { String aet = ae.getAETitle(); if (!prevAETs.contains(aet)) { store(diffs, ae, deviceDN); } else merge(diffs, prevDev.getApplicationEntity(aet), ae, deviceDN, preserveVendorData); } }
private void storeChilds(ConfigurationChanges diffs, String deviceDN, Device device) throws NamingException, ConfigurationException { for (Connection conn : device.listConnections()) { String dn = LdapUtils.dnOf(conn, deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ldapObj, conn, new BasicAttributes(true))); } for (ApplicationEntity ae : device.getApplicationEntities()) store(diffs, ae, deviceDN); if (extended) { for (WebApplication webapp : device.getWebApplications()) store(diffs, webapp, deviceDN); for (LdapDicomConfigurationExtension ext : extensions) ext.storeChilds(diffs, deviceDN, device); } }
private void storeChilds(ConfigurationChanges diffs, String deviceDN, Device device) throws NamingException, ConfigurationException { for (Connection conn : device.listConnections()) { String dn = LdapUtils.dnOf(conn, deviceDN); ConfigurationChanges.ModifiedObject ldapObj = ConfigurationChanges.addModifiedObject(diffs, dn, ConfigurationChanges.ChangeType.C); createSubcontext(dn, storeTo(ldapObj, conn, new BasicAttributes(true))); } for (ApplicationEntity ae : device.getApplicationEntities()) store(diffs, ae, deviceDN); if (extended) { for (WebApplication webapp : device.getWebApplications()) store(diffs, webapp, deviceDN); for (LdapDicomConfigurationExtension ext : extensions) ext.storeChilds(diffs, deviceDN, device); } }