Explorar o código

etcdctl: move format to format.go

Xiang Li %!s(int64=10) %!d(string=hai) anos
pai
achega
079e7c10a0
Modificáronse 2 ficheiros con 74 adicións e 52 borrados
  1. 74 0
      etcdctl/command/format.go
  2. 0 52
      etcdctl/command/handle.go

+ 74 - 0
etcdctl/command/format.go

@@ -0,0 +1,74 @@
+// Copyright 2015 CoreOS, Inc.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package command
+
+import (
+	"encoding/json"
+	"fmt"
+	"os"
+
+	"github.com/coreos/go-etcd/etcd"
+)
+
+// printKey writes the etcd response to STDOUT in the given format.
+func printKey(resp *etcd.Response, format string) {
+	// printKey is only for keys, error on directories
+	if resp.Node.Dir == true {
+		fmt.Fprintln(os.Stderr, fmt.Sprintf("Cannot print key [%s: Is a directory]", resp.Node.Key))
+		os.Exit(1)
+	}
+	printKeyOnly(resp, format)
+}
+
+// printAll prints the etcd response in the given format in its best efforts.
+func printAll(resp *etcd.Response, format string) {
+	if resp.Node.Dir == true {
+		return
+	}
+	printKeyOnly(resp, format)
+}
+
+// printKeyOnly only supports to print key correctly.
+func printKeyOnly(resp *etcd.Response, format string) {
+	// Format the result.
+	switch format {
+	case "simple":
+		fmt.Println(resp.Node.Value)
+	case "extended":
+		// Extended prints in a rfc2822 style format
+		fmt.Println("Key:", resp.Node.Key)
+		fmt.Println("Created-Index:", resp.Node.CreatedIndex)
+		fmt.Println("Modified-Index:", resp.Node.ModifiedIndex)
+
+		if resp.PrevNode != nil {
+			fmt.Println("PrevNode.Value:", resp.PrevNode.Value)
+		}
+
+		fmt.Println("TTL:", resp.Node.TTL)
+		fmt.Println("Etcd-Index:", resp.EtcdIndex)
+		fmt.Println("Raft-Index:", resp.RaftIndex)
+		fmt.Println("Raft-Term:", resp.RaftTerm)
+		fmt.Println("")
+		fmt.Println(resp.Node.Value)
+	case "json":
+		b, err := json.Marshal(resp)
+		if err != nil {
+			panic(err)
+		}
+		fmt.Println(string(b))
+	default:
+		fmt.Fprintln(os.Stderr, "Unsupported output format:", format)
+	}
+}

+ 0 - 52
etcdctl/command/handle.go

@@ -15,7 +15,6 @@
 package command
 
 import (
-	"encoding/json"
 	"errors"
 	"fmt"
 	"os"
@@ -114,54 +113,3 @@ func handleKey(c *cli.Context, fn handlerFunc) {
 func handleAll(c *cli.Context, fn handlerFunc) {
 	handlePrint(c, fn, printAll)
 }
-
-// printKey writes the etcd response to STDOUT in the given format.
-func printKey(resp *etcd.Response, format string) {
-	// printKey is only for keys, error on directories
-	if resp.Node.Dir == true {
-		fmt.Fprintln(os.Stderr, fmt.Sprintf("Cannot print key [%s: Is a directory]", resp.Node.Key))
-		os.Exit(1)
-	}
-	printKeyOnly(resp, format)
-}
-
-// printAll prints the etcd response in the given format in its best efforts.
-func printAll(resp *etcd.Response, format string) {
-	if resp.Node.Dir == true {
-		return
-	}
-	printKeyOnly(resp, format)
-}
-
-// printKeyOnly only supports to print key correctly.
-func printKeyOnly(resp *etcd.Response, format string) {
-	// Format the result.
-	switch format {
-	case "simple":
-		fmt.Println(resp.Node.Value)
-	case "extended":
-		// Extended prints in a rfc2822 style format
-		fmt.Println("Key:", resp.Node.Key)
-		fmt.Println("Created-Index:", resp.Node.CreatedIndex)
-		fmt.Println("Modified-Index:", resp.Node.ModifiedIndex)
-
-		if resp.PrevNode != nil {
-			fmt.Println("PrevNode.Value:", resp.PrevNode.Value)
-		}
-
-		fmt.Println("TTL:", resp.Node.TTL)
-		fmt.Println("Etcd-Index:", resp.EtcdIndex)
-		fmt.Println("Raft-Index:", resp.RaftIndex)
-		fmt.Println("Raft-Term:", resp.RaftTerm)
-		fmt.Println("")
-		fmt.Println(resp.Node.Value)
-	case "json":
-		b, err := json.Marshal(resp)
-		if err != nil {
-			panic(err)
-		}
-		fmt.Println(string(b))
-	default:
-		fmt.Fprintln(os.Stderr, "Unsupported output format:", format)
-	}
-}