OPC Studio User's Guide and Reference
TestConnectionAsync(IEasyUASubscriber,UAPubSubConnectionDescriptor,Int32) Method



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA.PubSub.Extensions Namespace > IEasyUASubscriberExtension2 Class > TestConnectionAsync Method : TestConnectionAsync(IEasyUASubscriber,UAPubSubConnectionDescriptor,Int32) Method
The subscriber object that will perform the operation.

This is typically the OpcLabs.EasyOpc.UA.PubSub.EasyUASubscriber object.

The value of this parameter cannot be null (Nothing in Visual Basic).

Descriptor for a PubSub connection (using physical parameters, or logical name).

Because the OpcLabs.EasyOpc.UA.PubSub.UAPubSubConnectionDescriptor has an implicit conversion from OpcLabs.BaseLib.Networking.ResourceAddress and System.String, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a OpcLabs.BaseLib.Networking.ResourceAddress object, or a string (the so-called resource description string, usually a resource URL) in place of this parameter, and the corresponding OPC UA PubSub connection descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can use the FromResourceAddress or FromString static method instead.

Also, because the OpcLabs.EasyOpc.UA.PubSub.Configuration.UAPubSubConnectionElement has an implicit conversion to OpcLabs.EasyOpc.UA.PubSub.UAPubSubConnectionDescriptor, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a OpcLabs.EasyOpc.UA.PubSub.Configuration.UAPubSubConnectionElement (from PubSub configuration) in place of this parameter, and the corresponding OPC UA PubSub connection descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can convert a OpcLabs.EasyOpc.UA.PubSub.Configuration.UAPubSubConnectionElement to OpcLabs.EasyOpc.UA.PubSub.UAPubSubConnectionDescriptor using the ToUAPubSubConnectionDescriptor static method instead.

The value of this parameter cannot be null (Nothing in Visual Basic).

Number of milliseconds to wait before the connection test can pass.

Valid values of this parameter are in the range from 0 to 2147483647 (Int32.MaxValue).

Tests whether an OPC UA PubSub connection can be successfully established. Asynchronous. Asynchronously tests an OPC UA PubSub connection, specifying the PubSub connection descriptor.
Syntax
'Declaration
 
<ExtensionAttribute()>
<AsyncThrowsAttribute(OpcLabs.EasyOpc.UA.OperationModel.UAException)>
<NotNullAttribute()>
Public Overloads Shared Function TestConnectionAsync( _
   ByVal subscriber As IEasyUASubscriber, _
   ByVal pubSubConnectionDescriptor As UAPubSubConnectionDescriptor, _
   ByVal waitMilliseconds As Integer _
) As Task
'Usage
 
Dim subscriber As IEasyUASubscriber
Dim pubSubConnectionDescriptor As UAPubSubConnectionDescriptor
Dim waitMilliseconds As Integer
Dim value As Task
 
value = IEasyUASubscriberExtension2.TestConnectionAsync(subscriber, pubSubConnectionDescriptor, waitMilliseconds)
[Extension()]
[AsyncThrows(OpcLabs.EasyOpc.UA.OperationModel.UAException)]
[NotNull()]
public static Task TestConnectionAsync( 
   IEasyUASubscriber subscriber,
   UAPubSubConnectionDescriptor pubSubConnectionDescriptor,
   int waitMilliseconds
)
[Extension()]
[AsyncThrows(OpcLabs.EasyOpc.UA.OperationModel.UAException)]
[NotNull()]
public:
static Task^ TestConnectionAsync( 
   IEasyUASubscriber^ subscriber,
   UAPubSubConnectionDescriptor^ pubSubConnectionDescriptor,
   int waitMilliseconds
) 

Parameters

subscriber
The subscriber object that will perform the operation.

This is typically the OpcLabs.EasyOpc.UA.PubSub.EasyUASubscriber object.

The value of this parameter cannot be null (Nothing in Visual Basic).

pubSubConnectionDescriptor
Descriptor for a PubSub connection (using physical parameters, or logical name).

Because the OpcLabs.EasyOpc.UA.PubSub.UAPubSubConnectionDescriptor has an implicit conversion from OpcLabs.BaseLib.Networking.ResourceAddress and System.String, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a OpcLabs.BaseLib.Networking.ResourceAddress object, or a string (the so-called resource description string, usually a resource URL) in place of this parameter, and the corresponding OPC UA PubSub connection descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can use the FromResourceAddress or FromString static method instead.

Also, because the OpcLabs.EasyOpc.UA.PubSub.Configuration.UAPubSubConnectionElement has an implicit conversion to OpcLabs.EasyOpc.UA.PubSub.UAPubSubConnectionDescriptor, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a OpcLabs.EasyOpc.UA.PubSub.Configuration.UAPubSubConnectionElement (from PubSub configuration) in place of this parameter, and the corresponding OPC UA PubSub connection descriptor will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can convert a OpcLabs.EasyOpc.UA.PubSub.Configuration.UAPubSubConnectionElement to OpcLabs.EasyOpc.UA.PubSub.UAPubSubConnectionDescriptor using the ToUAPubSubConnectionDescriptor static method instead.

The value of this parameter cannot be null (Nothing in Visual Basic).

waitMilliseconds
Number of milliseconds to wait before the connection test can pass.

Valid values of this parameter are in the range from 0 to 2147483647 (Int32.MaxValue).

Return Value

The method returns a task that executes normally when the test passes. The task throws a OpcLabs.EasyOpc.UA.OperationModel.UAException when there is an error establishing the connection.

This method never returns null (Nothing in Visual Basic).

Exceptions
ExceptionDescription

A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

The value of an argument is outside the allowable range of values as defined by the invoked method.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

Remarks

The method tests asynchronously whether an OPC UA PubSub connection can be successfully established.

Due to asynchronous nature of some communication channels, successful test outcome does not always imply that a connection has been fully established.

The waitMilliseconds parameter is not a timeout in its traditional sense, i.e. a maximum time allowed for the operation. Here, this method actually waits for the time given by waitMilliseconds parameter unless a failure occurs.

This is an asynchronous method. For a synchronous alternative, see TestConnection(IEasyUASubscriber,UAPubSubConnectionDescriptor,Int32).

This is an extension method (info: C#, VB.NET). In languages that have support for extensions methods (such as C# and VB.NET), you can use the extension method as if it were a regular method on the object that is its first parameter. In other languages (such as with Python.NET), you will call the extension as a static method, and pass it the object on which it acts as its first parameter.

Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows

See Also