Opc.Ua.Com.Server.ComHdaProxy.MapReadStatusToErrorCode C# (CSharp) Method

MapReadStatusToErrorCode() static private method

Converts a StatusCode returned during a Read to an HRESULT.
static private MapReadStatusToErrorCode ( StatusCode statusCode ) : int
statusCode StatusCode
return int
        internal static int MapReadStatusToErrorCode(StatusCode statusCode)
        {
            // map bad well known status codes.
            if (StatusCode.IsBad(statusCode))
            {
                switch (statusCode.Code)
                {
                    case StatusCodes.BadOutOfMemory: { return ResultIds.E_OUTOFMEMORY; }
                    case StatusCodes.BadNodeIdInvalid: { return ResultIds.E_INVALIDITEMID; }
                    case StatusCodes.BadNodeIdUnknown: { return ResultIds.E_UNKNOWNITEMID; }
                    case StatusCodes.BadNotReadable: { return ResultIds.E_BADRIGHTS; }
                    case StatusCodes.BadUserAccessDenied: { return ResultIds.E_ACCESSDENIED; }
                    case StatusCodes.BadAttributeIdInvalid: { return ResultIds.E_INVALIDITEMID; }
                    case StatusCodes.BadUnexpectedError: { return ResultIds.E_FAIL; }
                    case StatusCodes.BadInternalError: { return ResultIds.E_FAIL; }
                    case StatusCodes.BadSessionClosed: { return ResultIds.E_FAIL; }
                    case StatusCodes.BadTypeMismatch: { return ResultIds.E_BADTYPE; }
                }
            }

            // all other values are mapped to quality codes.
            return ResultIds.S_OK;
        }