001
014
015 package com.liferay.portal.kernel.search.facet;
016
017 import com.liferay.portal.kernel.search.BooleanClause;
018 import com.liferay.portal.kernel.search.SearchContext;
019 import com.liferay.portal.kernel.search.facet.collector.FacetCollector;
020 import com.liferay.portal.kernel.search.facet.config.FacetConfiguration;
021 import com.liferay.portal.kernel.search.facet.util.BaseFacetValueValidator;
022 import com.liferay.portal.kernel.search.facet.util.FacetValueValidator;
023 import com.liferay.portal.kernel.util.StringPool;
024 import com.liferay.portal.kernel.util.StringUtil;
025
026
029 public abstract class BaseFacet implements Facet {
030
031 public BaseFacet(SearchContext searchContext) {
032 _searchContext = searchContext;
033 }
034
035 @Override
036 public BooleanClause getFacetClause() {
037 return doGetFacetClause();
038 }
039
040 @Override
041 public FacetCollector getFacetCollector() {
042 return _facetCollector;
043 }
044
045 @Override
046 public FacetConfiguration getFacetConfiguration() {
047 return _facetConfiguration;
048 }
049
050 @Override
051 public FacetValueValidator getFacetValueValidator() {
052 if (_facetValueValidator == null) {
053 _facetValueValidator = new BaseFacetValueValidator();
054 }
055
056 return _facetValueValidator;
057 }
058
059 @Override
060 public String getFieldId() {
061 return StringUtil.replace(
062 getFieldName(), StringPool.SLASH, StringPool.UNDERLINE);
063 }
064
065 @Override
066 public String getFieldName() {
067 return _facetConfiguration.getFieldName();
068 }
069
070 @Override
071 public SearchContext getSearchContext() {
072 return _searchContext;
073 }
074
075 @Override
076 public boolean isStatic() {
077 return _facetConfiguration.isStatic();
078 }
079
080 @Override
081 public void setFacetCollector(FacetCollector facetCollector) {
082 _facetCollector = facetCollector;
083 }
084
085 @Override
086 public void setFacetConfiguration(FacetConfiguration facetConfiguration) {
087 _facetConfiguration = facetConfiguration;
088 }
089
090 @Override
091 public void setFacetValueValidator(
092 FacetValueValidator facetValueValidator) {
093
094 _facetValueValidator = facetValueValidator;
095 }
096
097 @Override
098 public void setFieldName(String fieldName) {
099 _facetConfiguration.setFieldName(fieldName);
100 }
101
102 @Override
103 public void setStatic(boolean isStatic) {
104 _facetConfiguration.setStatic(isStatic);
105 }
106
107 protected abstract BooleanClause doGetFacetClause();
108
109 private FacetCollector _facetCollector;
110 private FacetConfiguration _facetConfiguration = new FacetConfiguration();
111 private FacetValueValidator _facetValueValidator;
112 private SearchContext _searchContext;
113
114 }