/
Program.cs
54 lines (52 loc) · 1.21 KB
/
Program.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
namespace Atento
{
class Program
{
static void displayHelp(bool invalidCommand = false)
{
string description = "ATENTO - Alerta de TEndencias e Negociacoes para Traders Online";
string invalidCommandMessage = "ERRO: Comando invalido.";
string programName = AppDomain.CurrentDomain.FriendlyName;
string helpMessage =
$"Uso: {programName} <ativo> <preco_para_venda> <preco_para_compra>\n\n" +
$"Exemplo: {programName} PETR4 22.67 22.59";
if (invalidCommand)
{
helpMessage = invalidCommandMessage + "\n\n" + helpMessage;
}
else
{
helpMessage = description + "\n\n" + helpMessage;
}
Console.WriteLine(helpMessage);
}
static async Task Main(string[] args)
{
if (args.Length == 0)
{
displayHelp();
return;
}
if (args.Length != 3)
{
displayHelp(invalidCommand: true);
return;
}
decimal priceToSell = 0;
decimal priceToBuy = 0;
string stockSymbol = "";
try
{
stockSymbol = args[0];
priceToSell = Decimal.Parse(args[1]);
priceToBuy = Decimal.Parse(args[2]);
}
catch (FormatException)
{
displayHelp(invalidCommand: true);
return;
}
await Worker.watchStock(stockSymbol, priceToSell, priceToBuy);
}
}
}