.NET Based OPC UA Client/Server SDK  3.3.3.537
UnifiedAutomation.UaServer.ServerModel Class Reference

Defines application specific behavior for the Server object. More...

Inherits UnifiedAutomation.UaServer.BaseObjectModel, and UnifiedAutomation.UaServer.IMethodDispatcher.

Public Member Functions

 ServerModel (ServerManager server)
 Initializes a new instance of the ServerModel class. More...
 
override ModelHandle GetModelHandle (StringTable namespaceUris, object instance)
 Gets the metadata handle. More...
 
 ServerModel ()
 Initializes a new instance of the ServerModel class. More...
 
 ServerModel (ServerModel template, DummyArgument dummy=null)
 Initializes a new instance of the ServerModel class. More...
 
virtual CallMethodEventHandler GetMethodDispatcher (RequestContext context, NodeId objectId, NodeId methodId)
 Gets the method dispatcher. More...
 
virtual StatusCode DispatchMethod (RequestContext context, MethodHandle methodHandle, IList< Variant > inputArguments, List< StatusCode > inputArgumentResults, List< Variant > outputArguments)
 Dispatches the method. More...
 
- Public Member Functions inherited from UnifiedAutomation.UaServer.BaseObjectModel
 BaseObjectModel ()
 Initializes a new instance of the BaseObjectModel class. More...
 
 BaseObjectModel (BaseObjectModel template, DummyArgument dummy=null)
 Initializes a new instance of the BaseObjectModel class. More...
 
- Public Member Functions inherited from UnifiedAutomation.UaServer.ModelControllerBase
virtual DataValue GetValue (IMapperContext context, ModelMapping mapping)
 Gets the value associated with the mapping. More...
 
virtual bool SetValue (IMapperContext context, ModelMapping mapping, DataValue value)
 Sets the value associated with the mapping. More...
 
StatusCode GetStatusCode (string propertyName)
 Retrieve the status code for the given property. If no status code was explicitly set, StatusCodes.Good will be returned.
Parameters
propertyNameThe property name.
Returns
The status code of the property.

 
void SetStatusCode (string propertyName, StatusCode statusCode)
 Sets the status code of the given property. More...
 

Properties

bool Auditing [get, set]
 A Boolean specifying if the Server is currently generating audit events. More...
 
DateTime EstimatedReturnTime [get, set]
 Indicates the time at which the Server is expected to have a ServerStatus.State of RUNNING_0. More...
 
TimeZoneDataType LocalTime [get, set]
 Gets or sets the LocalTime More...
 
string[] NamespaceArray [get, set]
 Defines an array of namespace URIs. More...
 
NamespacesModel Namespaces [get, set]
 Provides a list of UnifiedAutomation.UaServer.NamespaceMetadataModel objects with additional information about the namespaces used in the Server. More...
 
string[] ServerArray [get, set]
 Defines an array of Server URIs. More...
 
ServerCapabilitiesModel ServerCapabilities [get, set]
 Defines the capabilities supported by the OPC UA Server. More...
 
ServerDiagnosticsModel ServerDiagnostics [get, set]
 Defines diagnostic information about the OPC UA Server. More...
 
ServerRedundancyModel ServerRedundancy [get, set]
 Describes the redundancy capabilities provided by the Server. More...
 
ServerStatusModel ServerStatus [get, set]
 Contains elements that describe the status of the Server. More...
 
byte ServiceLevel [get, set]
 Describes the ability of the Server to provide its data to the client. More...
 
uint UrisVersion [get, set]
 Gets or sets the UrisVersion More...
 
VendorServerInfoModel VendorServerInfo [get, set]
 Represents the browse entry point for vendor-defined Server information. More...
 
IServerMethods ServerMethods [get, set]
 Gets or sets the Server methods. More...
 
- Properties inherited from UnifiedAutomation.UaServer.ModelControllerBase
ModelHandle ModelHandle [get, set]
 Gets or sets the metadata handle. More...
 
object UserData [get, set]
 Gets or sets the user data. More...
 
- Properties inherited from UnifiedAutomation.UaServer.INotifyStatusCodeInfo
bool HasStatusCodes [get]
 true if no property has an explicit set status code. Hence when all status codes are implicit StatusCodes.Good. More...
 

Additional Inherited Members

- Public Attributes inherited from UnifiedAutomation.UaServer.ModelControllerBase
bool HasStatusCodes => m_statusCodes != null && m_statusCodes.Count > 0
 
- Protected Member Functions inherited from UnifiedAutomation.UaServer.ModelControllerBase
void RaisePropertyChangedEvent ([CallerMemberName] string propertyName=null)
 Raises an property change event. More...
 
void RaisePropertyChangeRequestedEvent< T > (T value, [CallerMemberName] string propertyName=null)
 Called when the value of a property is supposed to be changed. More...
 
bool SetField< T > (ref T field, T value, [CallerMemberName] string propertyName=null)
 Sets the backing field to the new value, and triggers a property change event, if the value has changed. More...
 
- Events inherited from UnifiedAutomation.UaServer.ModelControllerBase
PropertyChangedEventHandler PropertyChanged
 Occurs when a property value changes. More...
 
EventHandler
< PropertyChangeRequestedEventArgs
PropertyChangeRequested
 The event is emitted just before the value will be changed, and gives the observer the opportunity to reject or adjust (e.g. clamp) the property change by setting the PropertyChangeRequestedEventArgs.StatusCode and PropertyChangeRequestedEventArgs.Value properties. More...
 
EventHandler
< StatusCodeChangedEventArgs
StatusCodeChanged
 
- Events inherited from UnifiedAutomation.UaServer.INotifyPropertyChangeRequested
EventHandler
< PropertyChangeRequestedEventArgs
PropertyChangeRequested
 The property change request event. More...
 
- Events inherited from UnifiedAutomation.UaServer.INotifyStatusCodeInfo
EventHandler
< StatusCodeChangedEventArgs
StatusCodeChanged
 Occurs if the status code of a property was changed. More...
 

Detailed Description

Defines application specific behavior for the Server object.

Defines the capabilities supported by the OPC UA Server.

Constructor & Destructor Documentation

UnifiedAutomation.UaServer.ServerModel.ServerModel ( ServerManager  server)

Initializes a new instance of the ServerModel class.

Parameters
serverThe server.
UnifiedAutomation.UaServer.ServerModel.ServerModel ( )

Initializes a new instance of the ServerModel class.

UnifiedAutomation.UaServer.ServerModel.ServerModel ( ServerModel  template,
DummyArgument  dummy = null 
)

Initializes a new instance of the ServerModel class.

Parameters
templateThe template.
dummyDummy argument to enable writing own constructors that are called by the generated code.

Member Function Documentation

virtual StatusCode UnifiedAutomation.UaServer.ServerModel.DispatchMethod ( RequestContext  context,
MethodHandle  methodHandle,
IList< Variant inputArguments,
List< StatusCode inputArgumentResults,
List< Variant outputArguments 
)
virtual

Dispatches the method.

Parameters
contextThe context.
methodHandleThe method handle.
inputArgumentsThe input arguments.
inputArgumentResultsThe input argument results.
outputArgumentsThe output arguments.
Returns
virtual CallMethodEventHandler UnifiedAutomation.UaServer.ServerModel.GetMethodDispatcher ( RequestContext  context,
NodeId  objectId,
NodeId  methodId 
)
virtual

Gets the method dispatcher.

Parameters
contextThe context.
objectIdThe object id.
methodIdThe method id.
Returns

Implements UnifiedAutomation.UaServer.IMethodDispatcher.

override ModelHandle UnifiedAutomation.UaServer.ServerModel.GetModelHandle ( StringTable  namespaceUris,
object  instance 
)
virtual

Gets the metadata handle.

Parameters
namespaceUrisThe namespace uris.
instanceThe instance.
Returns

Reimplemented from UnifiedAutomation.UaServer.ModelControllerBase.

Property Documentation

bool UnifiedAutomation.UaServer.ServerModel.Auditing
getset

A Boolean specifying if the Server is currently generating audit events.

It is set to TRUE if the Server generates audit events, otherwise to false. The profiles defined in Part 7 of the OPC UA Specification specify what kind of audit events are generated by the Server.

DateTime UnifiedAutomation.UaServer.ServerModel.EstimatedReturnTime
getset

Indicates the time at which the Server is expected to have a ServerStatus.State of RUNNING_0.

A Client that observes a shutdown or a ServiceLevel of 0 should either wait until after this time to attempt to reconnect to this Server or enter into slow retry logic. For example, most Clients will attempt to reconnect after a failure immediately and then progressively increase the delay between attempts until some maximum delay. This time can be used to trigger the Client to start its reconnect logic with some delay.

TimeZoneDataType UnifiedAutomation.UaServer.ServerModel.LocalTime
getset

Gets or sets the LocalTime

string [] UnifiedAutomation.UaServer.ServerModel.NamespaceArray
getset

Defines an array of namespace URIs.

This variable is also referred as namespace table. The indexes into the namespace table are referred to as namespace indexes. Namespace indexes are used in NodeIds in OPC UA Services, rather than the longer namespace URI. Index 0 is reserved for the OPC UA namespace, and index 1 is reserved for the local Server. Clients may read the entire namespace table or they may read individual entries in the namespace table. The Server shall not modify or delete entries of the namespace table while any client has an open session to the Server, because clients may cache the namespace table. A Server may add entries to the namespace table even if clients are connected to the Server. It is recommended that Servers not change the indexes of the namespace table but only add entries, because the client may cache NodeIds using the indexes.

Nevertheless, it might not always be possible for Servers to avoid changing indexes in the namespace table. Clients that cache namespace indexes of NodeIds should always check when starting a session to verify that the cached namespace indexes have not changed.

NamespacesModel UnifiedAutomation.UaServer.ServerModel.Namespaces
getset

Provides a list of UnifiedAutomation.UaServer.NamespaceMetadataModel objects with additional information about the namespaces used in the Server.

See also the description of UnifiedAutomation.UaServer.NamespaceMetadataModel.

string [] UnifiedAutomation.UaServer.ServerModel.ServerArray
getset

Defines an array of Server URIs.

This Variable is also referred to as the server table. Each URI in this array represents a globally-unique logical name for a Server within the scope of the network in which it is installed. Each OPC UA Server instance has a single URI that is used in the server table of other OPC UA Servers. Index 0 is reserved for the URI of the local Server. Values above 0 are used to identify remote Servers and are specific to a Server. Part 4 of the OPC UA Specification describes discovery mechanism that can be used to resolve URIs into URLs. The Server URI is case sensitive.

The URI of the ServerArray with index 0 shall be identical to the URI of the NamespaceArray with index 1, since both represent the local Server. The indexes into the server table are referred to as server indexes or server names. They are used in OPC UA Services to identify target nodes of references that reside in remote Servers.

Clients may read the entire table or they may read individual entries in the table. The Server shall not modify or delete entries of this table while any client has an open session to the Server, because clients may cache the server table. A Server may add entries to the server table even if clients are connected to the Server.

ServerCapabilitiesModel UnifiedAutomation.UaServer.ServerModel.ServerCapabilities
getset

Defines the capabilities supported by the OPC UA Server.

See UnifiedAutomation.UaServer.ServerCapabilitiesModel for its description.

ServerDiagnosticsModel UnifiedAutomation.UaServer.ServerModel.ServerDiagnostics
getset

Defines diagnostic information about the OPC UA Server.

See UnifiedAutomation.UaServer.ServerDiagnosticsModel for its description.

IServerMethods UnifiedAutomation.UaServer.ServerModel.ServerMethods
getset

Gets or sets the Server methods.

The Server methods.

ServerRedundancyModel UnifiedAutomation.UaServer.ServerModel.ServerRedundancy
getset

Describes the redundancy capabilities provided by the Server.

This object is required even if the Server does not provide any redundancy support. If the Server supports redundancy, then a subtype of UnifiedAutomation.UaServer.ServerRedundancyModel is used to describe its capabilities. Otherwise, it provides an object of type UnifiedAutomation.UaServer.ServerRedundancyModel with the property RedundancySupport set to none. See also the description of UnifiedAutomation.UaServer.ServerRedundancyModel.

ServerStatusModel UnifiedAutomation.UaServer.ServerModel.ServerStatus
getset

Contains elements that describe the status of the Server.

See UnifiedAutomation.UaBase.ServerStatusDataType for a description of its elements.

byte UnifiedAutomation.UaServer.ServerModel.ServiceLevel
getset

Describes the ability of the Server to provide its data to the client.

The value range is from 0 to 255, where 0 indicates the worst and 255 indicates the best. Part 4 of the OPC UA Specification defines required sub-ranges for different scenarios. The intent is to provide the clients an indication of availability among redundant Servers.

uint UnifiedAutomation.UaServer.ServerModel.UrisVersion
getset

Gets or sets the UrisVersion

VendorServerInfoModel UnifiedAutomation.UaServer.ServerModel.VendorServerInfo
getset

Represents the browse entry point for vendor-defined Server information.

This object is required to be present even if there are no vendor-defined objects beneath it. See UnifiedAutomation.UaServer.VendorServerInfoModel for its description.


The documentation for this class was generated from the following files: