/// <summary>
 /// Execute a command. Used when personalized log-in is enabled.
 /// </summary>
 public override ACCommandResult ExecuteCommand(string operationableInstance, string commandType, string username, string password, string vmsUsername)
 {
     try
     {
         if (commandType == CommandTypes.DoorLock.Id)
         {
             _client.LockDoor(operationableInstance, username, password, vmsUsername);
         }
         else if (commandType == CommandTypes.DoorUnlock.Id)
         {
             _client.UnlockDoor(operationableInstance, username, password, vmsUsername);
         }
         else
         {
             return(new ACCommandResult(false, "Invalid command."));
         }
     }
     catch (DemoApplicationClientException ex)
     {
         ACUtil.Log(true, "DemoACPlugin.CommandManager", "Error executing command " + commandType + " on door " + operationableInstance + ": " + ex.Message);
         return(new ACCommandResult(false, ex.Message));
     }
     return(new ACCommandResult(true));
 }