Class NetworkApplicationProperties
- java.lang.Object
-
- com.pixelmed.network.NetworkApplicationProperties
-
public class NetworkApplicationProperties extends java.lang.ObjectThis class provides common support to applications requiring properties related to DICOM network services.
Also contains a main method that can be used, for example, to convert information previously statically configured by properties on each device, to assemble LDIF files to be loaded into an LDAP server for use via the DICOM Network Configuration Management service.
The following properties are supported:
Dicom.ListeningPort- the port that an association acceptor will listen on for incoming connectionsDicom.CalledAETitle- what the AE expects to be called when accepting an associationDicom.CallingAETitle- what the AE will call itself when initiating an associationDicom.PrimaryDeviceType- what our own primary device type isDicom.StorageSCUCompressionLevel- determines what types of compressed Transfer Syntaxes are proposed by a Storage SCU; 0 = uncompressed transfer syntaxes only; 1 = propose deflate as well; 2 = propose deflate and bzip2 (if bzip2 codec is available)Dicom.AcceptorMaximumLengthReceived- the maximum PDU length that an association acceptor will offer to receive (0 for no maximum)Dicom.AcceptorSocketReceiveBufferSize- the TCP socket receive buffer size to set for incoming connections (or 0 to leave unchanged and use platform default)Dicom.AcceptorSocketSendBufferSize- the TCP socket send buffer size to set for incoming connections (or 0 to leave unchanged and use platform default)Dicom.InitiatorMaximumLengthReceived- the maximum PDU length that an association initiator will offer to receive (0 for no maximum)Dicom.InitiatorSocketReceiveBufferSize- the TCP socket receive buffer size to set for incoming connections (or 0 to leave unchanged and use platform default)Dicom.InitiatorSocketSendBufferSize- the TCP socket send buffer size to set for incoming connections (or 0 to leave unchanged and use platform default)Dicom.RemoteAEs- a space or comma separated list of the local names all the available remote AEs; each local name may be anything unique (in this file) without a space or comma; the local name does not need to be the same as the remote AE's called AE titleDicom.XXXX.CalledAETitle- for the remote AE with local name XXXX, what that AE expects to be called when accepting an associationDicom.XXXX.HostNameOrIPAddress- for the remote AE with local name XXXX, what hostname or IP addess that AE will listen on for incoming connectionsDicom.XXXX.Port- for the remote AE with local name XXXX, what port that AE will listen on for incoming connectionsDicom.XXXX.QueryModel- for the remote AE with local name XXXX, what query model is supported; values are STUDYROOT or PATIENTROOT; leave absent if query/retrieve not supported by the remote AEDicom.XXXX.PrimaryDeviceType- for the remote AE with local name XXXX, what the primary device type is (see DICOM PS 3.15 and PS 3.16)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classNetworkApplicationProperties.OurNetworkConfigurationSource
-
Field Summary
Fields Modifier and Type Field Description protected NetworkConfigurationSourcenetworkConfigurationSourcestatic java.lang.StringPatientRootQueryModelstatic java.lang.StringPatientStudyOnlyQueryModelstatic java.lang.StringpropertyName_DicomAcceptorMaximumLengthReceivedstatic java.lang.StringpropertyName_DicomAcceptorSocketReceiveBufferSizestatic java.lang.StringpropertyName_DicomAcceptorSocketSendBufferSizestatic java.lang.StringpropertyName_DicomCalledAETitlestatic java.lang.StringpropertyName_DicomCallingAETitlestatic java.lang.StringpropertyName_DicomInitiatorMaximumLengthReceivedstatic java.lang.StringpropertyName_DicomInitiatorSocketReceiveBufferSizestatic java.lang.StringpropertyName_DicomInitiatorSocketSendBufferSizestatic java.lang.StringpropertyName_DicomListeningPortstatic java.lang.StringpropertyName_PrimaryDeviceTypestatic java.lang.StringpropertyName_StorageSCUCompressionLevelstatic java.lang.StringStudyRootQueryModel
-
Constructor Summary
Constructors Constructor Description NetworkApplicationProperties()Create default properties.NetworkApplicationProperties(java.util.Properties properties)Extract the DICOM network properties from the supplied properties.NetworkApplicationProperties(java.util.Properties properties, boolean addPublicStorageSCPsIfNoRemoteAEsConfigured)Extract the DICOM network properties from the supplied properties.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetAcceptorMaximumLengthReceived()Return the Maximum Length Received for the Association Acceptor.intgetAcceptorSocketReceiveBufferSize()Return the TCP socket receive buffer size for the Association Acceptor.intgetAcceptorSocketSendBufferSize()Return the TCP socket send buffer size for the Association Acceptor.java.lang.StringgetCalledAETitle()Return the called AET.java.lang.StringgetCallingAETitle()Return the calling AET.intgetInitiatorMaximumLengthReceived()Return the Maximum Length Received for the Association Initiator.intgetInitiatorSocketReceiveBufferSize()Return the TCP socket receive buffer size for the Association Initiator.intgetInitiatorSocketSendBufferSize()Return the TCP socket send buffer size for the Association Initiator.intgetListeningPort()Return the listening port.NetworkApplicationInformationgetNetworkApplicationInformation()Return the network application information.NetworkConfigurationSourcegetNetworkConfigurationSource()Return a network configuration source that will supply the network application information.java.lang.StringgetPrimaryDeviceType()Return the primary device type.java.util.PropertiesgetProperties(java.util.Properties properties)Retrieve the DICOM network properties.intgetStorageSCUCompressionLevel()Return the storage SCU compression level.static booleanisPatientRootQueryModel(java.lang.String model)Is the model Patient Root ?static booleanisPatientStudyOnlyQueryModel(java.lang.String model)Is the model Patient/Study Only ?static booleanisStudyRootQueryModel(java.lang.String model)Is the model Study Root ?static voidmain(java.lang.String[] arg)Test the parsing of network properties from the specified file, by reading them and converting into LDIF format.voidsetAcceptorMaximumLengthReceived(int acceptorMaximumLengthReceived)Set the PDU Maximum Length Received for the Association Acceptor.voidsetAcceptorSocketReceiveBufferSize(int acceptorSocketReceiveBufferSize)Set the TCP socket receive buffer size for the Association Acceptor.voidsetAcceptorSocketSendBufferSize(int acceptorSocketSendBufferSize)Set the TCP socket send buffer size for the Association Acceptor.voidsetCalledAETitle(java.lang.String calledAETitle)Set the called AET.voidsetCallingAETitle(java.lang.String callingAETitle)Set the calling AET.voidsetInitiatorMaximumLengthReceived(int initiatorMaximumLengthReceived)Set the PDU Maximum Length Received for the Association Initiator.voidsetInitiatorSocketReceiveBufferSize(int initiatorSocketReceiveBufferSize)Set the TCP socket receive buffer size for the Association Initiator.voidsetInitiatorSocketSendBufferSize(int initiatorSocketSendBufferSize)Set the TCP socket send buffer size for the Association Initiator.voidsetListeningPort(int port)Set the listening port.voidsetPrimaryDeviceType(java.lang.String primaryDeviceType)Set the primary device type.java.lang.StringtoString()
-
-
-
Field Detail
-
propertyName_DicomListeningPort
public static final java.lang.String propertyName_DicomListeningPort
- See Also:
- Constant Field Values
-
propertyName_DicomCalledAETitle
public static final java.lang.String propertyName_DicomCalledAETitle
- See Also:
- Constant Field Values
-
propertyName_DicomCallingAETitle
public static final java.lang.String propertyName_DicomCallingAETitle
- See Also:
- Constant Field Values
-
propertyName_PrimaryDeviceType
public static final java.lang.String propertyName_PrimaryDeviceType
- See Also:
- Constant Field Values
-
propertyName_DicomAcceptorMaximumLengthReceived
public static final java.lang.String propertyName_DicomAcceptorMaximumLengthReceived
- See Also:
- Constant Field Values
-
propertyName_DicomAcceptorSocketReceiveBufferSize
public static final java.lang.String propertyName_DicomAcceptorSocketReceiveBufferSize
- See Also:
- Constant Field Values
-
propertyName_DicomAcceptorSocketSendBufferSize
public static final java.lang.String propertyName_DicomAcceptorSocketSendBufferSize
- See Also:
- Constant Field Values
-
propertyName_DicomInitiatorMaximumLengthReceived
public static final java.lang.String propertyName_DicomInitiatorMaximumLengthReceived
- See Also:
- Constant Field Values
-
propertyName_DicomInitiatorSocketReceiveBufferSize
public static final java.lang.String propertyName_DicomInitiatorSocketReceiveBufferSize
- See Also:
- Constant Field Values
-
propertyName_DicomInitiatorSocketSendBufferSize
public static final java.lang.String propertyName_DicomInitiatorSocketSendBufferSize
- See Also:
- Constant Field Values
-
StudyRootQueryModel
public static final java.lang.String StudyRootQueryModel
- See Also:
- Constant Field Values
-
PatientRootQueryModel
public static final java.lang.String PatientRootQueryModel
- See Also:
- Constant Field Values
-
PatientStudyOnlyQueryModel
public static final java.lang.String PatientStudyOnlyQueryModel
- See Also:
- Constant Field Values
-
propertyName_StorageSCUCompressionLevel
public static final java.lang.String propertyName_StorageSCUCompressionLevel
- See Also:
- Constant Field Values
-
networkConfigurationSource
protected NetworkConfigurationSource networkConfigurationSource
-
-
Constructor Detail
-
NetworkApplicationProperties
public NetworkApplicationProperties() throws DicomNetworkExceptionCreate default properties.
- Throws:
DicomNetworkException
-
NetworkApplicationProperties
public NetworkApplicationProperties(java.util.Properties properties) throws DicomNetworkException, java.io.IOExceptionExtract the DICOM network properties from the supplied properties.
- Parameters:
properties-- Throws:
DicomNetworkExceptionjava.io.IOException
-
NetworkApplicationProperties
public NetworkApplicationProperties(java.util.Properties properties, boolean addPublicStorageSCPsIfNoRemoteAEsConfigured) throws DicomNetworkException, java.io.IOExceptionExtract the DICOM network properties from the supplied properties.
- Parameters:
properties-addPublicStorageSCPsIfNoRemoteAEsConfigured-- Throws:
DicomNetworkExceptionjava.io.IOException
-
-
Method Detail
-
isStudyRootQueryModel
public static final boolean isStudyRootQueryModel(java.lang.String model)
Is the model Study Root ?
- Parameters:
model- the string value describing the model, as used in the query model remote AE property- Returns:
- true if Study Root
-
isPatientRootQueryModel
public static final boolean isPatientRootQueryModel(java.lang.String model)
Is the model Patient Root ?
- Parameters:
model- the string value describing the model, as used in the query model remote AE property- Returns:
- true if Patient Root
-
isPatientStudyOnlyQueryModel
public static final boolean isPatientStudyOnlyQueryModel(java.lang.String model)
Is the model Patient/Study Only ?
- Parameters:
model- the string value describing the model, as used in the query model remote AE property- Returns:
- true if Patient/Study Only
-
getProperties
public java.util.Properties getProperties(java.util.Properties properties)
Retrieve the DICOM network properties.
param properties the existing properties to add to (replacing corresponding properties already there), or null if none- Returns:
- the updated properties or a new set of properties if none supplied
-
getListeningPort
public int getListeningPort()
Return the listening port.
- Returns:
- the listening port
-
setListeningPort
public void setListeningPort(int port)
Set the listening port.
param port the listening port
-
getCalledAETitle
public java.lang.String getCalledAETitle()
Return the called AET.
- Returns:
- the called AET
-
setCalledAETitle
public void setCalledAETitle(java.lang.String calledAETitle)
Set the called AET.
param calledAETitle the called AET
-
getCallingAETitle
public java.lang.String getCallingAETitle()
Return the calling AET.
- Returns:
- the calling AET
-
setCallingAETitle
public void setCallingAETitle(java.lang.String callingAETitle)
Set the calling AET.
param callingAETitle the calling AET
-
getPrimaryDeviceType
public java.lang.String getPrimaryDeviceType()
Return the primary device type.
- Returns:
- the primary device type
-
setPrimaryDeviceType
public void setPrimaryDeviceType(java.lang.String primaryDeviceType)
Set the primary device type.
param primaryDeviceType the primary device type
-
getStorageSCUCompressionLevel
public int getStorageSCUCompressionLevel()
Return the storage SCU compression level.
- Returns:
- the storage SCU compression level
-
getAcceptorMaximumLengthReceived
public int getAcceptorMaximumLengthReceived()
Return the Maximum Length Received for the Association Acceptor.
- Returns:
- the Maximum Length Received or the Association Acceptor (0 if unlimited)
-
setAcceptorMaximumLengthReceived
public void setAcceptorMaximumLengthReceived(int acceptorMaximumLengthReceived)
Set the PDU Maximum Length Received for the Association Acceptor.
param acceptorMaximumLengthReceived the PDU Maximum Length Received for the Association Acceptor (0 if unlimited)
-
getAcceptorSocketReceiveBufferSize
public int getAcceptorSocketReceiveBufferSize()
Return the TCP socket receive buffer size for the Association Acceptor.
- Returns:
- the TCP socket receive buffer size for the Association Acceptor (0 to leave unchanged and use platform default)
-
setAcceptorSocketReceiveBufferSize
public void setAcceptorSocketReceiveBufferSize(int acceptorSocketReceiveBufferSize)
Set the TCP socket receive buffer size for the Association Acceptor.
param acceptorSocketReceiveBufferSize the TCP socket receive buffer size for the Association Acceptor (0 to leave unchanged and use platform default)
-
getAcceptorSocketSendBufferSize
public int getAcceptorSocketSendBufferSize()
Return the TCP socket send buffer size for the Association Acceptor.
- Returns:
- the TCP socket send buffer size for the Association Acceptor (0 to leave unchanged and use platform default)
-
setAcceptorSocketSendBufferSize
public void setAcceptorSocketSendBufferSize(int acceptorSocketSendBufferSize)
Set the TCP socket send buffer size for the Association Acceptor.
param acceptorSocketSendBufferSize the TCP socket send buffer size for the Association Acceptor (0 to leave unchanged and use platform default)
-
getInitiatorMaximumLengthReceived
public int getInitiatorMaximumLengthReceived()
Return the Maximum Length Received for the Association Initiator.
- Returns:
- the Maximum Length Received or the Association Initiator (0 if unlimited)
-
setInitiatorMaximumLengthReceived
public void setInitiatorMaximumLengthReceived(int initiatorMaximumLengthReceived)
Set the PDU Maximum Length Received for the Association Initiator.
param initiatorMaximumLengthReceived the PDU Maximum Length Received for the Association Initiator (0 if unlimited)
-
getInitiatorSocketReceiveBufferSize
public int getInitiatorSocketReceiveBufferSize()
Return the TCP socket receive buffer size for the Association Initiator.
- Returns:
- the TCP socket receive buffer size for the Association Initiator (0 to leave unchanged and use platform default)
-
setInitiatorSocketReceiveBufferSize
public void setInitiatorSocketReceiveBufferSize(int initiatorSocketReceiveBufferSize)
Set the TCP socket receive buffer size for the Association Initiator.
param initiatorSocketReceiveBufferSize the TCP socket receive buffer size for the Association Initiator (0 to leave unchanged and use platform default)
-
getInitiatorSocketSendBufferSize
public int getInitiatorSocketSendBufferSize()
Return the TCP socket send buffer size for the Association Initiator.
- Returns:
- the TCP socket send buffer size for the Association Initiator (0 to leave unchanged and use platform default)
-
setInitiatorSocketSendBufferSize
public void setInitiatorSocketSendBufferSize(int initiatorSocketSendBufferSize)
Set the TCP socket send buffer size for the Association Initiator.
param initiatorSocketSendBufferSize the TCP socket send buffer size for the Association Initiator (0 to leave unchanged and use platform default)
-
getNetworkApplicationInformation
public NetworkApplicationInformation getNetworkApplicationInformation()
Return the network application information.
- Returns:
- the network application information
-
getNetworkConfigurationSource
public NetworkConfigurationSource getNetworkConfigurationSource()
Return a network configuration source that will supply the network application information.
- Returns:
- the network configuration source
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
main
public static void main(java.lang.String[] arg)
Test the parsing of network properties from the specified file, by reading them and converting into LDIF format.
Can be used, for example, to convert information previously statically configured by properties on each device, to assemble LDIF files to be loaded into an LDAP server for use via the DICOM Network Configuration Management service.
- Parameters:
arg- two arguments, a single file name that is the properties file, then the root distinguished name for LDAP
-
-