Class NetworkApplicationProperties
- java.lang.Object
-
- com.pixelmed.network.NetworkApplicationProperties
-
public class NetworkApplicationProperties extends java.lang.Object
This 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 class
NetworkApplicationProperties.OurNetworkConfigurationSource
-
Field Summary
Fields Modifier and Type Field Description protected NetworkConfigurationSource
networkConfigurationSource
static java.lang.String
PatientRootQueryModel
static java.lang.String
PatientStudyOnlyQueryModel
static java.lang.String
propertyName_DicomAcceptorMaximumLengthReceived
static java.lang.String
propertyName_DicomAcceptorSocketReceiveBufferSize
static java.lang.String
propertyName_DicomAcceptorSocketSendBufferSize
static java.lang.String
propertyName_DicomCalledAETitle
static java.lang.String
propertyName_DicomCallingAETitle
static java.lang.String
propertyName_DicomInitiatorMaximumLengthReceived
static java.lang.String
propertyName_DicomInitiatorSocketReceiveBufferSize
static java.lang.String
propertyName_DicomInitiatorSocketSendBufferSize
static java.lang.String
propertyName_DicomListeningPort
static java.lang.String
propertyName_PrimaryDeviceType
static java.lang.String
propertyName_StorageSCUCompressionLevel
static java.lang.String
StudyRootQueryModel
-
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 int
getAcceptorMaximumLengthReceived()
Return the Maximum Length Received for the Association Acceptor.int
getAcceptorSocketReceiveBufferSize()
Return the TCP socket receive buffer size for the Association Acceptor.int
getAcceptorSocketSendBufferSize()
Return the TCP socket send buffer size for the Association Acceptor.java.lang.String
getCalledAETitle()
Return the called AET.java.lang.String
getCallingAETitle()
Return the calling AET.int
getInitiatorMaximumLengthReceived()
Return the Maximum Length Received for the Association Initiator.int
getInitiatorSocketReceiveBufferSize()
Return the TCP socket receive buffer size for the Association Initiator.int
getInitiatorSocketSendBufferSize()
Return the TCP socket send buffer size for the Association Initiator.int
getListeningPort()
Return the listening port.NetworkApplicationInformation
getNetworkApplicationInformation()
Return the network application information.NetworkConfigurationSource
getNetworkConfigurationSource()
Return a network configuration source that will supply the network application information.java.lang.String
getPrimaryDeviceType()
Return the primary device type.java.util.Properties
getProperties(java.util.Properties properties)
Retrieve the DICOM network properties.int
getStorageSCUCompressionLevel()
Return the storage SCU compression level.static boolean
isPatientRootQueryModel(java.lang.String model)
Is the model Patient Root ?static boolean
isPatientStudyOnlyQueryModel(java.lang.String model)
Is the model Patient/Study Only ?static boolean
isStudyRootQueryModel(java.lang.String model)
Is the model Study Root ?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.void
setAcceptorMaximumLengthReceived(int acceptorMaximumLengthReceived)
Set the PDU Maximum Length Received for the Association Acceptor.void
setAcceptorSocketReceiveBufferSize(int acceptorSocketReceiveBufferSize)
Set the TCP socket receive buffer size for the Association Acceptor.void
setAcceptorSocketSendBufferSize(int acceptorSocketSendBufferSize)
Set the TCP socket send buffer size for the Association Acceptor.void
setCalledAETitle(java.lang.String calledAETitle)
Set the called AET.void
setCallingAETitle(java.lang.String callingAETitle)
Set the calling AET.void
setInitiatorMaximumLengthReceived(int initiatorMaximumLengthReceived)
Set the PDU Maximum Length Received for the Association Initiator.void
setInitiatorSocketReceiveBufferSize(int initiatorSocketReceiveBufferSize)
Set the TCP socket receive buffer size for the Association Initiator.void
setInitiatorSocketSendBufferSize(int initiatorSocketSendBufferSize)
Set the TCP socket send buffer size for the Association Initiator.void
setListeningPort(int port)
Set the listening port.void
setPrimaryDeviceType(java.lang.String primaryDeviceType)
Set the primary device type.java.lang.String
toString()
-
-
-
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 DicomNetworkException
Create default properties.
- Throws:
DicomNetworkException
-
NetworkApplicationProperties
public NetworkApplicationProperties(java.util.Properties properties) throws DicomNetworkException, java.io.IOException
Extract the DICOM network properties from the supplied properties.
- Parameters:
properties
-- Throws:
DicomNetworkException
java.io.IOException
-
NetworkApplicationProperties
public NetworkApplicationProperties(java.util.Properties properties, boolean addPublicStorageSCPsIfNoRemoteAEsConfigured) throws DicomNetworkException, java.io.IOException
Extract the DICOM network properties from the supplied properties.
- Parameters:
properties
-addPublicStorageSCPsIfNoRemoteAEsConfigured
-- Throws:
DicomNetworkException
java.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:
toString
in 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
-
-