Versions in this module Expand all Collapse all v2 v2.0.1 Aug 27, 2026 v2.0.0 Aug 21, 2026 Changes in this version + const AllowedSpecialCharacters + const ParamCDIDs + const ParamCensus + const ParamContentType + const ParamDatasetIDs + const ParamDimensions + const ParamHighlight + const ParamLimit + const ParamNLPWeighting + const ParamOffset + const ParamQ + const ParamSort + const ParamSubtypeConfirmed + const ParamSubtypePostponed + const ParamSubtypeProvisional + const ParamTopics + const ParamURIPrefix + func AddNlpToSearch(ctx context.Context, queryBuilder QueryBuilder, params url.Values, ...) *query.NlpCriteria + func CreateReleaseRequest(w http.ResponseWriter, req *http.Request, validator QueryParamValidator) (string, *query.ReleaseSearchRequest) + func CreateRequests(w http.ResponseWriter, req *http.Request, cfg *config.Config, ...) (string, *query.SearchRequest, *query.CountRequest) + func SearchHandlerFunc(validator QueryParamValidator, queryBuilder QueryBuilder, cfg *config.Config, ...) http.HandlerFunc + func SearchReleasesHandlerFunc(validator QueryParamValidator, builder ReleaseQueryBuilder, ...) http.HandlerFunc + func SearchURIsHandlerFunc(validator QueryParamValidator, queryBuilder QueryBuilder, cfg *config.Config, ...) http.HandlerFunc + type AuthHandler interface + Require func(required auth.Permissions, handler http.HandlerFunc) http.HandlerFunc + type AuthHandlerMock struct + RequireFunc func(required auth.Permissions, handler http.HandlerFunc) http.HandlerFunc + func (mock *AuthHandlerMock) Require(required auth.Permissions, handler http.HandlerFunc) http.HandlerFunc + func (mock *AuthHandlerMock) RequireCalls() []struct{ ... } + type ClientList struct + BerlinClient berlin.Clienter + CategoryClient category.Clienter + DpESClient DpElasticSearcher + ScrubberClient scrubber.Clienter + func NewClientList(brl berlin.Clienter, cat category.Clienter, dpEsClient DpElasticSearcher, ...) *ClientList + type DpElasticSearcher interface + Checker func(ctx context.Context, state *health.CheckState) error + Count func(ctx context.Context, count client.Count) ([]byte, error) + CreateIndex func(ctx context.Context, indexName string, indexSettings []byte) error + MultiSearch func(ctx context.Context, searches []client.Search, params *client.QueryParams) ([]byte, error) + type DpElasticSearcherMock struct + CheckerFunc func(ctx context.Context, state *health.CheckState) error + CountFunc func(ctx context.Context, count client.Count) ([]byte, error) + CreateIndexFunc func(ctx context.Context, indexName string, indexSettings []byte) error + MultiSearchFunc func(ctx context.Context, searches []client.Search, params *client.QueryParams) ([]byte, error) + func (mock *DpElasticSearcherMock) Checker(ctx context.Context, state *health.CheckState) error + func (mock *DpElasticSearcherMock) CheckerCalls() []struct{ ... } + func (mock *DpElasticSearcherMock) Count(ctx context.Context, count client.Count) ([]byte, error) + func (mock *DpElasticSearcherMock) CountCalls() []struct{ ... } + func (mock *DpElasticSearcherMock) CreateIndex(ctx context.Context, indexName string, indexSettings []byte) error + func (mock *DpElasticSearcherMock) CreateIndexCalls() []struct{ ... } + func (mock *DpElasticSearcherMock) MultiSearch(ctx context.Context, searches []client.Search, params *client.QueryParams) ([]byte, error) + func (mock *DpElasticSearcherMock) MultiSearchCalls() []struct{ ... } + type QueryBuilder interface + AddNlpCategorySearch func(nlpCriteria *query.NlpCriteria, category string, subCategory string, ...) *query.NlpCriteria + AddNlpSubdivisionSearch func(nlpCriteria *query.NlpCriteria, subdivisionWords string) *query.NlpCriteria + BuildCountQuery func(ctx context.Context, req *query.CountRequest) ([]byte, error) + BuildSearchQuery func(ctx context.Context, req *query.SearchRequest) ([]byte, error) + type QueryBuilderMock struct + AddNlpCategorySearchFunc func(nlpCriteria *query.NlpCriteria, category string, subCategory string, ...) *query.NlpCriteria + AddNlpSubdivisionSearchFunc func(nlpCriteria *query.NlpCriteria, subdivisionWords string) *query.NlpCriteria + BuildCountQueryFunc func(ctx context.Context, req *query.CountRequest) ([]byte, error) + BuildSearchQueryFunc func(ctx context.Context, req *query.SearchRequest) ([]byte, error) + func (mock *QueryBuilderMock) AddNlpCategorySearch(nlpCriteria *query.NlpCriteria, category string, subCategory string, ...) *query.NlpCriteria + func (mock *QueryBuilderMock) AddNlpCategorySearchCalls() []struct{ ... } + func (mock *QueryBuilderMock) AddNlpSubdivisionSearch(nlpCriteria *query.NlpCriteria, subdivisionWords string) *query.NlpCriteria + func (mock *QueryBuilderMock) AddNlpSubdivisionSearchCalls() []struct{ ... } + func (mock *QueryBuilderMock) BuildCountQuery(ctx context.Context, req *query.CountRequest) ([]byte, error) + func (mock *QueryBuilderMock) BuildCountQueryCalls() []struct{ ... } + func (mock *QueryBuilderMock) BuildSearchQuery(ctx context.Context, req *query.SearchRequest) ([]byte, error) + func (mock *QueryBuilderMock) BuildSearchQueryCalls() []struct{ ... } + type QueryParamValidator interface + Validate func(ctx context.Context, name, value string) (any, error) + type QueryParamValidatorMock struct + ValidateFunc func(ctx context.Context, name string, value string) (any, error) + func (mock *QueryParamValidatorMock) Validate(ctx context.Context, name string, value string) (any, error) + func (mock *QueryParamValidatorMock) ValidateCalls() []struct{ ... } + type ReleaseQueryBuilder interface + BuildSearchQuery func(ctx context.Context, request interface{}) ([]client.Search, error) + type ReleaseQueryBuilderMock struct + BuildSearchQueryFunc func(ctx context.Context, request interface{}) ([]client.Search, error) + func (mock *ReleaseQueryBuilderMock) BuildSearchQuery(ctx context.Context, request interface{}) ([]client.Search, error) + func (mock *ReleaseQueryBuilderMock) BuildSearchQueryCalls() []struct{ ... } + type ReleaseResponseTransformer interface + TransformSearchResponse func(ctx context.Context, responseData []byte, req query.ReleaseSearchRequest, ...) ([]byte, error) + type ReleaseResponseTransformerMock struct + TransformSearchResponseFunc func(ctx context.Context, responseData []byte, req query.ReleaseSearchRequest, ...) ([]byte, error) + func (mock *ReleaseResponseTransformerMock) TransformSearchResponse(ctx context.Context, responseData []byte, req query.ReleaseSearchRequest, ...) ([]byte, error) + func (mock *ReleaseResponseTransformerMock) TransformSearchResponseCalls() []struct{ ... } + type ResponseTransformer interface + TransformCountResponse func(ctx context.Context, responseData []byte) (int, error) + TransformSearchResponse func(ctx context.Context, responseData []byte, query string, highlight bool) ([]byte, error) + type ResponseTransformerMock struct + TransformCountResponseFunc func(ctx context.Context, responseData []byte) (int, error) + TransformSearchResponseFunc func(ctx context.Context, responseData []byte, queryMoqParam string, highlight bool) ([]byte, error) + func (mock *ResponseTransformerMock) TransformCountResponse(ctx context.Context, responseData []byte) (int, error) + func (mock *ResponseTransformerMock) TransformCountResponseCalls() []struct{ ... } + func (mock *ResponseTransformerMock) TransformSearchResponse(ctx context.Context, responseData []byte, queryMoqParam string, highlight bool) ([]byte, error) + func (mock *ResponseTransformerMock) TransformSearchResponseCalls() []struct{ ... } + type SearchAPI struct + Router *mux.Router + func NewSearchAPI(router *mux.Router, clientList *ClientList, permissions AuthHandler) *SearchAPI + func (a *SearchAPI) RegisterGetSearch(validator QueryParamValidator, builder QueryBuilder, ...) *SearchAPI + func (a *SearchAPI) RegisterGetSearchReleases(validator QueryParamValidator, builder ReleaseQueryBuilder, ...) *SearchAPI + func (a *SearchAPI) RegisterPostSearch() *SearchAPI + func (a *SearchAPI) RegisterPostSearchURIs(validator QueryParamValidator, builder QueryBuilder, cfg *config.Config, ...) *SearchAPI + func (a SearchAPI) CreateSearchIndexHandlerFunc(w http.ResponseWriter, req *http.Request) + type URIsRequest struct + Limit int + Offset int + Sort string + URIs []string Other modules containing this package github.com/ONSdigital/dp-search-api