diff options
Diffstat (limited to 'Software/Visual_Studio/DataStore/Tango.DataStore.CLI/Options.cs')
| -rw-r--r-- | Software/Visual_Studio/DataStore/Tango.DataStore.CLI/Options.cs | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Software/Visual_Studio/DataStore/Tango.DataStore.CLI/Options.cs b/Software/Visual_Studio/DataStore/Tango.DataStore.CLI/Options.cs new file mode 100644 index 000000000..fd91a5722 --- /dev/null +++ b/Software/Visual_Studio/DataStore/Tango.DataStore.CLI/Options.cs @@ -0,0 +1,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; } + } +} |
