From 52cd5d33da3be0f22fb8666645e57d4ce3e2c036 Mon Sep 17 00:00:00 2001 From: Denis Arh Date: Thu, 1 Nov 2018 11:07:53 +0100 Subject: [PATCH] Move messages search rest endpoint under /search/messages, add controller, fix searching by query --- sam/docs/README.md | 39 ++++++++------ sam/docs/src/spec.json | 49 ++++++++++------- sam/docs/src/spec/channel.json | 2 +- sam/docs/src/spec/message.json | 28 ---------- sam/docs/src/spec/search.json | 58 ++++++++++++++++++++ sam/repository/message.go | 7 ++- sam/rest/handlers/message.go | 10 ---- sam/rest/handlers/search.go | 57 ++++++++++++++++++++ sam/rest/message.go | 7 --- sam/rest/request/message.go | 53 ------------------- sam/rest/request/search.go | 97 ++++++++++++++++++++++++++++++++++ sam/rest/router.go | 1 + sam/rest/search.go | 48 +++++++++++++++++ sam/types/message.go | 5 +- 14 files changed, 326 insertions(+), 135 deletions(-) create mode 100644 sam/docs/src/spec/search.json create mode 100644 sam/rest/handlers/search.go create mode 100644 sam/rest/request/search.go create mode 100644 sam/rest/search.go diff --git a/sam/docs/README.md b/sam/docs/README.md index 6762c1cac..8dab3d3cb 100644 --- a/sam/docs/README.md +++ b/sam/docs/README.md @@ -280,7 +280,7 @@ A channel is a representation of a sequence of messages. It has meta data like c | Parameter | Type | Method | Description | Default | Required? | | --------- | ---- | ------ | ----------- | ------- | --------- | | channelID | uint64 | PATH | Channel ID | N/A | YES | -| state | string | POST | Valid values: delete, restore, archive, unarchive | N/A | YES | +| state | string | POST | Valid values: delete, undelete, archive, unarchive | N/A | YES | ## Read channel details @@ -453,21 +453,6 @@ The following event types may be sent with a message event: | --------- | ---- | ------ | ----------- | ------- | --------- | | messageID | uint64 | PATH | Message ID | N/A | YES | -## Search messages - -#### Method - -| URI | Protocol | Method | Authentication | -| --- | -------- | ------ | -------------- | -| `/channels/{channelID}/messages/search` | HTTP/S | GET | Client ID, Session ID | - -#### Request parameters - -| Parameter | Type | Method | Description | Default | Required? | -| --------- | ---- | ------ | ----------- | ------- | --------- | -| query | string | GET | Search string to match against messages | N/A | NO | -| message_type | string | GET | Limit results to message type | N/A

Values: