Class NetworkManager
- Namespace
- FellowOakDicom.Network
- Assembly
- fo-dicom.core.dll
Abstract manager class for network operations.
public abstract class NetworkManager : INetworkManager- Inheritance
- 
      
      NetworkManager
- Implements
- Derived
- Inherited Members
- Extension Methods
Fields
IPv4Any
String representation of the "Any" IPv4 address, i.e. specifying the listener to listen to all applicable IPv4 addresses.
public const string IPv4Any = "0.0.0.0"Field Value
IPv4Loopback
String representation of the "Loopback" IPv4 address, i.e. specifying the listener to listen to the local IPv4 host.
public const string IPv4Loopback = "127.0.0.1"Field Value
IPv6Any
String representation of the "Any" IPv6 address, i.e. specifying the listener to listen to all applicable IPv6 addresses.
public const string IPv6Any = "::"Field Value
IPv6Loopback
String representation of the "Loopback" IPv6 address, i.e. specifying the listener to listen to the local IPv6 host.
public const string IPv6Loopback = "::1"Field Value
Properties
MachineNameImpl
Implementation of the machine name getter.
protected abstract string MachineNameImpl { get; }Property Value
Methods
CreateNetworkListenerImpl(string, int)
Platform-specific implementation to create a network listener object.
protected abstract INetworkListener CreateNetworkListenerImpl(string ipAddress, int port)Parameters
Returns
- INetworkListener
- Network listener implementation. 
CreateNetworkStream(TcpClient, ITlsAcceptor, bool)
Platform-specific implementation to create a network stream object from an existing TcpClient
public INetworkStream CreateNetworkStream(TcpClient tcpClient, ITlsAcceptor tlsAcceptor, bool ownsTcpClient)Parameters
- tcpClientTcpClient
- The inbound, connected TCP client 
- tlsAcceptorITlsAcceptor
- The TLS acceptor responsible for setting up TLS 
- ownsTcpClientbool
- Whether or not the network stream owns the TCP client (i.e. the TCP client be disposed when the network stream is disposed) 
Returns
- INetworkStream
- Network stream implementation. 
CreateNetworkStreamImpl(NetworkStreamCreationOptions)
Platform-specific implementation to create a network stream object.
protected abstract INetworkStream CreateNetworkStreamImpl(NetworkStreamCreationOptions networkStreamCreationOptions)Parameters
- networkStreamCreationOptionsNetworkStreamCreationOptions
Returns
- INetworkStream
- Network stream implementation. 
CreateNetworkStreamImpl(TcpClient, ITlsAcceptor, bool)
Platform-specific implementation to create a network stream object from an existing TcpClient
protected abstract INetworkStream CreateNetworkStreamImpl(TcpClient tcpClient, ITlsAcceptor tlsAcceptor, bool ownsTcpClient)Parameters
- tcpClientTcpClient
- The inbound, connected TCP client 
- tlsAcceptorITlsAcceptor
- The TLS acceptor responsible for setting up TLS 
- ownsTcpClientbool
- Whether or not the network stream owns the TCP client (i.e. the TCP client be disposed when the network stream is disposed) 
Returns
- INetworkStream
- Network stream implementation. 
IsSocketExceptionImpl(Exception, out int, out string)
Platform-specific implementation to check whether specified exception represents a socket exception.
protected abstract bool IsSocketExceptionImpl(Exception exception, out int errorCode, out string errorDescriptor)Parameters
- exceptionException
- Exception to validate. 
- errorCodeint
- Error code, valid if - exceptionis socket exception.
- errorDescriptorstring
- Error descriptor, valid if - exceptionis socket exception.
Returns
- bool
- True if - exceptionis socket exception, false otherwise.
TryGetNetworkIdentifierImpl(out DicomUID)
Platform-specific implementation to attempt to obtain a unique network identifier, e.g. based on a MAC address.
protected abstract bool TryGetNetworkIdentifierImpl(out DicomUID identifier)Parameters
- identifierDicomUID
- Unique network identifier, if found. 
Returns
- bool
- True if network identifier could be obtained, false otherwise.