public void OnDataRecieved(object sender, CommandRecievedEventArgs a)
 {
     if (a.Command == (int)CommandEnum.GetConfigCommand)
     {
         SetSettings(a.Args);
     }
     else if (a.Command == (int)CommandEnum.CloseCommand)
     {
         DirectoryHandlers.Remove(a.Args[0]);
     }
 }
 // recieves args from
 private void SetSettings(string[] args)
 {
     OutputDir     = args[0];
     SourceName    = args[1];
     LogName       = args[2];
     ThumbnailSize = args[3];
     for (int i = 4; i < args.Length; i++)
     {
         DirectoryHandlers.Add(args[i]);
     }
 }
Beispiel #3
0
 /// <summary>
 /// Remove handler on server side.
 /// </summary>
 /// <param name="handler">Handler to remove.</param>
 /// <param name="channel">Web channel for requests.</param>
 public void RemoveHandler(string handler, WebChannel channel)
 {
     if (handler != null && handler != "")
     {
         if (channel.IsConnected())
         {
             CommandMessage req = new CommandMessage((int)CommandEnum.CloseCommand, new string[] { handler });
             channel.Write(req);
             CommandMessage answer = channel.Read();
             DirectoryHandlers.Remove(handler);
         }
     }
 }
Beispiel #4
0
 /// <summary>
 /// on command recieved event handler function .
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 public void OnCommandRecieved(object sender, CommandRecievedEventArgs e)
 {
     try
     {
         //if it's command of get config .
         if (e.CommandID == (int)CommandEnum.GetConfigCommand)
         {
             OutputDirectory = e.Args[0];
             Console.Write("OUTPUT DIRECTORY IS:");
             Console.WriteLine(e.Args[0]);
             SourceName    = e.Args[1];
             LogName       = e.Args[2];
             ThumbnailSize = e.Args[3];
             string[] directoryArray = e.Args[4].Split(';');
             for (int i = 0; i < directoryArray.Length; i++)
             {
                 string dir = directoryArray[i];
                 Console.WriteLine("dir name" + dir);
                 Console.WriteLine("dir was added " + dir);
                 DirectoryHandlers.Add(dir);
             }
         }
         //if it's event of close directory command .
         else if (e.CommandID == (int)CommandEnum.CloseCommand)
         {
             if (e.RequestDirPath != null && DirectoryHandlers != null && DirectoryHandlers.Contains(e.RequestDirPath))
             {
                 this.DirectoryHandlers.Remove(e.RequestDirPath);
                 PropertyChanged?.Invoke(this, e: new PropertyChangedEventArgs(e.RequestDirPath));
             }
         }
         // if it's get log command
         else if (e.CommandID == (int)CommandEnum.LogCommand)
         {
             // translate the Args array of CommandRecievedEventArgs to logs and add them to logCollection
             for (int i = 0; i < e.Args.Length; i += 2)
             {
                 LogTypeAndMessage log = new LogTypeAndMessage();
                 log.Type    = e.Args[i];
                 log.Message = e.Args[i + 1];
                 this.logArr.Add(log);
             }
         }
     }
     catch (Exception exception)
     {
         Console.WriteLine(exception.Message);
     }
 }