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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
using CommandLine;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.DataStore.Web;
using Tango.Web;
namespace Tango.DataStore.CLI
{
public class OptionsBase
{
[Option(longName: "email", HelpText = "Email address.")]
public String Email { get; set; }
[Option(longName: "password", HelpText = "Password.")]
public String Password { get; set; }
[Option(longName: "env", HelpText = "The target environment.", Required = true)]
public DeploymentSlot Environment { get; set; }
}
[Verb("get", HelpText = "Get a data store item.")]
public class GetOptions : OptionsBase
{
[Option(longName: "sn", HelpText = "Machine serial number. if not specified will return only global values.")]
public String MachineSerialNumber { get; set; }
[Option(longName: "collection", HelpText = "Collection name.\nIf not specified will return all collections.\nIf 'key' if specified the 'collection' must be specified.")]
public String Collection { get; set; }
[Option(longName: "key", HelpText = "Item key. If not specified will return the entire collection.")]
public String Key { get; set; }
}
[Verb("put", HelpText = "Put a new, or update an existing data store item.")]
public class PutOptions : OptionsBase
{
[Option(longName: "sn", HelpText = "Machine serial number. If not specified will put a value on the global data store.")]
public String MachineSerialNumber { get; set; }
[Option(longName: "collection", HelpText = "New or existing collection name.", Required = true)]
public String Collection { get; set; }
[Option(longName: "key", HelpText = "New or existing item key", Required = true)]
public String Key { get; set; }
[Option(longName: "data-type", HelpText = "Item data type", Required = true)]
public Web.DataType DataType { get; set; }
[Option(longName: "proto-type", HelpText = "Protobuf message type when data-type is 'Proto'.")]
public MessageType ProtoMessageType { get; set; }
[Option(longName: "value", HelpText = "Item value", Required = true)]
public String Value { get; set; }
}
[Verb("login-config", HelpText = "Stores the specified credentials for use with the --auto-login flag.")]
public class LoginConfig
{
[Option(longName: "email", HelpText = "Email address.")]
public String Email { get; set; }
[Option(longName: "password", HelpText = "Password.")]
public String Password { get; set; }
}
}
|