Class FacetEndpoint
java.lang.Object
com.broadleafcommerce.search.core.web.endpoint.FacetEndpoint
@FrameworkRestController
@FrameworkMapping("/facets")
@DataRouteByKey("search")
public class FacetEndpoint
extends Object
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionFacetEndpoint
(FacetService<com.broadleafcommerce.search.api.domain.Facet> facetService, FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitionService, com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> translationEntityService) -
Method Summary
Modifier and TypeMethodDescriptionprotected cz.jirutka.rsql.parser.ast.Node
applyFieldIndexableTypeFilters
(String fieldIndexableType, cz.jirutka.rsql.parser.ast.Node filters) protected com.broadleafcommerce.search.api.domain.FieldRef
buildFieldRef
(com.broadleafcommerce.search.api.domain.FieldDefinition field) Builds theFieldRef
object based on aFieldDefinition
com.broadleafcommerce.search.api.domain.Facet
createFacet
(com.broadleafcommerce.search.api.domain.Facet facet, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) void
deleteFacet
(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) protected FacetService<com.broadleafcommerce.search.api.domain.Facet>
protected FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition>
protected com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node>
protected com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation>
protected com.broadleafcommerce.common.extension.TypeFactory
org.springframework.data.domain.Page<com.broadleafcommerce.search.api.domain.Facet>
readAllFacets
(com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, String query, String fieldIndexableType, cz.jirutka.rsql.parser.ast.Node filters, org.springframework.data.domain.Pageable page) com.broadleafcommerce.search.api.domain.Facet
readFacetById
(String id, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) com.broadleafcommerce.translation.service.dto.TranslationsPayload
replaceAllFacetTranslations
(com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, Locale locale, com.broadleafcommerce.translation.service.dto.TranslationsPayload translationRequest) com.broadleafcommerce.search.api.domain.Facet
replaceFacet
(com.broadleafcommerce.search.api.domain.Facet facet, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, String id) void
setParser
(com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> parser) void
setTypeFactory
(com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-
Field Details
-
BASE_URI
- See Also:
-
STRING_EQUALS
- See Also:
-
FIELD_INDEXABLE_TYPE
- See Also:
-
-
Constructor Details
-
FacetEndpoint
public FacetEndpoint(FacetService<com.broadleafcommerce.search.api.domain.Facet> facetService, FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition> fieldDefinitionService, com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> translationEntityService)
-
-
Method Details
-
readAllFacets
@FrameworkGetMapping @Policy(permissionRoots="FACET", operationTypes=READ) public org.springframework.data.domain.Page<com.broadleafcommerce.search.api.domain.Facet> readAllFacets(@ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, @RequestParam(value="q",required=false) String query, @RequestParam(value="fieldIndexableType",required=false) String fieldIndexableType, cz.jirutka.rsql.parser.ast.Node filters, @PageableDefault(size=50) org.springframework.data.domain.Pageable page) -
readFacetById
@FrameworkGetMapping("/{id}") @Policy(permissionRoots="FACET", operationTypes=READ) public com.broadleafcommerce.search.api.domain.Facet readFacetById(@PathVariable("id") String id, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
createFacet
@FrameworkPostMapping(consumes="application/json") @Policy(permissionRoots="FACET", operationTypes=CREATE) public com.broadleafcommerce.search.api.domain.Facet createFacet(@RequestBody com.broadleafcommerce.search.api.domain.Facet facet, @ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
deleteFacet
@FrameworkDeleteMapping("/{id}") @Policy(permissionRoots="FACET", operationTypes=DELETE) public void deleteFacet(@PathVariable("id") String id, @ContextOperation(DELETE) com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) -
replaceFacet
@FrameworkPutMapping(value="/{id}", consumes="application/json") @Policy(permissionRoots="FACET", operationTypes=UPDATE) public com.broadleafcommerce.search.api.domain.Facet replaceFacet(@RequestBody com.broadleafcommerce.search.api.domain.Facet facet, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, @PathVariable("id") String id) -
replaceAllFacetTranslations
@FrameworkPutMapping(value="/{id}/translations/{locale}", consumes="application/json") @Policy(permissionRoots="FACET") public com.broadleafcommerce.translation.service.dto.TranslationsPayload replaceAllFacetTranslations(@ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("locale") Locale locale, @RequestBody com.broadleafcommerce.translation.service.dto.TranslationsPayload translationRequest) -
buildFieldRef
protected com.broadleafcommerce.search.api.domain.FieldRef buildFieldRef(com.broadleafcommerce.search.api.domain.FieldDefinition field) Builds theFieldRef
object based on aFieldDefinition
- Returns:
- The
FieldRef
object.
-
applyFieldIndexableTypeFilters
@NonNull protected cz.jirutka.rsql.parser.ast.Node applyFieldIndexableTypeFilters(String fieldIndexableType, cz.jirutka.rsql.parser.ast.Node filters) -
getFacetService
-
getFieldDefinitionService
protected FieldDefinitionService<com.broadleafcommerce.search.api.domain.FieldDefinition> getFieldDefinitionService() -
getTranslationEntityService
protected com.broadleafcommerce.translation.service.TranslationEntityService<com.broadleafcommerce.translation.domain.Translation> getTranslationEntityService() -
getParser
protected com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> getParser() -
setParser
@Autowired public void setParser(com.broadleafcommerce.data.tracking.core.filtering.fetch.FilterParser<cz.jirutka.rsql.parser.ast.Node> parser) -
getTypeFactory
protected com.broadleafcommerce.common.extension.TypeFactory getTypeFactory() -
setTypeFactory
@Autowired public void setTypeFactory(com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-