Beispiel #1
0
        public void TreeDisconnectRequest(ModelTreeId treeId)
        {
            uint treeDisconnectTreeId;

            switch (treeId)
            {
            case ModelTreeId.InvalidTreeId:
                treeDisconnectTreeId = INVALID_TREE_ID;
                break;

            case ModelTreeId.ValidExistTreeId:
                // If TreeConnect, use the returned TreeID.
                // If not TreeConnect, use the default value 0.
                // If TreeConnect and then TreeDisconnect (second TreeDisconnect), use the former returned TreeId.
                treeDisconnectTreeId = this.treeId;
                break;

            case ModelTreeId.ValidNotExistTreeId:
                // Invalid TreeId
                treeDisconnectTreeId = this.treeId + 1;
                break;

            default:
                throw new InvalidOperationException(treeId + " is not supported.");
            }

            uint status = testClient.TreeDisconnect(treeDisconnectTreeId, (header, response) => { });

            TreeDisconnectResponse((ModelSmb2Status)status);

            // not reset this.treeId. Keep it for second TreeDisconnect.
        }
        public static void TreeDisconnectRequest(ModelTreeId treeId)
        {
            Condition.IsTrue(State == ModelState.Connected);
            Condition.IsNull(Request);

            // If Security Context is Non Admin or no TreeConnect exists, only ValidTreeId.
            Condition.IfThen(
                !Session_TreeConnectExist ||
                Session_SecurityContext == ModelSessionSecurityContext.NonAdmin,
                treeId == ModelTreeId.ValidExistTreeId || treeId == ModelTreeId.InvalidTreeId);

            Request = new ModelTreeMgmtTreeDisconnectRequest(treeId);
        }
        public static void TreeDisconnectRequest(ModelTreeId treeId)
        {
            Condition.IsTrue(State == ModelState.Connected);
            Condition.IsNull(Request);

            // If Security Context is Non Admin or no TreeConnect exists, only ValidTreeId.
            Condition.IfThen(
                !Session_TreeConnectExist
                || Session_SecurityContext == ModelSessionSecurityContext.NonAdmin,
                treeId == ModelTreeId.ValidExistTreeId || treeId == ModelTreeId.InvalidTreeId);

            Request = new ModelTreeMgmtTreeDisconnectRequest(treeId);
        }
 public ModelTreeMgmtTreeDisconnectRequest(ModelTreeId treeId)
     : base(0)
 {
     this.treeId = treeId;
 }
Beispiel #5
0
 public ModelTreeMgmtTreeDisconnectRequest(ModelTreeId treeId)
     : base(0)
 {
     this.treeId = treeId;
 }
        public void TreeDisconnectRequest(ModelTreeId treeId)
        {
            uint treeDisconnectTreeId;
            switch (treeId)
            {
                case ModelTreeId.InvalidTreeId:
                    treeDisconnectTreeId = INVALID_TREE_ID;
                    break;
                case ModelTreeId.ValidExistTreeId:
                    // If TreeConnect, use the returned TreeID.
                    // If not TreeConnect, use the default value 0.
                    // If TreeConnect and then TreeDisconnect (second TreeDisconnect), use the former returned TreeId.
                    treeDisconnectTreeId = this.treeId;
                    break;
                case ModelTreeId.ValidNotExistTreeId:
                    // Invalid TreeId
                    treeDisconnectTreeId = this.treeId + 1;
                    break;
                default:
                    throw new InvalidOperationException(treeId + " is not supported.");
            }

            uint status = testClient.TreeDisconnect(treeDisconnectTreeId, (header, response) => { });
            TreeDisconnectResponse((ModelSmb2Status)status);

            // not reset this.treeId. Keep it for second TreeDisconnect.
        }