You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SiteSearchAPI (public interface) returns org.elasticsearch.search.aggregations.Aggregation and throws org.elasticsearch.ElasticsearchException. SiteSearchWebAPI (Velocity ViewTool) casts directly to concrete ES aggregation implementation classes (InternalDateHistogram, StringTerms, StringTerms.Bucket). This blocks Site Search from being served by OpenSearch in Phase 3.
Priority: Blocking Phase 3 — Site Search Dependency:OSSiteSearchAPI implementation (#34609)
Scope
Define vendor-neutral DTO IndexAggregation (and sub-types for date histogram / terms) under com.dotcms.content.index.domain
Update SiteSearchAPI — replace Aggregation return type with IndexAggregation; replace ElasticsearchException throws with DotSearchException
Update SiteSearchWebAPI — remove casts to InternalDateHistogram, StringTerms, Bucket; use IndexAggregation API
Update ESSiteSearchAPI — adapt ES aggregation results to IndexAggregation DTO (adapter pattern)
Description
SiteSearchAPI(public interface) returnsorg.elasticsearch.search.aggregations.Aggregationand throwsorg.elasticsearch.ElasticsearchException.SiteSearchWebAPI(Velocity ViewTool) casts directly to concrete ES aggregation implementation classes (InternalDateHistogram,StringTerms,StringTerms.Bucket). This blocks Site Search from being served by OpenSearch in Phase 3.Priority: Blocking Phase 3 — Site Search
Dependency:
OSSiteSearchAPIimplementation (#34609)Scope
IndexAggregation(and sub-types for date histogram / terms) undercom.dotcms.content.index.domainSiteSearchAPI— replaceAggregationreturn type withIndexAggregation; replaceElasticsearchExceptionthrows withDotSearchExceptionSiteSearchWebAPI— remove casts toInternalDateHistogram,StringTerms,Bucket; useIndexAggregationAPIESSiteSearchAPI— adapt ES aggregation results toIndexAggregationDTO (adapter pattern)OSSiteSearchAPI(from [TASK] Migrate Search Layer #34609) — implement using OS aggregation types, return sameIndexAggregationDTOChecklist
IndexAggregationDTO and sub-types incom.dotcms.content.index.domainAggregation,ElasticsearchExceptionfromSiteSearchAPIpublic signaturesInternalDateHistogram,StringTerms,Bucketcasts fromSiteSearchWebAPIESSiteSearchAPIto produceIndexAggregationfrom ES resultsOSSiteSearchAPIreturnsIndexAggregationfrom OS resultsAcceptance Criteria
org.elasticsearch.*imports inSiteSearchAPIandSiteSearchWebAPI$SiteSearchreceive the same aggregation data structureSiteSearchWebAPI