diff options
author | Jake Champlin <jake.champlin.27@gmail.com> | 2017-06-06 12:40:07 -0400 |
---|---|---|
committer | Jake Champlin <jake.champlin.27@gmail.com> | 2017-06-06 12:40:07 -0400 |
commit | bae9f6d2fd5eb5bc80929bd393932b23f14d7c93 (patch) | |
tree | ca9ab12a7d78b1fc27a8f734729081357ce6d252 /vendor/github.com/hashicorp/go-plugin/server_mux.go | |
parent | 254c495b6bebab3fb72a243c4bce858d79e6ee99 (diff) | |
download | terraform-provider-statuscake-bae9f6d2fd5eb5bc80929bd393932b23f14d7c93.tar.gz terraform-provider-statuscake-bae9f6d2fd5eb5bc80929bd393932b23f14d7c93.tar.zst terraform-provider-statuscake-bae9f6d2fd5eb5bc80929bd393932b23f14d7c93.zip |
Initial transfer of provider code
Diffstat (limited to 'vendor/github.com/hashicorp/go-plugin/server_mux.go')
-rw-r--r-- | vendor/github.com/hashicorp/go-plugin/server_mux.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/vendor/github.com/hashicorp/go-plugin/server_mux.go b/vendor/github.com/hashicorp/go-plugin/server_mux.go new file mode 100644 index 0000000..033079e --- /dev/null +++ b/vendor/github.com/hashicorp/go-plugin/server_mux.go | |||
@@ -0,0 +1,31 @@ | |||
1 | package plugin | ||
2 | |||
3 | import ( | ||
4 | "fmt" | ||
5 | "os" | ||
6 | ) | ||
7 | |||
8 | // ServeMuxMap is the type that is used to configure ServeMux | ||
9 | type ServeMuxMap map[string]*ServeConfig | ||
10 | |||
11 | // ServeMux is like Serve, but serves multiple types of plugins determined | ||
12 | // by the argument given on the command-line. | ||
13 | // | ||
14 | // This command doesn't return until the plugin is done being executed. Any | ||
15 | // errors are logged or output to stderr. | ||
16 | func ServeMux(m ServeMuxMap) { | ||
17 | if len(os.Args) != 2 { | ||
18 | fmt.Fprintf(os.Stderr, | ||
19 | "Invoked improperly. This is an internal command that shouldn't\n"+ | ||
20 | "be manually invoked.\n") | ||
21 | os.Exit(1) | ||
22 | } | ||
23 | |||
24 | opts, ok := m[os.Args[1]] | ||
25 | if !ok { | ||
26 | fmt.Fprintf(os.Stderr, "Unknown plugin: %s\n", os.Args[1]) | ||
27 | os.Exit(1) | ||
28 | } | ||
29 | |||
30 | Serve(opts) | ||
31 | } | ||