Opc.Ua.ServerTest.BrowseTest.VerifyIsForward C# (CSharp) Method

VerifyIsForward() private method

Verifies the isforward flag.
private VerifyIsForward ( Node node, BrowseDescription description, ReferenceDescription reference ) : bool
node Node
description BrowseDescription
reference ReferenceDescription
return bool
        private bool VerifyIsForward(Node node, BrowseDescription description, ReferenceDescription reference)
        {      
            // check if field was not requested.
            if ((description.ResultMask & (uint)BrowseResultMask.IsForward) == 0)
            {
                if (reference.IsForward)
                {
                    Log("Returned unexpected IsForward=True when Browsing Node '{0}'. NodeId = {1}", node, node.NodeId);
                    return false;
                }

                return true;
            }

            if (reference.IsForward)
            {
                if (description.BrowseDirection == BrowseDirection.Inverse)
                {
                    Log("Returned unexpected IsForward=False when Browsing Node '{0}'. NodeId = {1}", node, node.NodeId);
                    return false;
                }
            }
            else
            {
                if (description.BrowseDirection == BrowseDirection.Forward)
                {
                    Log("Returned unexpected IsForward=True when Browsing Node '{0}'. NodeId = {1}", node, node.NodeId);
                    return false;
                }
            }
                
            return true;
        }