Class DefaultAdvancedDicomClientConnectionFactory
Represents an advanced DICOM client that exposes the highest amount of manual control over the underlying DICOM communication when sending DICOM requests
Using an advanced DICOM client, it is possible to manage the lifetime of a DICOM connection + association in a fine-grained manner and send any number of DICOM requests over it
The regular DICOM client is completely built on top of this advanced DICOM client.
Be aware that consumers of the advanced DICOM client are left to their own devices to handle the fine details of interacting with other PACS software.
Here is an incomplete sample of the things the regular DICOM client will do for you:
- Enforce a maximum amount of requests per association
- Keep an association alive for a certain amount of time to allow more requests to be sent
- Automatically open more associations while more requests are enqueued
- Automatically negotiate presentation contexts based on the requests that are enqueued
This advanced DICOM client is offered to expert users of the Fellow Oak DICOM library.
If you do not consider yourself such an expert, please reconsider the compatibility of the regular DicomClient with your use case.
Inheritance
System.Object
DefaultAdvancedDicomClientConnectionFactory
Implements
Inherited Members
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: FellowOakDicom.Network.Client.Advanced.Connection
Assembly: fo-dicom.core.dll
Syntax
public class DefaultAdvancedDicomClientConnectionFactory : IAdvancedDicomClientConnectionFactory
Constructors
DefaultAdvancedDicomClientConnectionFactory(INetworkManager, ILoggerFactory, IOptions<DicomServiceOptions>, DicomServiceDependencies)
Declaration
public DefaultAdvancedDicomClientConnectionFactory(INetworkManager networkManager, ILoggerFactory loggerFactory, IOptions<DicomServiceOptions> defaultDicomServiceOptions, DicomServiceDependencies dicomServiceDependencies)
Parameters
Type | Name | Description |
---|---|---|
INetworkManager | networkManager | |
Microsoft.Extensions.Logging.ILoggerFactory | loggerFactory | |
Microsoft.Extensions.Options.IOptions<DicomServiceOptions> | defaultDicomServiceOptions | |
DicomServiceDependencies | dicomServiceDependencies |
Methods
OpenConnectionAsync(AdvancedDicomClientConnectionRequest, CancellationToken)
Declaration
public async Task<IAdvancedDicomClientConnection> OpenConnectionAsync(AdvancedDicomClientConnectionRequest request, CancellationToken cancellationToken)
Parameters
Type | Name | Description |
---|---|---|
AdvancedDicomClientConnectionRequest | request | |
System.Threading.CancellationToken | cancellationToken |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IAdvancedDicomClientConnection> |