pyuaf.util.statuscodes

This module defines the status codes as specified by the UAF.

The UAF status codes (which are defined in the pyuaf.util.statuscodes module) are not to be confused with the OPC UA status codes (which are defined in the pyuaf.util.opcuastatuscodes module).

  • The OPC UA status codes are 32-bit integers defined by the OPC UA standard. They provide low-level information about the OPC UA communication. Whenever you see an OPC UA status code (often as an attribute called opcUaStatusCode), it is produced by the SDK or the Stack (in other words, not by the UAF).

  • The UAF status codes are 32-bit integers defined by the UAF. They provide high-level information. For all “bad” status codes (those ending with Error), there is a corresponding error defined in pyuaf.util.errors. For instance, a pyuaf.util.statuscodes.InvalidServerUriError corresponds to a pyuaf.util.errors.InvalidServerUriError. UAF status codes are used exclusively to determine which error is held by a pyuaf.util.Status object. For instance, if the statusCode attribute of a pyuaf.util.Status instance is equal to pyuaf.util.statuscodes.InvalidServerUriError, then the Status object in fact holds a pyuaf.util.errors.InvalidServerUriError instance. See the example below:

    >>> import pyuaf
    >>> from pyuaf.util import Status
    >>> from pyuaf.util import errors, statuscodes
    >>>
    >>> sts = Status( errors.InvalidServerUriError("my/invalid/server/uri"))
    >>>
    >>> assert sts.statusCode == statuscodes.InvalidServerUriError
    >>>
    >>> try:
    ...    sts.test()
    ...    raised = False;
    ... except errors.InvalidServerUriError:
    ...    raised = True;
    ...
    >>> assert raised
    
  • Attributes:

    class pyuaf.util.statuscodes.Good
    class pyuaf.util.statuscodes.Uncertain
    class pyuaf.util.statuscodes.DiscoveryError
    class pyuaf.util.statuscodes.ResolutionError
    class pyuaf.util.statuscodes.InvalidRequestError
    class pyuaf.util.statuscodes.FindServersError
    class pyuaf.util.statuscodes.UnknownServerError
    class pyuaf.util.statuscodes.EmptyUrlError
    class pyuaf.util.statuscodes.NoParallelFindServersAllowedError
    class pyuaf.util.statuscodes.NoDiscoveryUrlsFoundError
    class pyuaf.util.statuscodes.ServerCertificateRejectedByUserError
    class pyuaf.util.statuscodes.ServerCertificateSavingError
    class pyuaf.util.statuscodes.OpenSSLStoreInitializationError
    class pyuaf.util.statuscodes.ClientCertificateLoadingError
    class pyuaf.util.statuscodes.ServerDidNotProvideCertificateError
    class pyuaf.util.statuscodes.ConnectionError
    class pyuaf.util.statuscodes.PathNotExistsError
    class pyuaf.util.statuscodes.SecurityError
    class pyuaf.util.statuscodes.NoSecuritySettingsGivenError
    class pyuaf.util.statuscodes.PathCreationError
    class pyuaf.util.statuscodes.SecuritySettingsMatchError
    class pyuaf.util.statuscodes.WrongTypeError
    class pyuaf.util.statuscodes.UnexpectedError
    class pyuaf.util.statuscodes.ServerArrayConversionError
    class pyuaf.util.statuscodes.NamespaceArrayConversionError
    class pyuaf.util.statuscodes.BadNamespaceArrayError
    class pyuaf.util.statuscodes.BadServerArrayError
    class pyuaf.util.statuscodes.UnknownServerIndexError
    class pyuaf.util.statuscodes.InvalidAddressError
    class pyuaf.util.statuscodes.UnknownNamespaceUriError
    class pyuaf.util.statuscodes.NoNamespaceIndexOrUriGivenError
    class pyuaf.util.statuscodes.UnknownNamespaceIndexError
    class pyuaf.util.statuscodes.EmptyServerUriAndUnknownNamespaceIndexError
    class pyuaf.util.statuscodes.ExpandedNodeIdAddressExpectedError
    class pyuaf.util.statuscodes.EmptyServerUriError
    class pyuaf.util.statuscodes.UnsupportedError
    class pyuaf.util.statuscodes.UnsupportedNodeIdIdentifierTypeError
    class pyuaf.util.statuscodes.SyncInvocationNotSupportedError
    class pyuaf.util.statuscodes.AsyncInvocationNotSupportedError
    class pyuaf.util.statuscodes.NoStatusesGivenError
    class pyuaf.util.statuscodes.BadStatusesPresentError
    class pyuaf.util.statuscodes.NotAllTargetsCouldBeResolvedError
    class pyuaf.util.statuscodes.InvalidServerUriError
    class pyuaf.util.statuscodes.SubscriptionNotCreatedError
    class pyuaf.util.statuscodes.NoTargetsGivenError
    class pyuaf.util.statuscodes.DataDontMatchAddressesError
    class pyuaf.util.statuscodes.ItemNotFoundForTheGivenHandleError
    class pyuaf.util.statuscodes.TargetRankOutOfBoundsError
    class pyuaf.util.statuscodes.NoItemFoundForTheGivenRequestHandleError
    class pyuaf.util.statuscodes.ContinuationPointsDontMatchAddressesError
    class pyuaf.util.statuscodes.UnknownNamespaceIndexAndServerIndexError
    class pyuaf.util.statuscodes.AsyncMultiMethodCallNotSupportedError
    class pyuaf.util.statuscodes.EmptyAddressError
    class pyuaf.util.statuscodes.MultipleTranslationResultsError
    class pyuaf.util.statuscodes.UnknownClientSubscriptionHandleError
    class pyuaf.util.statuscodes.UnknownClientHandleError
    class pyuaf.util.statuscodes.UnknownClientConnectionIdError
    class pyuaf.util.statuscodes.AsyncConnectionFailedError
    class pyuaf.util.statuscodes.ConnectionFailedError
    class pyuaf.util.statuscodes.EmptyUserCertificateError
    class pyuaf.util.statuscodes.InvalidPrivateKeyError
    class pyuaf.util.statuscodes.SessionSecuritySettingsDontMatchEndpointError
    class pyuaf.util.statuscodes.CouldNotManuallyUnsubscribeError
    class pyuaf.util.statuscodes.CouldNotManuallySubscribeError
    class pyuaf.util.statuscodes.SessionNotConnectedError
    class pyuaf.util.statuscodes.SubscriptionHasBeenDeletedError
    class pyuaf.util.statuscodes.NoDiscoveryUrlsExposedByServerError
    class pyuaf.util.statuscodes.GetEndpointsError
    class pyuaf.util.statuscodes.NoEndpointsProvidedByServerError
    class pyuaf.util.statuscodes.DisconnectionFailedError
    class pyuaf.util.statuscodes.NoConnectedSessionToUpdateArraysError
    class pyuaf.util.statuscodes.BadDataReceivedError
    class pyuaf.util.statuscodes.ServiceError
    class pyuaf.util.statuscodes.CouldNotReadArraysError
    class pyuaf.util.statuscodes.CreateMonitoredItemsError
    class pyuaf.util.statuscodes.CreateMonitoredItemsInvocationError
    class pyuaf.util.statuscodes.BeginCreateMonitoredItemsInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotCreateMonitoredItemsError
    class pyuaf.util.statuscodes.ServerCouldNotBrowseNextError
    class pyuaf.util.statuscodes.BrowseNextInvocationError
    class pyuaf.util.statuscodes.ReadInvocationError
    class pyuaf.util.statuscodes.BeginReadInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotReadError
    class pyuaf.util.statuscodes.TranslateBrowsePathsToNodeIdsInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotTranslateBrowsePathsToNodeIdsError
    class pyuaf.util.statuscodes.HistoryReadInvocationError
    class pyuaf.util.statuscodes.HistoryReadRawModifiedInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotHistoryReadError
    class pyuaf.util.statuscodes.MethodCallInvocationError
    class pyuaf.util.statuscodes.AsyncMethodCallInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotCallMethodError
    class pyuaf.util.statuscodes.ServerCouldNotBrowseError
    class pyuaf.util.statuscodes.BrowseInvocationError
    class pyuaf.util.statuscodes.WriteInvocationError
    class pyuaf.util.statuscodes.AsyncWriteInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotWriteError
    class pyuaf.util.statuscodes.CallCompleteError
    class pyuaf.util.statuscodes.InputArgumentError
    class pyuaf.util.statuscodes.ReadCompleteError
    class pyuaf.util.statuscodes.WriteCompleteError
    class pyuaf.util.statuscodes.SubscriptionError
    class pyuaf.util.statuscodes.SetPublishingModeInvocationError
    class pyuaf.util.statuscodes.ServerCouldNotSetMonitoringModeError
    class pyuaf.util.statuscodes.CreateSubscriptionError
    class pyuaf.util.statuscodes.DeleteSubscriptionError
    class pyuaf.util.statuscodes.SetMonitoringModeInvocationError
    class pyuaf.util.statuscodes.ConfigurationError
    class pyuaf.util.statuscodes.CouldNotCreateCertificateTrustListLocationError
    class pyuaf.util.statuscodes.CouldNotCreateCertificateRevocationListLocationError
    class pyuaf.util.statuscodes.CouldNotCreateIssuersCertificateLocationError
    class pyuaf.util.statuscodes.CouldNotCreateIssuersRevocationListLocationError
    class pyuaf.util.statuscodes.CouldNotCreateClientPrivateKeyLocationError
    class pyuaf.util.statuscodes.CouldNotCreateClientCertificateLocationError
    class pyuaf.util.statuscodes.DefinitionNotFoundError
    class pyuaf.util.statuscodes.DataFormatError
    class pyuaf.util.statuscodes.DataSizeError
    class pyuaf.util.statuscodes.DataSourceError
    class pyuaf.util.statuscodes.DisconnectionError
    class pyuaf.util.statuscodes.LowLevelError
    class pyuaf.util.statuscodes.OtherError
    class pyuaf.util.statuscodes.TimeoutError
    class pyuaf.util.statuscodes.NoResultReceivedError
    class pyuaf.util.statuscodes.UnknownHandleError
  • Functions:

    pyuaf.util.statuscodes.toString(code)

    Get a string representation of the UAF status code.

    Parameters:code (int) – The code, e.g. pyuaf.util.statuscodes.InvalidServerUriError.
    Returns:The name of the type, e.g. ‘InvalidServerUriError’.
    Return type:str