Ejemplo n.º 1
0
 protected List <MailboxTable> DataRequested(object sender, RequestDataEventArgs args)
 {
     //lock (_lockObject)
     {
         if (!readCounter.ContainsKey(args.Category))
         {
             readCounter.Add(args.Category, 0);
         }
         readCounter[args.Category]++;
         using (DominoDbContext localDbContext = new DominoDbContext(config.GetConnectionString("DefaultConnection")))
         {
             return(localDbContext.PeekMailbox(args.Category, args.Direction));
         }
     }
 }
Ejemplo n.º 2
0
        public static string RequestFile(Action <RequestDataEventArgs> requestEvent, string message, string requestId, out string error)
        {
            error = string.Empty;

            var eventArgs = new RequestDataEventArgs(message, -1, true, requestId);

            requestEvent(eventArgs);

            if (eventArgs.Data == null)
            {
                error = "Data not given.";
                return(null);
            }

            return(eventArgs.Data);
        }
Ejemplo n.º 3
0
        public static byte[] RequestKey(Action <RequestDataEventArgs> requestEvent, string message, int keyLength, string requestId, out string error)
        {
            error = string.Empty;

            var eventArgs = new RequestDataEventArgs(message, keyLength < 0 ? -1 : keyLength * 2, false, requestId);

            requestEvent(eventArgs);

            if (eventArgs.Data == null)
            {
                error = "Data not given.";
                return(null);
            }
            if (keyLength >= 0 && eventArgs.Data.Length != keyLength * 2)
            {
                error = "Data has unexpected length.";
                return(null);
            }

            return(eventArgs.Data.Hexlify());
        }
Ejemplo n.º 4
0
        public static long RequestNumber(Action <RequestDataEventArgs> requestEvent, string message, long defaultValue, out string error)
        {
            error = string.Empty;

            var eventArgs = new RequestDataEventArgs(message, -1, false);

            requestEvent(eventArgs);

            if (eventArgs.Data == null)
            {
                error = "Data not given.";
                return(defaultValue);
            }
            if (!Regex.IsMatch(eventArgs.Data, "^\\d+$"))
            {
                error = "Data is no number.";
                return(defaultValue);
            }

            return(Convert.ToInt64(eventArgs.Data));
        }
Ejemplo n.º 5
0
        private void Cipher_RequestData(object sender, RequestDataEventArgs e)
        {
            _globalOperationWatch.Stop();

            var input = new InputBox("Requesting data", e.RequestMessage);
            var ofd   = new OpenFileDialog()
            {
                Title = e.RequestMessage
            };

            while (true)
            {
                if (e.IsRequestFile)
                {
                    if (ofd.ShowDialog() == DialogResult.OK && ofd.CheckFileExists)
                    {
                        e.Data = ofd.FileName;
                        _globalOperationWatch.Start();
                        return;
                    }

                    MessageBox.Show("No valid file selected. Please choose a valid file.", "Invalid file", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    if (input.ShowDialog() == DialogResult.OK && input.InputText.Length == e.DataSize)
                    {
                        e.Data = input.InputText;
                        _globalOperationWatch.Start();
                        return;
                    }

                    MessageBox.Show("No valid data input. Please input valid data.", "Invalid data", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }