protected override ExecutionControl ExecuteAction(Microsoft.Exchange.MessagingPolicies.Rules.Action action, RulesEvaluationContext context)
        {
            ExecutionControl executionControl = base.ExecuteAction(action, context);

            if (executionControl == ExecutionControl.Execute && action is SenderNotify)
            {
                ((OwaRulesEvaluationContext)base.Context).CapturePerRuleMatchData();
            }
            return(executionControl);
        }
示例#2
0
        static void Main(string[] args)
        {
            string        bduss = "DM4aTBzTTlrS29uUkFMNkY5YmpTMEJlVlVSZn5TY2dWY0t0cm5KbEpJRWE1dFJVQVFBQUFBJCQAAAAAAAAAAAEAAABIEo1NU2NvdHRUZXN0MDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABpZrVQaWa1UR";
            BaiduPanAgent agent = new BaiduPanAgent(bduss);

            agent.RefreshToken();
            Console.WriteLine(agent.BDSToken);

            var  fs             = new System.IO.FileStream("test.torrent", System.IO.FileMode.Open);
            long size           = fs.Length;
            var  uploadResponse = agent.UploadTempFile(fs);

            Console.WriteLine(uploadResponse.MD5);

            var createResponse = agent.CreateCloudFile("/test.torrent", size, uploadResponse.MD5);

            Console.WriteLine(createResponse.Path);

            var torrentQueryResponse = agent.QueryTorrentInfo(createResponse.Path);

            Console.WriteLine(torrentQueryResponse.Info.FileList[0].FileName);
            var offlineDownloadResponse = agent.OfflineDownload(createResponse.Path, torrentQueryResponse.Info.SHA1, "/", new int[] { 1 });

            Console.WriteLine(offlineDownloadResponse.TaskId);

            var  fileName       = torrentQueryResponse.Info.FileList[0].FileName;
            var  searchResponse = agent.Search(fileName, 1, 100);
            long fileId         = searchResponse.ResultList[0].FileId;

            Console.WriteLine(fileId);

            var shareResponse = agent.Share(fileId);

            Console.WriteLine(shareResponse.Link);
            var link = shareResponse.Link;

            var getDirectLinkResponse = agent.GetDirectDownloadLink(link);
            var directLink            = getDirectLinkResponse.FileList[0].DownloadLink;

            Console.WriteLine(directLink);

            var control = new ExecutionControl(new CancellationIndicator());

            control.OnProgressUpdate += (sender, e) =>
            {
                Console.WriteLine(String.Format("Downloading {0:F2}%", e.Item.Percentage));
            };
            var tempFileInfo = agent.Download(directLink, control);

            if (File.Exists(tempFileInfo.PreferredName))
            {
                File.Delete(tempFileInfo.PreferredName);
            }
            File.Move(tempFileInfo.TempFilePath, tempFileInfo.PreferredName);
        }
示例#3
0
        private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        {
            TVCManagers.Default.AudioManager.Stop();
            ExecutionControl.Stop();
            m_keyboard_hook.ReleaseHook();

            MainGeneralSettings settings = SettingsFile.Default.GetSettings <MainGeneralSettings>();

            settings.MainWindowPos.SaveWindowPositionAndSize(this);

            SettingsFile.Default.SetSettings(settings);
            SettingsFile.Default.Save();
        }
示例#4
0
        private void miOptions_Click(object sender, RoutedEventArgs e)
        {
            Window setup = new SetupDialog();

            setup.Owner = this;
            if (setup.ShowDialog() ?? false)
            {
                using (new WaitCursor())
                {
                    // stop simulation
                    ExecutionControl.ChangeExecutionState(ExecutionManager.ExecutionStateRequest.Pause);

                    // save previous settings
                    SettingsFile.Previous.CopySettingsFrom(SettingsFile.Default);

                    // save settings if dialog result was success
                    SettingsFile.Default.CopySettingsFrom(SettingsFile.Editing);
                    SettingsFile.Default.Save();

                    // reload modules
                    //TODO:javitani
                    //ExpansionManager.Default.LoadExpansions();
                    //ExpansionManager.Default.InstallExpansions(ExecutionControl.TVC);



                    bool restart_tvc = false;

                    ExecutionControl.TVC.SettingsChanged(ref restart_tvc);

                    TVCManagers.Default.ExpansionManager.SettingsChanged(ExecutionControl.TVC, ref restart_tvc);

                    // reset computer if required
                    if (restart_tvc)
                    {
                        ExecutionControl.TVC.ColdReset();
                    }

                    // restore execution state
                    ExecutionControl.ChangeExecutionState(ExecutionManager.ExecutionStateRequest.Restore);
                }
            }
        }
示例#5
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            SetupInputSettings input_settings = SettingsFile.Default.GetSettings <SetupInputSettings>();

            if (input_settings.CaptureCtrlESC)
            {
                m_keyboard_hook.EnableHook();
            }

            // setup cartridge control
            CartridgeControl.Initialize(this, ExecutionControl);

            // load modules
            TVCManagers.Default.SetExpansionManager(new ExpansionManager(SettingsFile.Default));
            TVCManagers.Default.ExpansionManager.AddMainModule(typeof(MainModule));
            TVCManagers.Default.ExpansionManager.LoadExpansions();
            TVCManagers.Default.ExpansionManager.InstallExpansions(ExecutionControl.TVC);

            //  Start Audio control
            TVCManagers.Default.AudioManager.Start();

            // Start emulator
            ExecutionControl.Start();
        }