Projekt

Obecné

Profil

Stáhnout (1.28 KB) Statistiky
| Větev: | Tag: | Revize:
1 9cc42e60 Eliška Mourycová
//
2
// Author: Eliska Mourycova
3
//
4
5
using System;
6 4129ce12 Eliška Mourycová
using System.Collections.Generic;
7
using System.Linq;
8
using System.Text;
9
using System.Threading.Tasks;
10
11
namespace ServerApp.User
12
{
13 9cc42e60 Eliška Mourycová
	/// <summary>
14
	/// This class represents a command input by the admin
15
	/// </summary>
16 4129ce12 Eliška Mourycová
	public class Command
17
	{
18 9cc42e60 Eliška Mourycová
		/// <summary>
19
		/// The whole string input
20
		/// </summary>
21 c4383c00 Eliška Mourycová
		public string WholeCommand { get; set; }
22 9cc42e60 Eliška Mourycová
23
		/// <summary>
24
		/// The main part of the command
25
		/// </summary>
26 4129ce12 Eliška Mourycová
		public string MainCommand { get; set; }
27 9cc42e60 Eliška Mourycová
28
		/// <summary>
29
		/// The flags and data associated with the command
30
		/// </summary>
31 4129ce12 Eliška Mourycová
		public Dictionary<string, List<string>> FlagsAndData { get; }
32 9cc42e60 Eliška Mourycová
33
		// the last flag used
34 4129ce12 Eliška Mourycová
		private string lastFlag;
35
36
		public Command()
37
		{
38
			MainCommand = "";
39
			FlagsAndData = new Dictionary<string, List<string>>();
40
			lastFlag = "";
41
		}
42
43 9cc42e60 Eliška Mourycová
		/// <summary>
44
		/// Adds a flag to the dictionary
45
		/// </summary>
46
		/// <param name="flag">The flag to add</param>
47 4129ce12 Eliška Mourycová
		public void AddFlag(string flag)
48
		{
49
			FlagsAndData.Add(flag, new List<string>());
50
			lastFlag = flag;
51
		}
52
53 9cc42e60 Eliška Mourycová
		/// <summary>
54
		/// Adds data after a flag
55
		/// </summary>
56
		/// <param name="data">The data to add</param>
57 4129ce12 Eliška Mourycová
		public void AddData(string data)
58
		{
59 9cc42e60 Eliška Mourycová
			if(FlagsAndData.ContainsKey(lastFlag))
60
				FlagsAndData[lastFlag].Add(data);
61 4129ce12 Eliška Mourycová
		}
62
	}
63
}