[Groonga-commit] groonga/grnci at 7ce02b0 [master] Simplify DB.Schema.

Back to archive index

Susumu Yata null+****@clear*****
Tue Sep 12 16:26:13 JST 2017


Susumu Yata	2017-09-12 16:26:13 +0900 (Tue, 12 Sep 2017)

  New Revision: 7ce02b0217a53512a0674a06decda47ba84dc3c0
  https://github.com/groonga/grnci/commit/7ce02b0217a53512a0674a06decda47ba84dc3c0

  Message:
    Simplify DB.Schema.
    
    Ref: #42

  Modified files:
    v2/db.go
    v2/libgrn/db_test.go

  Modified: v2/db.go (+9 -10)
===================================================================
--- v2/db.go    2017-09-12 16:24:09 +0900 (655664f)
+++ v2/db.go    2017-09-12 16:26:13 +0900 (48b21f8)
@@ -1543,26 +1543,25 @@ type DBSchema struct {
 }
 
 // Schema executes schema.
-func (db *DB) Schema() (*DBSchema, Response, error) {
+func (db *DB) Schema() (*DBSchema, error) {
 	resp, err := db.Invoke("schema", nil, nil)
 	if err != nil {
-		return nil, nil, err
+		return nil, err
 	}
 	defer resp.Close()
 	jsonData, err := ioutil.ReadAll(resp)
 	if err != nil {
-		return nil, resp, err
+		return nil, err
 	}
 	var result DBSchema
-	if err := json.Unmarshal(jsonData, &result); err != nil {
-		if resp.Err() != nil {
-			return nil, resp, nil
+	if len(jsonData) != 0 {
+		if err := json.Unmarshal(jsonData, &result); err != nil {
+			return nil, NewError(ResponseError, "json.Unmarshal failed.", map[string]interface{}{
+				"error": err.Error(),
+			})
 		}
-		return nil, resp, NewError(ResponseError, "json.Unmarshal failed.", map[string]interface{}{
-			"error": err.Error(),
-		})
 	}
-	return &result, resp, nil
+	return &result, resp.Err()
 }
 
 // DBSelectOptionsColumn stores --columns[NAME].

  Modified: v2/libgrn/db_test.go (+1 -4)
===================================================================
--- v2/libgrn/db_test.go    2017-09-12 16:24:09 +0900 (d084bf5)
+++ v2/libgrn/db_test.go    2017-09-12 16:26:13 +0900 (90ba0aa)
@@ -759,10 +759,7 @@ func TestDBSchema(t *testing.T) {
 
 	db.PluginRegister("token_filters/stem")
 	db.TableCreate("Tbl", nil)
-	result, resp, err := db.Schema()
-	if err == nil {
-		err = resp.Err()
-	}
+	result, err := db.Schema()
 	if err != nil {
 		t.Fatalf("db.Schema failed: %v", err)
 	}
-------------- next part --------------
HTML����������������������������...
URL: https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20170912/f6253c47/attachment-0001.htm 



More information about the Groonga-commit mailing list
Back to archive index