sdk-go-zincsearch/api_search.go
2022-09-21 18:18:06 +08:00

563 lines
17 KiB
Go

/*
Zinc Search engine API
Zinc Search engine API documents https://docs.zincsearch.com
API version: 0.3.3
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package client
import (
"bytes"
"context"
"io/ioutil"
"net/http"
"net/url"
"strings"
)
type Search interface {
/*
DeleteByQuery Searches the index and deletes all matched documents
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param index Index
@return SearchDeleteByQueryRequest
*/
DeleteByQuery(ctx context.Context, index string) SearchDeleteByQueryRequest
// DeleteByQueryExecute executes the request
// @return MetaHTTPResponseDeleteByQuery
DeleteByQueryExecute(r SearchDeleteByQueryRequest) (*MetaHTTPResponseDeleteByQuery, *http.Response, error)
/*
MSearch Search V2 MultipleSearch for compatible ES
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return SearchMSearchRequest
*/
MSearch(ctx context.Context) SearchMSearchRequest
// MSearchExecute executes the request
// @return MetaSearchResponse
MSearchExecute(r SearchMSearchRequest) (*MetaSearchResponse, *http.Response, error)
/*
Search Search V2 DSL for compatible ES
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param index Index
@return SearchSearchRequest
*/
Search(ctx context.Context, index string) SearchSearchRequest
// SearchExecute executes the request
// @return MetaSearchResponse
SearchExecute(r SearchSearchRequest) (*MetaSearchResponse, *http.Response, error)
/*
SearchV1 Search V1
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param index Index
@return SearchSearchV1Request
*/
SearchV1(ctx context.Context, index string) SearchSearchV1Request
// SearchV1Execute executes the request
// @return MetaSearchResponse
SearchV1Execute(r SearchSearchV1Request) (*MetaSearchResponse, *http.Response, error)
}
// SearchService Search service
type SearchService service
type SearchDeleteByQueryRequest struct {
ctx context.Context
ApiService Search
index string
query *MetaZincQuery
}
// Query
func (r SearchDeleteByQueryRequest) Query(query MetaZincQuery) SearchDeleteByQueryRequest {
r.query = &query
return r
}
func (r SearchDeleteByQueryRequest) Execute() (*MetaHTTPResponseDeleteByQuery, *http.Response, error) {
return r.ApiService.DeleteByQueryExecute(r)
}
/*
DeleteByQuery Searches the index and deletes all matched documents
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param index Index
@return SearchDeleteByQueryRequest
*/
func (a *SearchService) DeleteByQuery(ctx context.Context, index string) SearchDeleteByQueryRequest {
return SearchDeleteByQueryRequest{
ApiService: a,
ctx: ctx,
index: index,
}
}
// Execute executes the request
// @return MetaHTTPResponseDeleteByQuery
func (a *SearchService) DeleteByQueryExecute(r SearchDeleteByQueryRequest) (*MetaHTTPResponseDeleteByQuery, *http.Response, error) {
var (
localVarHTTPMethod = http.MethodPost
localVarPostBody interface{}
formFiles []formFile
localVarReturnValue *MetaHTTPResponseDeleteByQuery
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "SearchService.DeleteByQuery")
if err != nil {
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/es/{index}/_delete_by_query"
localVarPath = strings.Replace(localVarPath, "{"+"index"+"}", url.PathEscape(parameterToString(r.index, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := url.Values{}
localVarFormParams := url.Values{}
if r.query == nil {
return localVarReturnValue, nil, reportError("query is required and must be specified")
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
// body params
localVarPostBody = r.query
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, err := a.client.callAPI(req)
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarHTTPResponse, err
}
localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarHTTPResponse.Body = ioutil.NopCloser(bytes.NewBuffer(localVarBody))
if err != nil {
return localVarReturnValue, localVarHTTPResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: localVarHTTPResponse.Status,
}
if localVarHTTPResponse.StatusCode == 400 {
var v MetaHTTPResponseError
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = err.Error()
return localVarReturnValue, localVarHTTPResponse, newErr
}
newErr.model = v
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
return localVarReturnValue, localVarHTTPResponse, nil
}
type SearchMSearchRequest struct {
ctx context.Context
ApiService Search
query *string
}
// Query
func (r SearchMSearchRequest) Query(query string) SearchMSearchRequest {
r.query = &query
return r
}
func (r SearchMSearchRequest) Execute() (*MetaSearchResponse, *http.Response, error) {
return r.ApiService.MSearchExecute(r)
}
/*
MSearch Search V2 MultipleSearch for compatible ES
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return SearchMSearchRequest
*/
func (a *SearchService) MSearch(ctx context.Context) SearchMSearchRequest {
return SearchMSearchRequest{
ApiService: a,
ctx: ctx,
}
}
// Execute executes the request
// @return MetaSearchResponse
func (a *SearchService) MSearchExecute(r SearchMSearchRequest) (*MetaSearchResponse, *http.Response, error) {
var (
localVarHTTPMethod = http.MethodPost
localVarPostBody interface{}
formFiles []formFile
localVarReturnValue *MetaSearchResponse
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "SearchService.MSearch")
if err != nil {
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/es/_msearch"
localVarHeaderParams := make(map[string]string)
localVarQueryParams := url.Values{}
localVarFormParams := url.Values{}
if r.query == nil {
return localVarReturnValue, nil, reportError("query is required and must be specified")
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"text/plain"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
// body params
localVarPostBody = r.query
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, err := a.client.callAPI(req)
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarHTTPResponse, err
}
localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarHTTPResponse.Body = ioutil.NopCloser(bytes.NewBuffer(localVarBody))
if err != nil {
return localVarReturnValue, localVarHTTPResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: localVarHTTPResponse.Status,
}
if localVarHTTPResponse.StatusCode == 400 {
var v MetaHTTPResponseError
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = err.Error()
return localVarReturnValue, localVarHTTPResponse, newErr
}
newErr.model = v
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
return localVarReturnValue, localVarHTTPResponse, nil
}
type SearchSearchRequest struct {
ctx context.Context
ApiService Search
index string
query *MetaZincQuery
}
// Query
func (r SearchSearchRequest) Query(query MetaZincQuery) SearchSearchRequest {
r.query = &query
return r
}
func (r SearchSearchRequest) Execute() (*MetaSearchResponse, *http.Response, error) {
return r.ApiService.SearchExecute(r)
}
/*
Search Search V2 DSL for compatible ES
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param index Index
@return SearchSearchRequest
*/
func (a *SearchService) Search(ctx context.Context, index string) SearchSearchRequest {
return SearchSearchRequest{
ApiService: a,
ctx: ctx,
index: index,
}
}
// Execute executes the request
// @return MetaSearchResponse
func (a *SearchService) SearchExecute(r SearchSearchRequest) (*MetaSearchResponse, *http.Response, error) {
var (
localVarHTTPMethod = http.MethodPost
localVarPostBody interface{}
formFiles []formFile
localVarReturnValue *MetaSearchResponse
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "SearchService.Search")
if err != nil {
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/es/{index}/_search"
localVarPath = strings.Replace(localVarPath, "{"+"index"+"}", url.PathEscape(parameterToString(r.index, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := url.Values{}
localVarFormParams := url.Values{}
if r.query == nil {
return localVarReturnValue, nil, reportError("query is required and must be specified")
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
// body params
localVarPostBody = r.query
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, err := a.client.callAPI(req)
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarHTTPResponse, err
}
localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarHTTPResponse.Body = ioutil.NopCloser(bytes.NewBuffer(localVarBody))
if err != nil {
return localVarReturnValue, localVarHTTPResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: localVarHTTPResponse.Status,
}
if localVarHTTPResponse.StatusCode == 400 {
var v MetaHTTPResponseError
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = err.Error()
return localVarReturnValue, localVarHTTPResponse, newErr
}
newErr.model = v
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
return localVarReturnValue, localVarHTTPResponse, nil
}
type SearchSearchV1Request struct {
ctx context.Context
ApiService Search
index string
query *V1ZincQuery
}
// Query
func (r SearchSearchV1Request) Query(query V1ZincQuery) SearchSearchV1Request {
r.query = &query
return r
}
func (r SearchSearchV1Request) Execute() (*MetaSearchResponse, *http.Response, error) {
return r.ApiService.SearchV1Execute(r)
}
/*
SearchV1 Search V1
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param index Index
@return SearchSearchV1Request
*/
func (a *SearchService) SearchV1(ctx context.Context, index string) SearchSearchV1Request {
return SearchSearchV1Request{
ApiService: a,
ctx: ctx,
index: index,
}
}
// Execute executes the request
// @return MetaSearchResponse
func (a *SearchService) SearchV1Execute(r SearchSearchV1Request) (*MetaSearchResponse, *http.Response, error) {
var (
localVarHTTPMethod = http.MethodPost
localVarPostBody interface{}
formFiles []formFile
localVarReturnValue *MetaSearchResponse
)
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "SearchService.SearchV1")
if err != nil {
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
}
localVarPath := localBasePath + "/api/{index}/_search"
localVarPath = strings.Replace(localVarPath, "{"+"index"+"}", url.PathEscape(parameterToString(r.index, "")), -1)
localVarHeaderParams := make(map[string]string)
localVarQueryParams := url.Values{}
localVarFormParams := url.Values{}
if r.query == nil {
return localVarReturnValue, nil, reportError("query is required and must be specified")
}
// to determine the Content-Type header
localVarHTTPContentTypes := []string{"application/json"}
// set Content-Type header
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
if localVarHTTPContentType != "" {
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
}
// to determine the Accept header
localVarHTTPHeaderAccepts := []string{"application/json"}
// set Accept header
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
if localVarHTTPHeaderAccept != "" {
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
}
// body params
localVarPostBody = r.query
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
if err != nil {
return localVarReturnValue, nil, err
}
localVarHTTPResponse, err := a.client.callAPI(req)
if err != nil || localVarHTTPResponse == nil {
return localVarReturnValue, localVarHTTPResponse, err
}
localVarBody, err := ioutil.ReadAll(localVarHTTPResponse.Body)
localVarHTTPResponse.Body.Close()
localVarHTTPResponse.Body = ioutil.NopCloser(bytes.NewBuffer(localVarBody))
if err != nil {
return localVarReturnValue, localVarHTTPResponse, err
}
if localVarHTTPResponse.StatusCode >= 300 {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: localVarHTTPResponse.Status,
}
if localVarHTTPResponse.StatusCode == 400 {
var v MetaHTTPResponseError
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr.error = err.Error()
return localVarReturnValue, localVarHTTPResponse, newErr
}
newErr.model = v
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
if err != nil {
newErr := &GenericOpenAPIError{
body: localVarBody,
error: err.Error(),
}
return localVarReturnValue, localVarHTTPResponse, newErr
}
return localVarReturnValue, localVarHTTPResponse, nil
}