Skip to content

Commit 46312d1

Browse files
committed
Fix search templates API
1 parent 0103dcf commit 46312d1

7 files changed

+33
-30
lines changed

CHANGELOG-5.0.md

+5
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,11 @@ Use the `terminate_after` parameter instead.
5050

5151
Both of these fields were deprecated and are now [removed](https://www.elastic.co/guide/en/elasticsearch/reference/master/breaking_50_mapping_changes.html#_literal__timestamp_literal_and_literal__ttl_literal).
5252

53+
## Search template Put/Delete API returns `acknowledged` only
54+
55+
The response type for Put/Delete search templates has changed.
56+
It only returns a single `acknowledged` flag now.
57+
5358
## Fields has been renamed to Stored Fields
5459

5560
The `fields` parameter has been renamed to `stored_fields`.

acknowledged_response.go

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
// Copyright 2012-present Oliver Eilhard. All rights reserved.
2+
// Use of this source code is governed by a MIT-license.
3+
// See http://olivere.mit-license.org/license.txt for details.
4+
5+
package elastic
6+
7+
// AcknowledgedResponse is returned from various APIs. It simply indicates
8+
// whether the operation is ack'd or not.
9+
type AcknowledgedResponse struct {
10+
Acknowledged bool `json:"acknowledged"`
11+
}

delete_template.go

+2-11
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ func (s *DeleteTemplateService) Validate() error {
8383
}
8484

8585
// Do executes the operation.
86-
func (s *DeleteTemplateService) Do(ctx context.Context) (*DeleteTemplateResponse, error) {
86+
func (s *DeleteTemplateService) Do(ctx context.Context) (*AcknowledgedResponse, error) {
8787
// Check pre-conditions
8888
if err := s.Validate(); err != nil {
8989
return nil, err
@@ -102,18 +102,9 @@ func (s *DeleteTemplateService) Do(ctx context.Context) (*DeleteTemplateResponse
102102
}
103103

104104
// Return operation response
105-
ret := new(DeleteTemplateResponse)
105+
ret := new(AcknowledgedResponse)
106106
if err := s.client.decoder.Decode(res.Body, ret); err != nil {
107107
return nil, err
108108
}
109109
return ret, nil
110110
}
111-
112-
// DeleteTemplateResponse is the response of DeleteTemplateService.Do.
113-
type DeleteTemplateResponse struct {
114-
Found bool `json:"found"`
115-
Index string `json:"_index"`
116-
Type string `json:"_type"`
117-
Id string `json:"_id"`
118-
Version int `json:"_version"`
119-
}

example_test.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -464,8 +464,8 @@ func ExamplePutTemplateService() {
464464
if err != nil {
465465
panic(err)
466466
}
467-
if resp.Created {
468-
fmt.Println("search template created")
467+
if resp.Acknowledged {
468+
fmt.Println("search template creation acknowledged")
469469
}
470470
}
471471

@@ -494,7 +494,7 @@ func ExampleDeleteTemplateService() {
494494
if err != nil {
495495
panic(err)
496496
}
497-
if resp != nil && resp.Found {
497+
if resp != nil && resp.Acknowledged {
498498
fmt.Println("template deleted")
499499
}
500500
}

get_template_test.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ func TestGetPutDeleteTemplate(t *testing.T) {
3232
if putres == nil {
3333
t.Fatalf("expected response; got: %v", putres)
3434
}
35-
if !putres.Created {
36-
t.Fatalf("expected template to be created; got: %v", putres.Created)
35+
if !putres.Acknowledged {
36+
t.Fatalf("expected template creation to be acknowledged; got: %v", putres.Acknowledged)
3737
}
3838

3939
// Always delete template

search_template.go put_template.go

+2-9
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ func (s *PutTemplateService) Validate() error {
111111
}
112112

113113
// Do executes the operation.
114-
func (s *PutTemplateService) Do(ctx context.Context) (*PutTemplateResponse, error) {
114+
func (s *PutTemplateService) Do(ctx context.Context) (*AcknowledgedResponse, error) {
115115
// Check pre-conditions
116116
if err := s.Validate(); err != nil {
117117
return nil, err
@@ -138,16 +138,9 @@ func (s *PutTemplateService) Do(ctx context.Context) (*PutTemplateResponse, erro
138138
}
139139

140140
// Return operation response
141-
ret := new(PutTemplateResponse)
141+
ret := new(AcknowledgedResponse)
142142
if err := s.client.decoder.Decode(res.Body, ret); err != nil {
143143
return nil, err
144144
}
145145
return ret, nil
146146
}
147-
148-
// PutTemplateResponse is the response of PutTemplateService.Do.
149-
type PutTemplateResponse struct {
150-
Id string `json:"_id"`
151-
Version int `json:"_version"`
152-
Created bool `json:"created"`
153-
}

search_templates_test.go put_template_test.go

+8-5
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
package elastic
66

77
import (
8+
"log"
9+
"os"
810
"testing"
911

1012
"golang.org/x/net/context"
@@ -24,8 +26,8 @@ func TestSearchTemplatesLifecycle(t *testing.T) {
2426
if cresp == nil {
2527
t.Fatalf("expected response != nil; got: %v", cresp)
2628
}
27-
if !cresp.Created {
28-
t.Errorf("expected created = %v; got: %v", true, cresp.Created)
29+
if !cresp.Acknowledged {
30+
t.Errorf("expected acknowledged = %v; got: %v", true, cresp.Acknowledged)
2931
}
3032

3133
// Get template
@@ -48,13 +50,14 @@ func TestSearchTemplatesLifecycle(t *testing.T) {
4850
if dresp == nil {
4951
t.Fatalf("expected response != nil; got: %v", dresp)
5052
}
51-
if !dresp.Found {
52-
t.Fatalf("expected found = %v; got: %v", true, dresp.Found)
53+
if !dresp.Acknowledged {
54+
t.Fatalf("expected acknowledged = %v; got: %v", true, dresp.Acknowledged)
5355
}
5456
}
5557

5658
func TestSearchTemplatesInlineQuery(t *testing.T) {
57-
client := setupTestClientAndCreateIndex(t)
59+
// client := setupTestClientAndCreateIndex(t)
60+
client := setupTestClientAndCreateIndex(t, SetTraceLog(log.New(os.Stdout, "", 0)))
5861

5962
tweet1 := tweet{User: "olivere", Message: "Welcome to Golang and Elasticsearch."}
6063
tweet2 := tweet{User: "olivere", Message: "Another unrelated topic."}

0 commit comments

Comments
 (0)