diff --git a/core/pom.xml b/core/pom.xml index 17618324f..cc584d87e 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -14,8 +14,106 @@ pom core + + + 11 + 11 + 11 + + + UTF-8 + UTF-8 + + + 3.7.0 + + + 7.10.2 + + + 4.5.14 + 4.4.16 + 4.1.5 + + + 2.13.5 + + + 1.2.3 + 6.6 + + + 3.2.2 + 3.12.0 + + + 4.13.1 + 2.0.9 + + + 3.8.1 + 3.0.0 + 0.8.7 + 1.1.1 + + sunbird-cassandra-utils + sunbird-es-utils + + ${basedir}/src/main/java + ${basedir}/src/test/java + + + + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + 11 + + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + --illegal-access=warn + + + + + + + + org.jacoco + jacoco-maven-plugin + ${jacoco-maven-plugin.version} + + ${basedir}/target/coverage-reports/jacoco-unit.exec + ${basedir}/target/coverage-reports/jacoco-unit.exec + + + + jacoco-initialize + + prepare-agent + + + + jacoco-site + package + + report + + + + + + + \ No newline at end of file diff --git a/core/sunbird-cassandra-utils/pom.xml b/core/sunbird-cassandra-utils/pom.xml index 1e8d1febb..60a29d73c 100644 --- a/core/sunbird-cassandra-utils/pom.xml +++ b/core/sunbird-cassandra-utils/pom.xml @@ -10,25 +10,14 @@ org.sunbird sunbird-cassandra-utils 1.0-SNAPSHOT - sunbird-cassandra-utils - - - 11 - 11 - 11 - UTF-8 - UTF-8 - 1.1.1 - 3.7.0 - 2.13.5 - + Sunbird Cassandra Utils com.datastax.cassandra cassandra-driver-core - 3.7.0 + ${cassandra.driver.version} shaded @@ -66,12 +55,12 @@ commons-collections commons-collections - 3.2.2 + ${commons-collections.version} org.apache.commons commons-lang3 - 3.12.0 + ${commons-lang3.version} diff --git a/core/sunbird-es-utils/pom.xml b/core/sunbird-es-utils/pom.xml new file mode 100644 index 000000000..0758f34df --- /dev/null +++ b/core/sunbird-es-utils/pom.xml @@ -0,0 +1,161 @@ + + + + + org.sunbird + core + 1.0-SNAPSHOT + + + 4.0.0 + sunbird-es-utils + 1.0-SNAPSHOT + Sunbird ElasticSearch Utils + + + + + org.elasticsearch.client + elasticsearch-rest-high-level-client + ${elasticsearch.version} + + + org.apache.httpcomponents + httpasyncclient + + + org.apache.httpcomponents + httpcore-nio + + + org.apache.httpcomponents + httpclient + + + org.apache.httpcomponents + httpcore + + + + + + org.elasticsearch.client + transport + ${elasticsearch.version} + + + io.netty + * + + + + + + + org.apache.httpcomponents + httpasyncclient + ${httpcomponents.httpasyncclient.version} + + + + org.apache.httpcomponents + httpcore-nio + ${httpcomponents.httpcore.version} + + + + org.apache.httpcomponents + httpclient + ${httpcomponents.httpclient.version} + + + + org.apache.httpcomponents + httpcore + ${httpcomponents.httpcore.version} + + + + + ch.qos.logback + logback-classic + ${logback.version} + + + + ch.qos.logback + logback-core + ${logback.version} + + + + net.logstash.logback + logstash-logback-encoder + ${logstash-logback-encoder.version} + + + com.fasterxml.jackson.core + jackson-core + + + com.fasterxml.jackson.core + jackson-databind + + + com.fasterxml.jackson.core + jackson-annotations + + + + + + + org.apache.commons + commons-lang3 + ${commons-lang3.version} + + + + + org.sunbird + common-util + 0.0.1-SNAPSHOT + + + io.netty + * + + + + + + + junit + junit + ${junit.version} + test + + + + org.powermock + powermock-module-junit4 + ${powermock.version} + test + + + junit + junit + + + + + + org.powermock + powermock-api-mockito2 + ${powermock.version} + test + + + diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchHelper.java b/core/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchHelper.java similarity index 51% rename from course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchHelper.java rename to core/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchHelper.java index 826439475..51c372d88 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchHelper.java +++ b/core/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchHelper.java @@ -1,15 +1,35 @@ package org.sunbird.common; -import org.apache.pekko.util.Timeout; -import com.typesafe.config.Config; +import static org.sunbird.common.models.util.ProjectUtil.isNotNull; + +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; import org.apache.lucene.search.join.ScoreMode; +import org.apache.pekko.util.Timeout; import org.elasticsearch.action.search.SearchRequestBuilder; import org.elasticsearch.action.search.SearchResponse; import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.index.query.*; +import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.ExistsQueryBuilder; +import org.elasticsearch.index.query.MatchQueryBuilder; +import org.elasticsearch.index.query.QueryBuilder; +import org.elasticsearch.index.query.QueryBuilders; +import org.elasticsearch.index.query.RangeQueryBuilder; +import org.elasticsearch.index.query.TermQueryBuilder; +import org.elasticsearch.index.query.TermsQueryBuilder; +import org.elasticsearch.common.unit.Fuzziness; import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.aggregations.AggregationBuilders; @@ -20,132 +40,142 @@ import org.elasticsearch.search.sort.SortOrder; import org.sunbird.common.models.util.JsonKey; import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.util.ConfigUtil; import org.sunbird.dto.SearchDTO; import scala.concurrent.Await; import scala.concurrent.Future; -import java.math.BigInteger; -import java.util.*; -import java.util.Map.Entry; -import java.util.concurrent.TimeUnit; -import java.util.stream.Collectors; - -import static org.sunbird.common.models.util.ProjectUtil.isNotNull; - /** - * This class will provide all required operation for elastic search. - * - * @author arvind - * @author Manzarul - * @author mayank:github.com/iostream04 + * Helper class for Elasticsearch operations. + * Provides utility methods for query construction, response parsing, and aggregation handling. */ public class ElasticSearchHelper { + /** Less than or equal to operator constant. */ public static final String LTE = "<="; + + /** Less than operator constant. */ public static final String LT = "<"; + + /** Greater than or equal to operator constant. */ public static final String GTE = ">="; + + /** Greater than operator constant. */ public static final String GT = ">"; + + /** Ascending sort order constant. */ public static final String ASC_ORDER = "ASC"; + + /** Starts with string operation constant. */ public static final String STARTS_WITH = "startsWith"; + + /** Ends with string operation constant. */ public static final String ENDS_WITH = "endsWith"; + + /** Soft mode constant for constraints. */ public static final String SOFT_MODE = "soft"; + + /** Suffix for raw field access in Elasticsearch. */ public static final String RAW_APPEND = ".raw"; + + /** Cache for verifying index existence. */ protected static Map indexMap = new HashMap<>(); + + /** Cache for verifying type existence. */ protected static Map typeMap = new HashMap<>(); - protected static final String ES_CONFIG_FILE = "elasticsearch.conf"; - private static Config config = ConfigUtil.getConfig(ES_CONFIG_FILE); + + /** Default wait time in seconds for async operations. */ public static final int WAIT_TIME = 5; + + /** Timeout configuration for async operations. */ public static Timeout timeout = new Timeout(WAIT_TIME, TimeUnit.SECONDS); + + /** Valid results for upsert operations. */ public static final List upsertResults = new ArrayList<>(Arrays.asList("CREATED", "UPDATED", "NOOP")); + + /** Default document type for Elasticsearch 6.x/7.x compatibility. */ private static final String _DOC = "_doc"; - private static LoggerUtil logger = new LoggerUtil(ElasticSearchHelper.class); + + private static final LoggerUtil logger = new LoggerUtil(ElasticSearchHelper.class); + /** Private constructor to prevent instantiation of utility class. */ private ElasticSearchHelper() {} /** - * This method will return the object after getting complete future. + * Waits for and returns the result from a Scala Future. * - * @param future - * @return Object which future inherits + * @param future The Scala Future to wait for + * @return The result object from the future, or null if an error occurs */ @SuppressWarnings("unchecked") public static Object getResponseFromFuture(Future future) { try { - Object result = Await.result(future, timeout.duration()); - return result; + if (future != null) { + return Await.result(future, timeout.duration()); + } } catch (Exception e) { - logger.error( null, - "ElasticSearchHelper:getResponseFromFuture: error occured " , e); + logger.error(null, "ElasticSearchHelper:getResponseFromFuture: Error occurred while waiting for future result", e); } return null; } /** - * This method adds aggregations to the incoming SearchRequestBuilder object + * Adds aggregations to the SearchRequestBuilder based on the provided facets. * - * @param searchRequestBuilder which will be updated with facets if any present - * @param facets Facets provide aggregated data based on a search query - * @return SearchRequestBuilder + * @param searchRequestBuilder The builder to add aggregations to + * @param facets List of facets configuration + * @return The updated SearchRequestBuilder */ public static SearchRequestBuilder addAggregations( SearchRequestBuilder searchRequestBuilder, List> facets) { long startTime = System.currentTimeMillis(); - logger.debug( null, - "ElasticSearchHelper:addAggregations: method started at ==" + startTime); - if (facets != null && !facets.isEmpty()) { + logger.debug(null, "ElasticSearchHelper:addAggregations: method started at " + startTime); + + if (searchRequestBuilder != null && CollectionUtils.isNotEmpty(facets)) { Map map = facets.get(0); - if (!MapUtils.isEmpty(map)) { + if (MapUtils.isNotEmpty(map)) { for (Map.Entry entry : map.entrySet()) { - String key = entry.getKey(); String value = entry.getValue(); + if (JsonKey.DATE_HISTOGRAM.equalsIgnoreCase(value)) { searchRequestBuilder.addAggregation( AggregationBuilders.dateHistogram(key) .field(key + RAW_APPEND) .dateHistogramInterval(DateHistogramInterval.days(1))); - - } else if (null == value) { + } else if (value == null) { searchRequestBuilder.addAggregation( AggregationBuilders.terms(key).field(key + RAW_APPEND)); } } } - long elapsedTime = calculateEndTime(startTime); - logger.debug( null, - "ElasticSearchHelper:addAggregations method end ==" - + " ,Total time elapsed = " - + elapsedTime); } + long elapsedTime = calculateEndTime(startTime); + logger.debug(null, "ElasticSearchHelper:addAggregations: method ended. Total time elapsed = " + elapsedTime); return searchRequestBuilder; } /** - * This method returns any constraints defined in searchDto object + * Extracts soft constraints from the SearchDTO. * - * @param searchDTO with constraints - * @return Map for constraints present in serachDTO + * @param searchDTO The search object containing constraints + * @return Map of constraints where key is the field and value is the boost/weight */ public static Map getConstraints(SearchDTO searchDTO) { - if (null != searchDTO.getSoftConstraints() && !searchDTO.getSoftConstraints().isEmpty()) { - return searchDTO - .getSoftConstraints() - .entrySet() - .stream() - .collect(Collectors.toMap(e -> e.getKey(), e -> e.getValue().floatValue())); + if (searchDTO != null && MapUtils.isNotEmpty(searchDTO.getSoftConstraints())) { + return searchDTO.getSoftConstraints().entrySet().stream() + .collect(Collectors.toMap(Map.Entry::getKey, e -> e.getValue().floatValue())); } return Collections.emptyMap(); } /** - * This method return SearchRequestBuilder for transport client + * Prepares a SearchRequestBuilder for the TransportClient (Legacy support). * - * @param client transport client instance - * @param index to be checkout - * @return SearchRequestBuilder for a provided request + * @param client The TransportClient instance + * @param index Array of index names to search + * @return A configured SearchRequestBuilder */ public static SearchRequestBuilder getTransportSearchBuilder( TransportClient client, String[] index) { @@ -153,99 +183,109 @@ public static SearchRequestBuilder getTransportSearchBuilder( } /** - * Method to add the additional search query like range query , exists - not exist filter etc. + * Adds additional search criteria such as filters, exists, nested filters to the query. * - * @param query query which will be updated - * @param entry which will have key to be search and respective values - * @param constraintsMap constraints on key and values + * @param query The BoolQueryBuilder to update + * @param entry Map entry containing the query key and value + * @param constraintsMap Map of constraints for boost values */ @SuppressWarnings("unchecked") public static void addAdditionalProperties( BoolQueryBuilder query, Entry entry, Map constraintsMap) { long startTime = System.currentTimeMillis(); - logger.debug( null, - "ElasticSearchHelper:addAdditionalProperties: method started at ==" + startTime); + logger.debug(null, "ElasticSearchHelper:addAdditionalProperties: method started at " + startTime); + String key = entry.getKey(); - if (JsonKey.FILTERS.equalsIgnoreCase(key)) { + Object value = entry.getValue(); - Map filters = (Map) entry.getValue(); - for (Map.Entry en : filters.entrySet()) { - query = createFilterESOpperation(en, query, constraintsMap); + if (JsonKey.FILTERS.equalsIgnoreCase(key)) { + if (value instanceof Map) { + Map filters = (Map) value; + for (Map.Entry en : filters.entrySet()) { + query = createFilterESOperation(en, query, constraintsMap); + } } } else if (JsonKey.EXISTS.equalsIgnoreCase(key) || JsonKey.NOT_EXISTS.equalsIgnoreCase(key)) { - query = createESOpperation(entry, query, constraintsMap); + query = createESOperation(entry, query, constraintsMap); } else if (JsonKey.NESTED_EXISTS.equalsIgnoreCase(key) || JsonKey.NESTED_NOT_EXISTS.equalsIgnoreCase(key)) { - query = createNestedESOpperation(entry, query, constraintsMap); + query = createNestedESOperation(entry, query, constraintsMap); } else if (JsonKey.NESTED_KEY_FILTER.equalsIgnoreCase(key)) { - Map nestedFilters = (Map) entry.getValue(); - for (Map.Entry en : nestedFilters.entrySet()) { - query = createNestedFilterESOpperation(en, query, constraintsMap); + if (value instanceof Map) { + Map nestedFilters = (Map) value; + for (Map.Entry en : nestedFilters.entrySet()) { + query = createNestedFilterESOperation(en, query, constraintsMap); + } } } + long elapsedTime = calculateEndTime(startTime); - logger.debug( null, - "ElasticSearchHelper:addAdditionalProperties: method end ==" - + " ,Total time elapsed = " - + elapsedTime); + logger.debug(null, "ElasticSearchHelper:addAdditionalProperties: method ended. Total time elapsed = " + elapsedTime); } /** - * Method to create CommonTermQuery , multimatch and Range Query. + * Creates filter operations including Terms, Term, Range, and Match queries. * - * @param entry which contains key for search and respective values - * @param query Object which will be updated - * @param constraintsMap constraints for key and values - * @return BoolQueryBuilder + * @param entry Map entry with field name and value/condition + * @param query The BoolQueryBuilder to append to + * @param constraintsMap Map of boost constraints + * @return The updated BoolQueryBuilder */ @SuppressWarnings("unchecked") - private static BoolQueryBuilder createFilterESOpperation( + private static BoolQueryBuilder createFilterESOperation( Entry entry, BoolQueryBuilder query, Map constraintsMap) { String key = entry.getKey(); Object val = entry.getValue(); - if (val instanceof List && val != null) { - query = getTermQueryFromList(val, key, query, constraintsMap); - } else if (val instanceof Map) { - if (key.equalsIgnoreCase(JsonKey.ES_OR_OPERATION)) { - query.must(createEsORFilterQuery((Map) val)); + + if (val != null) { + if (val instanceof List) { + query = getTermQueryFromList(val, key, query, constraintsMap); + } else if (val instanceof Map) { + if (key.equalsIgnoreCase(JsonKey.ES_OR_OPERATION)) { + query.must(createEsORFilterQuery((Map) val)); + } else { + query = getTermQueryFromMap(val, key, query, constraintsMap); + } + } else if (val instanceof String) { + query.must( + createTermQuery(key + RAW_APPEND, ((String) val).toLowerCase(), constraintsMap.get(key))); } else { - query = getTermQueryFromMap(val, key, query, constraintsMap); + query.must(createTermQuery(key + RAW_APPEND, val, constraintsMap.get(key))); } - } else if (val instanceof String) { - query.must( - createTermQuery(key + RAW_APPEND, ((String) val).toLowerCase(), constraintsMap.get(key))); - } else { - query.must(createTermQuery(key + RAW_APPEND, val, constraintsMap.get(key))); } return query; } /** - * Method to create CommonTermQuery , multimatch and Range Query. + * Creates nested filter operations for the given entry, updating the query builder. + * Handles List, Map, and String values for nested properties. * - * @param entry which contains key for search and respective values - * @param query Object which will be updated - * @param constraintsMap constraints for key and values - * @return BoolQueryBuilder + * @param entry The map entry containing the key (dot-separated path) and value for the filter. + * @param query The BoolQueryBuilder to update with the new nested query. + * @param constraintsMap A map of constraints (boost values) for keys. + * @return The updated BoolQueryBuilder. */ @SuppressWarnings("unchecked") - private static BoolQueryBuilder createNestedFilterESOpperation( + private static BoolQueryBuilder createNestedFilterESOperation( Entry entry, BoolQueryBuilder query, Map constraintsMap) { String key = entry.getKey(); Object val = entry.getValue(); String path = key.split("\\.")[0]; + if (val instanceof List && CollectionUtils.isNotEmpty((List) val)) { - if (((List) val).get(0) instanceof String) { - ((List) val).replaceAll(String::toLowerCase); + List valueList = (List) val; + if (valueList.get(0) instanceof String) { + List stringList = (List) val; + stringList.replaceAll(String::toLowerCase); query.must( QueryBuilders.nestedQuery( path, - createTermsQuery(key + RAW_APPEND, (List) val, constraintsMap.get(key)), + createTermsQuery(key + RAW_APPEND, stringList, constraintsMap.get(key)), ScoreMode.None)); } else { query.must( QueryBuilders.nestedQuery( - path, createTermsQuery(key, (List) val, constraintsMap.get(key)), ScoreMode.None)); + path, createTermsQuery(key, valueList, constraintsMap.get(key)), ScoreMode.None)); } } else if (val instanceof Map) { query = getNestedTermQueryFromMap(val, key, path, query, constraintsMap); @@ -267,56 +307,67 @@ private static BoolQueryBuilder createNestedFilterESOpperation( } /** - * This method returns termQuery if any present in map provided + * Generates a term query or range/lexical query from a Map value. * - * @param key for search in termquery - * @param val value of the key to be searched - * @param query which will be updated according to key , value and constraints - * @param constraintsMap for setting any constraints on values for the specified key - * @return BoolQueryBuilder + * @param val The value map containing operation keys (e.g., LT, GT, startsWith). + * @param key The field key for the query. + * @param query The BoolQueryBuilder to update. + * @param constraintsMap Map of boost constraints. + * @return The updated BoolQueryBuilder. */ + @SuppressWarnings("unchecked") private static BoolQueryBuilder getTermQueryFromMap( Object val, String key, BoolQueryBuilder query, Map constraintsMap) { Map value = (Map) val; Map rangeOperation = new HashMap<>(); Map lexicalOperation = new HashMap<>(); - for (Map.Entry it : value.entrySet()) { - String operation = it.getKey(); + + for (Map.Entry entry : value.entrySet()) { + String operation = entry.getKey(); if (operation.startsWith(LT) || operation.startsWith(GT)) { - rangeOperation.put(operation, it.getValue()); + rangeOperation.put(operation, entry.getValue()); } else if (operation.startsWith(STARTS_WITH) || operation.startsWith(ENDS_WITH)) { - lexicalOperation.put(operation, it.getValue()); + lexicalOperation.put(operation, entry.getValue()); } } - if (!(rangeOperation.isEmpty())) { + + if (!rangeOperation.isEmpty()) { query.must(createRangeQuery(key, rangeOperation, constraintsMap.get(key))); } - if (!(lexicalOperation.isEmpty())) { + if (!lexicalOperation.isEmpty()) { query.must(createLexicalQuery(key, lexicalOperation, constraintsMap.get(key))); } return query; } + /** + * Creates a boolean OR query for multiple term filters. + * + * @param orFilters Map of field names to values for the OR condition. + * @return A new BoolQueryBuilder with SHOULD clauses. + */ private static BoolQueryBuilder createEsORFilterQuery(Map orFilters) { BoolQueryBuilder query = new BoolQueryBuilder(); - for (Map.Entry mp : orFilters.entrySet()) { + for (Map.Entry entry : orFilters.entrySet()) { query.should( QueryBuilders.termQuery( - mp.getKey() + RAW_APPEND, ((String) mp.getValue()).toLowerCase())); + entry.getKey() + RAW_APPEND, ((String) entry.getValue()).toLowerCase())); } return query; } /** - * This method returns termQuery if any present in map provided + * Generates a nested term query (range or lexical) from a Map value. * - * @param key for search in termquery - * @param val value of the key to be searched - * @param query which will be updated according to key , value and constraints - * @param constraintsMap for setting any constraints on values for the specified key - * @return BoolQueryBuilder + * @param val The value map containing operation keys. + * @param key The field key for the query. + * @param path The nested path. + * @param query The BoolQueryBuilder to update. + * @param constraintsMap Map of boost constraints. + * @return The updated BoolQueryBuilder. */ + @SuppressWarnings("unchecked") private static BoolQueryBuilder getNestedTermQueryFromMap( Object val, String key, @@ -326,22 +377,24 @@ private static BoolQueryBuilder getNestedTermQueryFromMap( Map value = (Map) val; Map rangeOperation = new HashMap<>(); Map lexicalOperation = new HashMap<>(); - for (Map.Entry it : value.entrySet()) { - String operation = it.getKey(); + + for (Map.Entry entry : value.entrySet()) { + String operation = entry.getKey(); if (operation.startsWith(LT) || operation.startsWith(GT)) { - rangeOperation.put(operation, it.getValue()); + rangeOperation.put(operation, entry.getValue()); } else if (operation.startsWith(STARTS_WITH) || operation.startsWith(ENDS_WITH)) { - lexicalOperation.put(operation, it.getValue()); + lexicalOperation.put(operation, entry.getValue()); } } - if (!(rangeOperation.isEmpty())) { + + if (!rangeOperation.isEmpty()) { query.must( QueryBuilders.nestedQuery( path, createRangeQuery(key, rangeOperation, constraintsMap.get(key)), ScoreMode.None)); } - if (!(lexicalOperation.isEmpty())) { + if (!lexicalOperation.isEmpty()) { query.must( QueryBuilders.nestedQuery( path, @@ -352,40 +405,44 @@ private static BoolQueryBuilder getNestedTermQueryFromMap( } /** - * This method returns termQuery if any present in List provided + * Generates a terms query from a List value. * - * @param key for search in termquery - * @param val value of the key to be searched - * @param query which will be updated according to key , value and constraints - * @param constraintsMap for setting any constraints on values for the specified key - * @return BoolQueryBuilder + * @param val The value list for the terms query. + * @param key The field key for the query. + * @param query The BoolQueryBuilder to update. + * @param constraintsMap Map of boost constraints. + * @return The updated BoolQueryBuilder. */ + @SuppressWarnings("unchecked") private static BoolQueryBuilder getTermQueryFromList( Object val, String key, BoolQueryBuilder query, Map constraintsMap) { - if (!((List) val).isEmpty()) { - if (((List) val).get(0) instanceof String) { - ((List) val).replaceAll(String::toLowerCase); - query.must(createTermsQuery(key + RAW_APPEND, (List) val, constraintsMap.get(key))); + if (val instanceof List && !((List) val).isEmpty()) { + if (((List) val).get(0) instanceof String) { + List stringList = (List) val; + stringList.replaceAll(String::toLowerCase); + query.must( + createTermsQuery(key + RAW_APPEND, stringList, constraintsMap.get(key))); } else { - query.must(createTermsQuery(key, (List) val, constraintsMap.get(key))); + query.must(createTermsQuery(key, (List) val, constraintsMap.get(key))); } } return query; } - /** Method to create EXISTS and NOT EXIST FILTER QUERY . */ /** - * @param entry contains operations and keys for filter - * @param query do get updated with provided operations - * @param constraintsMap to set ant constraints on keys for filter - * @return + * Creates filter operations for EXISTS and NOT_EXISTS conditions. + * + * @param entry The map entry containing the operation key and list of fields. + * @param query The BoolQueryBuilder to update. + * @param constraintsMap Map of boost constraints. + * @return The updated BoolQueryBuilder. */ @SuppressWarnings("unchecked") - private static BoolQueryBuilder createESOpperation( + private static BoolQueryBuilder createESOperation( Entry entry, BoolQueryBuilder query, Map constraintsMap) { String operation = entry.getKey(); - if (entry.getValue() != null && entry.getValue() instanceof List) { + if (entry.getValue() instanceof List) { List existsList = (List) entry.getValue(); if (JsonKey.EXISTS.equalsIgnoreCase(operation)) { @@ -401,19 +458,20 @@ private static BoolQueryBuilder createESOpperation( return query; } - /** Method to create EXISTS and NOT EXIST FILTER QUERY . */ /** - * @param entry contains operations and keys for filter - * @param query do get updated with provided operations - * @param constraintsMap to set ant constraints on keys for filter - * @return + * Creates nested filter operations for NESTED_EXISTS and NESTED_NOT_EXISTS conditions. + * + * @param entry The map entry containing the operation key and map of nested paths/fields. + * @param query The BoolQueryBuilder to update. + * @param constraintsMap Map of boost constraints. + * @return The updated BoolQueryBuilder. */ @SuppressWarnings("unchecked") - private static BoolQueryBuilder createNestedESOpperation( + private static BoolQueryBuilder createNestedESOperation( Entry entry, BoolQueryBuilder query, Map constraintsMap) { String operation = entry.getKey(); - if (entry.getValue() != null && entry.getValue() instanceof Map) { + if (entry.getValue() instanceof Map) { Map existsMap = (Map) entry.getValue(); if (JsonKey.NESTED_EXISTS.equalsIgnoreCase(operation)) { @@ -437,18 +495,23 @@ private static BoolQueryBuilder createNestedESOpperation( return query; } - /** Method to return the sorting order on basis of string param . */ + /** + * returns the sorting order based on the string parameter. + * + * @param value The sort order string ("ASC" or "DESC"). + * @return The SortOrder enum. + */ public static SortOrder getSortOrder(String value) { return ASC_ORDER.equalsIgnoreCase(value) ? SortOrder.ASC : SortOrder.DESC; } /** - * This method return MatchQueryBuilder Object with boosts if any provided + * Creates a MatchQueryBuilder with an optional boost. * - * @param name of the attribute - * @param value of the attribute - * @param boost for increasing the search parameters priority - * @return MatchQueryBuilder + * @param name The attribute/field name. + * @param value The value to match. + * @param boost The optional boost value (can be null). + * @return A MatchQueryBuilder instance. */ public static MatchQueryBuilder createMatchQuery(String name, Object value, Float boost) { if (isNotNull(boost)) { @@ -459,46 +522,46 @@ public static MatchQueryBuilder createMatchQuery(String name, Object value, Floa } /** - * This method returns TermsQueryBuilder with boosts if any provided + * Creates a TermsQueryBuilder with an optional boost. * - * @param key : field name - * @param values : values for the field value - * @param boost for increasing the search parameters priority - * @return TermsQueryBuilder + * @param key The field name. + * @param values The list of values for the terms query. + * @param boost The optional boost value (can be null). + * @return A TermsQueryBuilder instance. */ - private static TermsQueryBuilder createTermsQuery(String key, List values, Float boost) { + private static TermsQueryBuilder createTermsQuery(String key, List values, Float boost) { if (isNotNull(boost)) { - return QueryBuilders.termsQuery(key, (values).stream().toArray(Object[]::new)).boost(boost); + return QueryBuilders.termsQuery(key, values.stream().toArray(Object[]::new)).boost(boost); } else { - return QueryBuilders.termsQuery(key, (values).stream().toArray(Object[]::new)); + return QueryBuilders.termsQuery(key, values.stream().toArray(Object[]::new)); } } /** - * This method returns RangeQueryBuilder with boosts if any provided + * Creates a RangeQueryBuilder based on the provided operations and optional boost. * - * @param name for the field - * @param rangeOperation: keys and value related to range - * @param boost for increasing the search parameters priority - * @return RangeQueryBuilder + * @param name The field name. + * @param rangeOperation Map containing range operators (LTE, LT, GTE, GT) and values. + * @param boost The optional boost value (can be null). + * @return A RangeQueryBuilder instance. */ private static RangeQueryBuilder createRangeQuery( String name, Map rangeOperation, Float boost) { RangeQueryBuilder rangeQueryBuilder = QueryBuilders.rangeQuery(name + RAW_APPEND); - for (Map.Entry it : rangeOperation.entrySet()) { - switch (it.getKey()) { + for (Map.Entry entry : rangeOperation.entrySet()) { + switch (entry.getKey()) { case LTE: - rangeQueryBuilder.lte(it.getValue()); + rangeQueryBuilder.lte(entry.getValue()); break; case LT: - rangeQueryBuilder.lt(it.getValue()); + rangeQueryBuilder.lt(entry.getValue()); break; case GTE: - rangeQueryBuilder.gte(it.getValue()); + rangeQueryBuilder.gte(entry.getValue()); break; case GT: - rangeQueryBuilder.gt(it.getValue()); + rangeQueryBuilder.gt(entry.getValue()); break; } } @@ -509,12 +572,12 @@ private static RangeQueryBuilder createRangeQuery( } /** - * This method returns TermQueryBuilder with boosts if any provided + * Creates a TermQueryBuilder with an optional boost. * - * @param name of the field for termquery - * @param value of the field for termquery - * @param boost for increasing the search parameters priority - * @return TermQueryBuilder + * @param name The field name. + * @param value The value to search for. + * @param boost The optional boost value (can be null). + * @return A TermQueryBuilder instance. */ private static TermQueryBuilder createTermQuery(String name, Object value, Float boost) { if (isNotNull(boost)) { @@ -525,11 +588,11 @@ private static TermQueryBuilder createTermQuery(String name, Object value, Float } /** - * this method return ExistsQueryBuilder with boosts if any provided + * Creates an ExistsQueryBuilder with an optional boost. * - * @param name of the field which required for exists operation - * @param boost for increasing the search parameters priority - * @return ExistsQueryBuilder + * @param name The field name to check for existence. + * @param boost The optional boost value (can be null). + * @return An ExistsQueryBuilder instance. */ private static ExistsQueryBuilder createExistQuery(String name, Float boost) { if (isNotNull(boost)) { @@ -540,39 +603,41 @@ private static ExistsQueryBuilder createExistQuery(String name, Float boost) { } /** - * This method create lexical query with boosts if any provided + * Creates a lexical query (Prefix or Regexp) with optional boosts. * - * @param key for search - * @param rangeOperation to search or match in a particular way - * @param boost for increasing the search parameters priority - * @return QueryBuilder + * @param key The field key. + * @param rangeOperation Map containing lexical operators (STARTS_WITH, ENDS_WITH) and values. + * @param boost The optional boost value (can be null). + * @return A QueryBuilder instance (PrefixQueryBuilder or RegexpQueryBuilder). */ public static QueryBuilder createLexicalQuery( String key, Map rangeOperation, Float boost) { QueryBuilder queryBuilder = null; - for (Map.Entry it : rangeOperation.entrySet()) { - switch (it.getKey()) { + for (Map.Entry entry : rangeOperation.entrySet()) { + switch (entry.getKey()) { case STARTS_WITH: { - String startsWithVal = (String) it.getValue(); + String startsWithVal = (String) entry.getValue(); if (StringUtils.isNotBlank(startsWithVal)) { startsWithVal = startsWithVal.toLowerCase(); } if (isNotNull(boost)) { queryBuilder = QueryBuilders.prefixQuery(key + RAW_APPEND, startsWithVal).boost(boost); + } else { + queryBuilder = QueryBuilders.prefixQuery(key + RAW_APPEND, startsWithVal); } - queryBuilder = QueryBuilders.prefixQuery(key + RAW_APPEND, startsWithVal); break; } case ENDS_WITH: { - String endsWithRegex = "~" + it.getValue(); + String endsWithRegex = "~" + entry.getValue(); if (isNotNull(boost)) { queryBuilder = QueryBuilders.regexpQuery(key + RAW_APPEND, endsWithRegex).boost(boost); + } else { + queryBuilder = QueryBuilders.regexpQuery(key + RAW_APPEND, endsWithRegex); } - queryBuilder = QueryBuilders.regexpQuery(key + RAW_APPEND, endsWithRegex); break; } } @@ -581,42 +646,70 @@ public static QueryBuilder createLexicalQuery( } /** - * this method will take start time and subtract with current time to get the time spent in - * millis. + * Calculates the elapsed time in milliseconds. * - * @param startTime long - * @return long + * @param startTime The start time in milliseconds + * @return The elapsed time in milliseconds */ public static long calculateEndTime(long startTime) { return System.currentTimeMillis() - startTime; } /** - * This method will create searchdto on this of searchquery provided + * Adds a fuzzy match query to the BoolQueryBuilder. + * + * @param query The BoolQueryBuilder to update. + * @param name The field name to match against. + * @param value The value to fuzzy match. + */ + public static void createFuzzyMatchQuery(BoolQueryBuilder query, String name, Object value) { + if (value != null) { + query.must( + QueryBuilders.matchQuery(name, value) + .fuzziness(Fuzziness.AUTO) + .fuzzyTranspositions(true)); + } + } + + /** + * Creates a SearchDTO from a search query map. * - * @param searchQueryMap Map contains query - * @return SearchDto for search data in elastic search + * @param searchQueryMap Map containing query parameters. + * @return SearchDTO configured with the provided parameters. */ + @SuppressWarnings("unchecked") public static SearchDTO createSearchDTO(Map searchQueryMap) { SearchDTO search = new SearchDTO(); - search = getBasicBuiders(search, searchQueryMap); + search = getBasicBuilders(search, searchQueryMap); search = setOffset(search, searchQueryMap); search = getLimits(search, searchQueryMap); + if (searchQueryMap.containsKey(JsonKey.GROUP_QUERY)) { search .getGroupQuery() .addAll( (Collection>) searchQueryMap.get(JsonKey.GROUP_QUERY)); } + search = getSoftConstraints(search, searchQueryMap); + + // Handle fuzzy search if present + Map fuzzy = (Map) searchQueryMap.get(JsonKey.SEARCH_FUZZY); + if (MapUtils.isNotEmpty(fuzzy)) { + search.setFuzzy(fuzzy); + } + return search; } /** - * This method add any softconstraints present in seach query to search DTo + * Adds soft constraints from the search query map to the SearchDTO. * - * @return SearchDTO updated searchDTO which contains soft_constraits + * @param search The SearchDTO to update. + * @param searchQueryMap Map containing soft constraints. + * @return The updated SearchDTO. */ + @SuppressWarnings("unchecked") private static SearchDTO getSoftConstraints( SearchDTO search, Map searchQueryMap) { if (searchQueryMap.containsKey(JsonKey.SOFT_CONSTRAINTS)) { @@ -627,13 +720,15 @@ private static SearchDTO getSoftConstraints( } /** - * This method adds any limits present in the search query + * Adds limit parameter from the search query map to the SearchDTO. * - * @return SearchDTO updated searchDTO which contains limit + * @param search The SearchDTO to update. + * @param searchQueryMap Map containing the limit parameter. + * @return The updated SearchDTO. */ private static SearchDTO getLimits(SearchDTO search, Map searchQueryMap) { if (searchQueryMap.containsKey(JsonKey.LIMIT)) { - if ((searchQueryMap.get(JsonKey.LIMIT)) instanceof Integer) { + if (searchQueryMap.get(JsonKey.LIMIT) instanceof Integer) { search.setLimit((int) searchQueryMap.get(JsonKey.LIMIT)); } else { search.setLimit(((BigInteger) searchQueryMap.get(JsonKey.LIMIT)).intValue()); @@ -643,13 +738,15 @@ private static SearchDTO getLimits(SearchDTO search, Map searchQ } /** - * This method adds offset if any present in the searchQuery + * Adds offset parameter from the search query map to the SearchDTO. * - * @return SearchDTO updated searchDTO which contain offset + * @param search The SearchDTO to update. + * @param searchQueryMap Map containing the offset parameter. + * @return The updated SearchDTO. */ private static SearchDTO setOffset(SearchDTO search, Map searchQueryMap) { if (searchQueryMap.containsKey(JsonKey.OFFSET)) { - if ((searchQueryMap.get(JsonKey.OFFSET)) instanceof Integer) { + if (searchQueryMap.get(JsonKey.OFFSET) instanceof Integer) { search.setOffset((int) searchQueryMap.get(JsonKey.OFFSET)); } else { search.setOffset(((BigInteger) searchQueryMap.get(JsonKey.OFFSET)).intValue()); @@ -659,11 +756,14 @@ private static SearchDTO setOffset(SearchDTO search, Map searchQ } /** - * This method adds basic query parameter to SearchDTO if any provided + * Adds basic query parameters to the SearchDTO. * - * @return SearchDTO + * @param search The SearchDTO to update. + * @param searchQueryMap Map containing basic query parameters. + * @return The updated SearchDTO. */ - private static SearchDTO getBasicBuiders(SearchDTO search, Map searchQueryMap) { + @SuppressWarnings("unchecked") + private static SearchDTO getBasicBuilders(SearchDTO search, Map searchQueryMap) { if (searchQueryMap.containsKey(JsonKey.QUERY)) { search.setQuery((String) searchQueryMap.get(JsonKey.QUERY)); } @@ -696,17 +796,20 @@ private static SearchDTO getBasicBuiders(SearchDTO search, Map s } /** - * Method returns map which contains all the request data from elasticsearch + * Converts Elasticsearch SearchResponse to a response map. * - * @param searchDTO searchDTO which was used to search data - * @param finalFacetList Facets provide aggregated data based on a search query - * @return Map which will have all the requested data + * @param response The Elasticsearch SearchResponse. + * @param searchDTO The SearchDTO used for the query. + * @param finalFacetList List to populate with facet aggregations. + * @return Map containing search results, facets, and count. */ + @SuppressWarnings("unchecked") public static Map getSearchResponseMap( SearchResponse response, SearchDTO searchDTO, List finalFacetList) { Map responseMap = new HashMap<>(); List> esSource = new ArrayList<>(); long count = 0; + if (response != null) { SearchHits hits = response.getHits(); count = hits.getTotalHits().value; @@ -715,32 +818,43 @@ public static Map getSearchResponseMap( esSource.add(hit.getSourceAsMap()); } - // fetch aggregations aggregations + // Fetch aggregations finalFacetList = getFinalFacetList(response, searchDTO, finalFacetList); } + responseMap.put(JsonKey.CONTENT, esSource); - if (!(finalFacetList.isEmpty())) { + if (!finalFacetList.isEmpty()) { responseMap.put(JsonKey.FACETS, finalFacetList); } responseMap.put(JsonKey.COUNT, count); return responseMap; } + /** + * Extracts facet aggregations from the Elasticsearch response. + * + * @param response The Elasticsearch SearchResponse. + * @param searchDTO The SearchDTO containing facet configuration. + * @param finalFacetList List to populate with facet results. + * @return The populated facet list. + */ + @SuppressWarnings({"unchecked", "rawtypes"}) private static List getFinalFacetList( SearchResponse response, SearchDTO searchDTO, List finalFacetList) { - if (null != searchDTO.getFacets() && !searchDTO.getFacets().isEmpty()) { - Map m1 = searchDTO.getFacets().get(0); - for (Map.Entry entry : m1.entrySet()) { + if (searchDTO.getFacets() != null && !searchDTO.getFacets().isEmpty()) { + Map facetConfig = searchDTO.getFacets().get(0); + + for (Map.Entry entry : facetConfig.entrySet()) { String field = entry.getKey(); String aggsType = entry.getValue(); List aggsList = new ArrayList<>(); Map facetMap = new HashMap(); + if (JsonKey.DATE_HISTOGRAM.equalsIgnoreCase(aggsType)) { Histogram agg = response.getAggregations().get(field); - for (Histogram.Bucket ent : agg.getBuckets()) { - // DateTime key = (DateTime) ent.getKey(); // Key - String keyAsString = ent.getKeyAsString(); // Key as String - long docCount = ent.getDocCount(); // Doc count + for (Histogram.Bucket bucket : agg.getBuckets()) { + String keyAsString = bucket.getKeyAsString(); + long docCount = bucket.getDocCount(); Map internalMap = new HashMap(); internalMap.put(JsonKey.NAME, keyAsString); internalMap.put(JsonKey.COUNT, docCount); @@ -755,6 +869,7 @@ private static List getFinalFacetList( aggsList.add(internalMap); } } + facetMap.put("values", aggsList); facetMap.put(JsonKey.NAME, field); finalFacetList.add(facetMap); diff --git a/core/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchRestHighImpl.java b/core/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchRestHighImpl.java new file mode 100644 index 000000000..787c84654 --- /dev/null +++ b/core/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchRestHighImpl.java @@ -0,0 +1,751 @@ +package org.sunbird.common; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; +import java.util.stream.Collectors; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.collections.MapUtils; +import org.apache.commons.lang3.StringUtils; +import org.apache.pekko.dispatch.Futures; +import org.elasticsearch.action.ActionListener; +import org.elasticsearch.action.DocWriteResponse; +import org.elasticsearch.action.admin.indices.get.GetIndexRequest; +import org.elasticsearch.action.bulk.BulkItemResponse; +import org.elasticsearch.action.bulk.BulkRequest; +import org.elasticsearch.action.bulk.BulkResponse; +import org.elasticsearch.action.delete.DeleteRequest; +import org.elasticsearch.action.delete.DeleteResponse; +import org.elasticsearch.action.get.GetRequest; +import org.elasticsearch.action.get.GetResponse; +import org.elasticsearch.action.index.IndexRequest; +import org.elasticsearch.action.index.IndexResponse; +import org.elasticsearch.action.search.SearchRequest; +import org.elasticsearch.action.search.SearchResponse; +import org.elasticsearch.action.update.UpdateRequest; +import org.elasticsearch.action.update.UpdateResponse; +import org.elasticsearch.client.RequestOptions; +import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.QueryBuilders; +import org.elasticsearch.index.query.SimpleQueryStringBuilder; +import org.elasticsearch.index.query.TermQueryBuilder; +import org.elasticsearch.search.aggregations.AggregationBuilders; +import org.elasticsearch.search.aggregations.bucket.histogram.DateHistogramInterval; +import org.elasticsearch.search.builder.SearchSourceBuilder; +import org.elasticsearch.search.sort.FieldSortBuilder; +import org.elasticsearch.search.sort.SortMode; +import org.sunbird.common.inf.ElasticSearchService; +import org.sunbird.common.models.util.JsonKey; +import org.sunbird.common.models.util.LoggerUtil; +import org.sunbird.common.models.util.ProjectUtil; +import org.sunbird.common.models.util.PropertiesCache; +import org.sunbird.common.request.RequestContext; +import org.sunbird.common.responsecode.ResponseCode; +import org.sunbird.dto.SearchDTO; +import org.sunbird.helper.ConnectionManager; +import scala.concurrent.Future; +import scala.concurrent.Promise; + +/** + * Implementation of the ElasticSearchService using the RestHighLevelClient. + * This class provides methods to interact with Elasticsearch for indexing, + * updating, deleting, and searching documents. + */ +public class ElasticSearchRestHighImpl implements ElasticSearchService { + + private static final String ERROR = "ERROR"; + private static final LoggerUtil logger = new LoggerUtil(ElasticSearchRestHighImpl.class); + + + /** + * Saves a document to Elasticsearch. + * + * @param index The name of the index. + * @param identifier The unique identifier for the document. + * @param data The data to be saved (as a Map). + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing the identifier of the saved document, or "ERROR" if validation fails. + */ + @Override + public Future save(String index, String identifier, Map data, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:save: method started at ==" + startTime + " for Index " + index); + + if (StringUtils.isBlank(identifier) || StringUtils.isBlank(index)) { + logger.info(requestContext, "ElasticSearchRestHighImpl:save: Identifier or Index value is null or empty, identifier : " + + identifier + ", index: " + index + ", not able to save data."); + promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); + return promise.future(); + } + + try { + data.put(JsonKey.IDENTIFIER, identifier); + + IndexRequest indexRequest = new IndexRequest(index, _DOC, identifier).source(data); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(IndexResponse indexResponse) { + logger.info(requestContext, "ElasticSearchRestHighImpl:save: Success for index : " + index + ", identifier :" + identifier); + promise.success(indexResponse.getId()); + logEndTime(startTime, index, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:save: Error while saving " + index + " id : " + identifier, e); + promise.failure(e); + logEndTime(startTime, index, requestContext); + } + }; + + ConnectionManager.getRestClient().indexAsync(indexRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:save: Failed to prepare/submit save request for index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logEndTime(startTime, index, requestContext); + } + + return promise.future(); + } + + /** + * Updates an existing document in Elasticsearch. + * + * @param index The name of the index. + * @param identifier The unique identifier for the document. + * @param data The data to update (as a Map). + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing true if update succeeds, or failure if validation/update fails. + */ + @Override + public Future update(String index, String identifier, Map data, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:update: method started at ==" + startTime + " for Index " + index); + + if (StringUtils.isBlank(index) || StringUtils.isBlank(identifier) || data == null) { + logger.info(requestContext, "ElasticSearchRestHighImpl:update: Invalid parameters - index: " + index + + ", identifier: " + identifier + ", data: " + (data == null ? "null" : "present")); + promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); + return promise.future(); + } + + try { + data.put(JsonKey.IDENTIFIER, identifier); + UpdateRequest updateRequest = new UpdateRequest(index, _DOC, identifier).doc(data); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(UpdateResponse updateResponse) { + logger.info(requestContext, "ElasticSearchRestHighImpl:update: Success with " + updateResponse.getResult() + + " response from Elasticsearch for index: " + index + ", identifier: " + identifier); + promise.success(true); + logUpdateEndTime(startTime, index, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:update: Failed to update document in index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logUpdateEndTime(startTime, index, requestContext); + } + }; + + ConnectionManager.getRestClient().updateAsync(updateRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:update: Failed to prepare/submit update request for index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logUpdateEndTime(startTime, index, requestContext); + } + + return promise.future(); + } + + /** + * Retrieves a document from Elasticsearch by its identifier. + * + * @param index The name of the index. + * @param identifier The unique identifier for the document. + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing the document as a Map, or an empty Map if not found. + */ + @Override + public Future> getDataByIdentifier(String index, String identifier, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise> promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: method started at ==" + startTime + + " for Index " + index); + + if (StringUtils.isBlank(index) || StringUtils.isBlank(identifier)) { + logger.info(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: Invalid parameters - index: " + + index + ", identifier: " + identifier); + promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); + return promise.future(); + } + + try { + GetRequest getRequest = new GetRequest(index, _DOC, identifier); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(GetResponse getResponse) { + if (getResponse.isExists()) { + Map sourceAsMap = getResponse.getSourceAsMap(); + if (MapUtils.isNotEmpty(sourceAsMap)) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: Document found for index: " + + index + ", identifier: " + identifier); + promise.success(sourceAsMap); + } else { + logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: Document exists but source is empty for index: " + + index + ", identifier: " + identifier); + promise.success(new HashMap<>()); + } + } else { + logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: Document not found for index: " + + index + ", identifier: " + identifier); + promise.success(new HashMap<>()); + } + logGetEndTime(startTime, index, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: Failed to retrieve document from index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logGetEndTime(startTime, index, requestContext); + } + }; + + ConnectionManager.getRestClient().getAsync(getRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: Failed to prepare/submit get request for index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logGetEndTime(startTime, index, requestContext); + } + + return promise.future(); + } + + /** + * Deletes a document from Elasticsearch by its identifier. + * + * @param index The name of the index. + * @param identifier The unique identifier for the document to delete. + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing true if deletion succeeds, false if document not found, or failure on error. + */ + @Override + public Future delete(String index, String identifier, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:delete: method started at ==" + startTime); + + if (StringUtils.isBlank(index) || StringUtils.isBlank(identifier)) { + logger.info(requestContext, "ElasticSearchRestHighImpl:delete: Invalid parameters - index: " + + index + ", identifier: " + identifier); + promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); + return promise.future(); + } + + try { + DeleteRequest delRequest = new DeleteRequest(index, _DOC, identifier); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(DeleteResponse deleteResponse) { + if (deleteResponse.getResult() == DocWriteResponse.Result.NOT_FOUND) { + logger.info(requestContext, "ElasticSearchRestHighImpl:delete: Document not found for index: " + + index + ", identifier: " + identifier); + promise.success(false); + } else { + logger.info(requestContext, "ElasticSearchRestHighImpl:delete: Successfully deleted document from index: " + + index + ", identifier: " + identifier); + promise.success(true); + } + logDeleteEndTime(startTime, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:delete: Failed to delete document from index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logDeleteEndTime(startTime, requestContext); + } + }; + + ConnectionManager.getRestClient().deleteAsync(delRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:delete: Failed to prepare/submit delete request for index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logDeleteEndTime(startTime, requestContext); + } + + return promise.future(); + } + + /** + * Performs an Elasticsearch search based on SearchDTO criteria. + * Supports filters, facets, sorting, pagination, fuzzy search, and field selection. + * + * @param searchDTO The search criteria containing filters, facets, sort, pagination, etc. + * @param index The name of the index to search. + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing search results as a Map with content, count, and facets. + */ + @Override + @SuppressWarnings({"unchecked", "rawtypes"}) + public Future> search(SearchDTO searchDTO, String index, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise> promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:search: method started at ==" + startTime); + + try { + SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); + SearchRequest searchRequest = new SearchRequest(index); + // Note: types() is deprecated in Elasticsearch 7.x, document type is now always "_doc" + + // Check mode and set constraints + Map constraintsMap = ElasticSearchHelper.getConstraints(searchDTO); + BoolQueryBuilder query = new BoolQueryBuilder(); + + // Add channel field as mandatory + String channel = PropertiesCache.getInstance().getProperty(JsonKey.SUNBIRD_ES_CHANNEL); + if (!(StringUtils.isBlank(channel) || JsonKey.SUNBIRD_ES_CHANNEL.equals(channel))) { + query.must(ElasticSearchHelper.createMatchQuery(JsonKey.CHANNEL, channel, constraintsMap.get(JsonKey.CHANNEL))); + } + + // Apply simple query string + if (!StringUtils.isBlank(searchDTO.getQuery())) { + SimpleQueryStringBuilder sqsb = QueryBuilders.simpleQueryStringQuery(searchDTO.getQuery()); + if (CollectionUtils.isEmpty(searchDTO.getQueryFields())) { + query.must(sqsb.field("all_fields")); + } else { + Map searchFields = searchDTO.getQueryFields().stream() + .collect(Collectors.toMap(s -> s, v -> 1.0f)); + query.must(sqsb.fields(searchFields)); + } + } + + // Apply sorting + if (searchDTO.getSortBy() != null && !searchDTO.getSortBy().isEmpty()) { + for (Map.Entry entry : searchDTO.getSortBy().entrySet()) { + if (!entry.getKey().contains(".")) { + searchSourceBuilder.sort(entry.getKey() + ElasticSearchHelper.RAW_APPEND, + ElasticSearchHelper.getSortOrder((String) entry.getValue())); + } else { + Map map = (Map) entry.getValue(); + Map dataMap = (Map) map.get(JsonKey.TERM); + for (Map.Entry dateMapEntry : dataMap.entrySet()) { + FieldSortBuilder mySort = new FieldSortBuilder(entry.getKey() + ElasticSearchHelper.RAW_APPEND) + .setNestedFilter(new TermQueryBuilder(dateMapEntry.getKey(), dateMapEntry.getValue())) + .sortMode(SortMode.MIN) + .order(ElasticSearchHelper.getSortOrder((String) map.get(JsonKey.ORDER))); + searchSourceBuilder.sort(mySort); + } + } + } + } + + // Apply field filters + searchSourceBuilder.fetchSource( + searchDTO.getFields() != null ? searchDTO.getFields().stream().toArray(String[]::new) : null, + searchDTO.getExcludedFields() != null ? searchDTO.getExcludedFields().stream().toArray(String[]::new) : null); + + // Set offset + if (searchDTO.getOffset() != null) { + searchSourceBuilder.from(searchDTO.getOffset()); + } + + // Set limit + if (searchDTO.getLimit() != null) { + searchSourceBuilder.size(searchDTO.getLimit()); + } + + // Apply additional properties + if (searchDTO.getAdditionalProperties() != null && !searchDTO.getAdditionalProperties().isEmpty()) { + for (Map.Entry entry : searchDTO.getAdditionalProperties().entrySet()) { + ElasticSearchHelper.addAdditionalProperties(query, entry, constraintsMap); + } + } + + // Apply fuzzy search + if (MapUtils.isNotEmpty(searchDTO.getFuzzy())) { + Map.Entry entry = searchDTO.getFuzzy().entrySet().iterator().next(); + ElasticSearchHelper.createFuzzyMatchQuery(query, entry.getKey(), entry.getValue()); + } + + // Set final query + searchSourceBuilder.query(query); + List finalFacetList = new ArrayList(); + + // Add aggregations + if (searchDTO.getFacets() != null && !searchDTO.getFacets().isEmpty()) { + searchSourceBuilder = addAggregations(searchSourceBuilder, searchDTO.getFacets(), requestContext); + } + + logger.info(requestContext, "ElasticSearchRestHighImpl:search: calling search for index " + index + + ", with query = " + searchSourceBuilder.toString()); + + searchRequest.source(searchSourceBuilder); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(SearchResponse response) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:search: onResponse received"); + + if (response.getHits() == null || response.getHits().getTotalHits().value == 0) { + Map responseMap = new HashMap<>(); + responseMap.put(JsonKey.CONTENT, new ArrayList<>()); + responseMap.put(JsonKey.COUNT, 0); + promise.success(responseMap); + } else { + Map responseMap = ElasticSearchHelper.getSearchResponseMap(response, searchDTO, finalFacetList); + promise.success(responseMap); + } + logSearchEndTime(startTime, index, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:search: Search failed for index: " + index, e); + promise.failure(e); + logSearchEndTime(startTime, index, requestContext); + } + }; + + ConnectionManager.getRestClient().searchAsync(searchRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:search: Failed to prepare/submit search request for index: " + index, e); + promise.failure(e); + logSearchEndTime(startTime, index, requestContext); + } + + return promise.future(); + } + + /** + * Performs a health check on Elasticsearch by verifying index existence. + * + * @return A Future containing true if Elasticsearch is healthy, false otherwise. + */ + @Override + public Future healthCheck() { + Promise promise = Futures.promise(); + + try { + // Use a common index for health check (can be made configurable) + GetIndexRequest indexRequest = new GetIndexRequest().indices(ProjectUtil.EsType.courseBatch.getTypeName()); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(Boolean getResponse) { + promise.success(getResponse != null ? getResponse : false); + logger.info(null, "ElasticSearchRestHighImpl:healthCheck: Health check successful, index exists: " + getResponse); + } + + @Override + public void onFailure(Exception e) { + logger.error(null, "ElasticSearchRestHighImpl:healthCheck: Health check failed", e); + promise.failure(e); + } + }; + + ConnectionManager.getRestClient().indices().existsAsync(indexRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(null, "ElasticSearchRestHighImpl:healthCheck: Failed to prepare health check request", e); + promise.failure(e); + } + + return promise.future(); + } + + /** + * Performs bulk insertion of documents into Elasticsearch. + * + * @param index The name of the index. + * @param dataList List of documents to insert. + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing true if bulk insert succeeds, false otherwise. + */ + @Override + public Future bulkInsert(String index, List> dataList, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:bulkInsert: method started at ==" + startTime + " for Index " + index); + + if (StringUtils.isBlank(index) || dataList == null || dataList.isEmpty()) { + logger.info(requestContext, "ElasticSearchRestHighImpl:bulkInsert: Invalid parameters - index: " + index + + ", dataList size: " + (dataList == null ? "null" : dataList.size())); + promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); + return promise.future(); + } + + try { + BulkRequest request = new BulkRequest(); + + for (Map data : dataList) { + String id = (String) data.get(JsonKey.ID); + if (StringUtils.isNotBlank(id)) { + data.put(JsonKey.IDENTIFIER, id); + request.add(new IndexRequest(index, _DOC, id).source(data)); + } else { + logger.warn(requestContext, "ElasticSearchRestHighImpl:bulkInsert: Skipping document without ID", null); + } + } + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(BulkResponse bulkResponse) { + boolean hasFailures = false; + Iterator responseItr = bulkResponse.iterator(); + + while (responseItr.hasNext()) { + BulkItemResponse bResponse = responseItr.next(); + if (bResponse.isFailed()) { + hasFailures = true; + logger.warn(requestContext, "ElasticSearchRestHighImpl:bulkInsert: Failed to index document - ID: " + + bResponse.getId() + ", Failure: " + bResponse.getFailureMessage(), null); + } + } + + if (!hasFailures) { + logger.info(requestContext, "ElasticSearchRestHighImpl:bulkInsert: Successfully inserted " + + dataList.size() + " documents into index: " + index); + } + + promise.success(true); + logBulkInsertEndTime(startTime, index, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:bulkInsert: Bulk upload failed for index: " + index, e); + promise.success(false); + logBulkInsertEndTime(startTime, index, requestContext); + } + }; + + ConnectionManager.getRestClient().bulkAsync(request, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:bulkInsert: Failed to prepare/submit bulk request for index: " + index, e); + promise.success(false); + logBulkInsertEndTime(startTime, index, requestContext); + } + + return promise.future(); + } + + /** + * Adds aggregations to the SearchSourceBuilder based on facet configurations. + * Supports date histogram and terms aggregations. + * + * @param searchSourceBuilder The SearchSourceBuilder to add aggregations to. + * @param facets List of facet configurations (map of field names to aggregation types). + * @param requestContext The RequestContext for logging (can be null). + * @return The updated SearchSourceBuilder with aggregations added. + */ + private static SearchSourceBuilder addAggregations(SearchSourceBuilder searchSourceBuilder, + List> facets, + RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + logger.debug(requestContext, "ElasticSearchRestHighImpl:addAggregations: method started at ==" + startTime); + + if (CollectionUtils.isNotEmpty(facets)) { + Map map = facets.get(0); + for (Map.Entry entry : map.entrySet()) { + String key = entry.getKey(); + String value = entry.getValue(); + + if (JsonKey.DATE_HISTOGRAM.equalsIgnoreCase(value)) { + searchSourceBuilder.aggregation( + AggregationBuilders.dateHistogram(key) + .field(key + ElasticSearchHelper.RAW_APPEND) + .dateHistogramInterval(DateHistogramInterval.days(1))); + } else if (null == value) { + searchSourceBuilder.aggregation( + AggregationBuilders.terms(key).field(key + ElasticSearchHelper.RAW_APPEND)); + } + } + } + + logger.debug(requestContext, "ElasticSearchRestHighImpl:addAggregations: method end, Total time elapsed = " + + ElasticSearchHelper.calculateEndTime(startTime)); + return searchSourceBuilder; + } + + /** + * Performs an upsert operation (update if exists, insert if not) on Elasticsearch. + * + * @param index The name of the index. + * @param identifier The unique identifier for the document. + * @param data The data to upsert. + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing true if upsert succeeds, or failure on error. + */ + @Override + public Future upsert(String index, String identifier, Map data, RequestContext requestContext) { + long startTime = System.currentTimeMillis(); + Promise promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:upsert: method started at ==" + startTime + " for Index " + index); + + if (StringUtils.isBlank(index) || StringUtils.isBlank(identifier) || data == null || data.isEmpty()) { + logger.info(requestContext, "ElasticSearchRestHighImpl:upsert: Invalid parameters - index: " + index + + ", identifier: " + identifier + ", data: " + (data == null ? "null" : "size=" + data.size())); + promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); + return promise.future(); + } + + try { + data.put(JsonKey.IDENTIFIER, identifier); + IndexRequest indexRequest = new IndexRequest(index, _DOC, identifier).source(data); + UpdateRequest updateRequest = new UpdateRequest(index, _DOC, identifier).upsert(indexRequest).doc(indexRequest); + + ActionListener listener = new ActionListener() { + @Override + public void onResponse(UpdateResponse updateResponse) { + logger.info(requestContext, "ElasticSearchRestHighImpl:upsert: Success with result: " + updateResponse.getResult() + + " for index: " + index + ", identifier: " + identifier); + promise.success(true); + logUpsertEndTime(startTime, index, requestContext); + } + + @Override + public void onFailure(Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:upsert: Failed to upsert document in index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logUpsertEndTime(startTime, index, requestContext); + } + }; + + ConnectionManager.getRestClient().updateAsync(updateRequest, RequestOptions.DEFAULT, listener); + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:upsert: Failed to prepare/submit upsert request for index: " + + index + ", identifier: " + identifier, e); + promise.failure(e); + logUpsertEndTime(startTime, index, requestContext); + } + + return promise.future(); + } + + /** + * Retrieves multiple documents by their IDs with specified fields. + * + * @param ids List of document IDs to retrieve. + * @param fields List of fields to include in the results. + * @param index The name of the index. + * @param requestContext The RequestContext for logging and tracing. + * @return A Future containing a map of document ID to document data. + */ + @Override + public Future>> getEsResultByListOfIds(List ids, List fields, + String index, RequestContext requestContext) { + Promise>> promise = Futures.promise(); + + logger.debug(requestContext, "ElasticSearchRestHighImpl:getEsResultByListOfIds: method started for index " + index); + + if (ids == null || ids.isEmpty() || StringUtils.isBlank(index)) { + logger.info(requestContext, "ElasticSearchRestHighImpl:getEsResultByListOfIds: Invalid parameters - index: " + index + + ", ids size: " + (ids == null ? "null" : ids.size())); + promise.success(new HashMap<>()); + return promise.future(); + } + + try { + Map filters = new HashMap<>(); + filters.put(JsonKey.ID, ids); + + SearchDTO searchDTO = new SearchDTO(); + searchDTO.getAdditionalProperties().put(JsonKey.FILTERS, filters); + searchDTO.setFields(fields); + + Future> resultF = search(searchDTO, index, requestContext); + Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); + List> esContent = (List>) result.get(JsonKey.CONTENT); + + if (esContent != null && !esContent.isEmpty()) { + Map> resultMap = esContent.stream() + .collect(Collectors.toMap( + obj -> (String) obj.get(JsonKey.ID), + val -> val + )); + promise.success(resultMap); + logger.info(requestContext, "ElasticSearchRestHighImpl:getEsResultByListOfIds: Retrieved " + + resultMap.size() + " documents for index " + index); + } else { + promise.success(new HashMap<>()); + logger.info(requestContext, "ElasticSearchRestHighImpl:getEsResultByListOfIds: No documents found for index " + index); + } + + } catch (Exception e) { + logger.error(requestContext, "ElasticSearchRestHighImpl:getEsResultByListOfIds: Failed to retrieve documents for index: " + index, e); + promise.success(new HashMap<>()); + } + + return promise.future(); + } + + private void logUpsertEndTime(long startTime, String index, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:upsert: method end for Index " + index + + ", Total time elapsed = " + ElasticSearchHelper.calculateEndTime(startTime)); + } + + private void logEndTime(long startTime, String index, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:save: method end at ==" + System.currentTimeMillis() + + " for Index " + index + " ,Total time elapsed = " + ElasticSearchHelper.calculateEndTime(startTime)); + } + + private void logUpdateEndTime(long startTime, String index, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:update: method end for Index " + index + + ", Total time elapsed = " + ElasticSearchHelper.calculateEndTime(startTime)); + } + + private void logGetEndTime(long startTime, String index, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: method end for Index " + index + + ", Total time elapsed = " + ElasticSearchHelper.calculateEndTime(startTime)); + } + + private void logDeleteEndTime(long startTime, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:delete: method end, Total time elapsed = " + + ElasticSearchHelper.calculateEndTime(startTime)); + } + + private void logSearchEndTime(long startTime, String index, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:search: method end for Index " + index + + ", Total time elapsed = " + ElasticSearchHelper.calculateEndTime(startTime)); + } + + private void logBulkInsertEndTime(long startTime, String index, RequestContext requestContext) { + logger.debug(requestContext, "ElasticSearchRestHighImpl:bulkInsert: method end for Index " + index + + ", Total time elapsed = " + ElasticSearchHelper.calculateEndTime(startTime)); + } + +} diff --git a/core/sunbird-es-utils/src/main/java/org/sunbird/common/factory/EsClientFactory.java b/core/sunbird-es-utils/src/main/java/org/sunbird/common/factory/EsClientFactory.java new file mode 100644 index 000000000..3f504f651 --- /dev/null +++ b/core/sunbird-es-utils/src/main/java/org/sunbird/common/factory/EsClientFactory.java @@ -0,0 +1,62 @@ +package org.sunbird.common.factory; + +import org.sunbird.common.ElasticSearchRestHighImpl; +import org.sunbird.common.inf.ElasticSearchService; +import org.sunbird.common.models.util.JsonKey; +import org.sunbird.common.models.util.LoggerUtil; + +/** + * Factory class to provide instances of ElasticSearchService. + * Supports creating clients for different connection types (e.g., REST). + */ +public class EsClientFactory { + + private static volatile ElasticSearchService restClient = null; + private static final LoggerUtil logger = new LoggerUtil(EsClientFactory.class); + + private EsClientFactory() { + // Private constructor to prevent instantiation + } + + /** + * Returns a REST-based ElasticSearchService instance. + * This is the default factory method. + * + * @return The singleton instance of ElasticSearchService (REST implementation). + */ + public static ElasticSearchService getInstance() { + return getRestClient(); + } + + /** + * Returns an ElasticSearchService instance based on the provided connection type. + * + * @param type The connection type (e.g., "rest"). Currently only "rest" is supported. + * @return The ElasticSearchService instance for the specified type, or null if unsupported. + */ + public static ElasticSearchService getInstance(String type) { + if (JsonKey.REST.equalsIgnoreCase(type)) { + return getRestClient(); + } + logger.info(null, "EsClientFactory:getInstance: Unsupported client type provided: " + type); + return null; + } + + /** + * Helper method to initialize and return the REST client singleton. + * Uses double-checked locking for thread safety. + * + * @return The singleton instance of ElasticSearchRestHighImpl. + */ + private static ElasticSearchService getRestClient() { + if (restClient == null) { + synchronized (EsClientFactory.class) { + if (restClient == null) { + logger.info(null, "EsClientFactory:getRestClient: Initializing new ElasticSearchRestHighImpl."); + restClient = new ElasticSearchRestHighImpl(); + } + } + } + return restClient; + } +} diff --git a/core/sunbird-es-utils/src/main/java/org/sunbird/common/inf/ElasticSearchService.java b/core/sunbird-es-utils/src/main/java/org/sunbird/common/inf/ElasticSearchService.java new file mode 100644 index 000000000..031adba82 --- /dev/null +++ b/core/sunbird-es-utils/src/main/java/org/sunbird/common/inf/ElasticSearchService.java @@ -0,0 +1,138 @@ +package org.sunbird.common.inf; + +import java.util.List; +import java.util.Map; +import org.sunbird.common.request.RequestContext; +import org.sunbird.dto.SearchDTO; +import scala.concurrent.Future; + +/** + * Elasticsearch service interface defining operations for document management and search. + * All methods are asynchronous and return Scala Futures for non-blocking execution. + */ +public interface ElasticSearchService { + + /** Elasticsearch document type constant for compatibility. */ + String _DOC = "_doc"; + + /** + * Saves a new document in Elasticsearch. + * The identifier becomes the document _id in ES. + * + * @param index ES index name + * @param identifier document ID + * @param data document data + * @param requestContext request context for logging and tracking + * @return Future containing the created document identifier + */ + Future save( + String index, + String identifier, + Map data, + RequestContext requestContext); + + /** + * Updates an existing document by merging with new data. + * + * @param index ES index name + * @param identifier document ID + * @param data update data to merge + * @param requestContext request context for logging and tracking + * @return Future containing update success status + */ + Future update( + String index, + String identifier, + Map data, + RequestContext requestContext); + + /** + * Retrieves a document by identifier. + * + * @param index ES index name + * @param identifier document ID + * @param requestContext request context for logging and tracking + * @return Future containing document data or null if not found + */ + Future> getDataByIdentifier( + String index, + String identifier, + RequestContext requestContext); + + /** + * Deletes a document by identifier. + * + * @param index ES index name + * @param identifier document ID + * @param requestContext request context for logging and tracking + * @return Future containing deletion success status + */ + Future delete( + String index, + String identifier, + RequestContext requestContext); + + /** + * Performs search based on SearchDTO criteria including filters, facets, sorting, and pagination. + * + * @param searchDTO search criteria + * @param index ES index name + * @param requestContext request context for logging and tracking + * @return Future containing search results + */ + Future> search( + SearchDTO searchDTO, + String index, + RequestContext requestContext); + + /** + * Performs Elasticsearch health check. + * + * @return Future containing health status + */ + Future healthCheck(); + + /** + * Bulk inserts multiple documents in a single operation. + * + * @param index ES index name + * @param dataList list of documents to insert + * @param requestContext request context for logging and tracking + * @return Future containing bulk insert success status + */ + Future bulkInsert( + String index, + List> dataList, + RequestContext requestContext); + + /** + * Upserts a document (update if exists, insert if not). + * + * @param index ES index name + * @param identifier document ID + * @param data document data + * @param requestContext request context for logging and tracking + * @return Future containing upsert success status + */ + Future upsert( + String index, + String identifier, + Map data, + RequestContext requestContext); + + /** + * Retrieves multiple documents by IDs with specified fields. + * + * @param ids list of document IDs + * @param fields list of fields to retrieve + * @param index ES index name + * @param requestContext request context for logging and tracking + * @return Future containing map of ID to document data + */ + Future>> getEsResultByListOfIds( + List ids, + List fields, + String index, + RequestContext requestContext); + +} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/dto/SearchDTO.java b/core/sunbird-es-utils/src/main/java/org/sunbird/dto/SearchDTO.java similarity index 67% rename from course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/dto/SearchDTO.java rename to core/sunbird-es-utils/src/main/java/org/sunbird/dto/SearchDTO.java index 3196aff81..174811b8c 100644 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/dto/SearchDTO.java +++ b/core/sunbird-es-utils/src/main/java/org/sunbird/dto/SearchDTO.java @@ -1,4 +1,3 @@ -/** */ package org.sunbird.dto; import java.util.ArrayList; @@ -7,44 +6,73 @@ import java.util.Map; /** - * This class will take input for elastic search query - * - * @author Manzarul + * Data Transfer Object for Elasticsearch query operations. + * Encapsulates all parameters required for building and executing ES queries including + * search criteria, pagination, sorting, facets, and fuzzy search options. */ public class SearchDTO { + /** List of property filters for the search query. */ @SuppressWarnings("rawtypes") private List properties; + /** List of facet aggregations to compute. */ private List> facets = new ArrayList<>(); + + /** Fields to include in search results. */ private List fields; + + /** Fields to exclude from search results. */ private List excludedFields; + + /** Sorting criteria as field-order pairs. */ private Map sortBy = new HashMap<>(); + + /** Logical operation for combining search criteria (AND/OR). */ private String operation; + + /** Free-text search query string. */ private String query; + + /** Specific fields to search within for the query. */ private List queryFields; + /** Maximum number of results to return. Default: 1000 */ private Integer limit = 1000; + + /** Number of results to skip for pagination. Default: 0 */ private Integer offset = 0; + + /** Enable fuzzy matching for search queries. */ private boolean fuzzySearch = false; - // additional properties will hold , filters, exist , not exist + + /** Additional filter properties including filters, exists, and not-exists conditions. */ private Map additionalProperties = new HashMap<>(); + + /** Soft constraints with priority weights for ranking. */ private Map softConstraints = new HashMap<>(); - private List> groupQuery = new ArrayList<>(); - private List mode = new ArrayList<>(); - public List> getGroupQuery() { - return groupQuery; - } + /** Fuzzy search configuration parameters. */ + private Map fuzzy = new HashMap<>(); - public void setGroupQuery(List> groupQuery) { - this.groupQuery = groupQuery; - } + /** Grouped query clauses for complex boolean queries. */ + private List> groupQuery = new ArrayList<>(); + + /** Query execution modes. */ + private List mode = new ArrayList<>(); + /** Default constructor. */ public SearchDTO() { super(); } + /** + * Constructor with basic search parameters. + * + * @param properties list of property filters + * @param operation logical operation (AND/OR) + * @param limit maximum results to return + */ @SuppressWarnings("rawtypes") public SearchDTO(List properties, String operation, int limit) { super(); @@ -111,10 +139,22 @@ public void setAdditionalProperties(Map additionalProperties) { this.additionalProperties = additionalProperties; } + /** + * Retrieves a specific additional property by key. + * + * @param key property key + * @return property value or null if not found + */ public Object getAdditionalProperty(String key) { return additionalProperties.get(key); } + /** + * Adds a single additional property. + * + * @param key property key + * @param value property value + */ public void addAdditionalProperty(String key, Object value) { this.additionalProperties.put(key, value); } @@ -174,4 +214,20 @@ public List getQueryFields() { public void setQueryFields(List queryFields) { this.queryFields = queryFields; } + + public Map getFuzzy() { + return fuzzy; + } + + public void setFuzzy(Map fuzzy) { + this.fuzzy = fuzzy; + } + + public List> getGroupQuery() { + return groupQuery; + } + + public void setGroupQuery(List> groupQuery) { + this.groupQuery = groupQuery; + } } diff --git a/core/sunbird-es-utils/src/main/java/org/sunbird/helper/ConnectionManager.java b/core/sunbird-es-utils/src/main/java/org/sunbird/helper/ConnectionManager.java new file mode 100644 index 000000000..574d8f049 --- /dev/null +++ b/core/sunbird-es-utils/src/main/java/org/sunbird/helper/ConnectionManager.java @@ -0,0 +1,201 @@ +package org.sunbird.helper; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import org.apache.commons.lang3.StringUtils; +import org.apache.http.HttpHost; +import org.elasticsearch.client.RestClient; +import org.elasticsearch.client.RestHighLevelClient; +import org.sunbird.common.models.util.JsonKey; +import org.sunbird.common.models.util.LoggerUtil; + +/** + * Manages Elasticsearch REST high-level client connections with thread-safe singleton access. + * Configuration is read from environment variables: SUNBIRD_ES_IP, SUNBIRD_ES_PORT, SUNBIRD_ES_CLUSTER. + */ +public class ConnectionManager { + + private static final LoggerUtil logger = new LoggerUtil(ConnectionManager.class); + + /** Singleton REST high-level client instance. */ + private static volatile RestHighLevelClient restClient = null; + + /** List of Elasticsearch host addresses. */ + private static final List hosts = new ArrayList<>(); + + /** List of Elasticsearch ports (populated from env but currently unused). */ + private static final List ports = new ArrayList<>(); + + /** Lock object for thread-safe client initialization. */ + private static final Object lock = new Object(); + + static { + // Prevent Netty from using runtime available processors check + System.setProperty("es.set.netty.runtime.available.processors", "false"); + + // Initialize connection on class loading + initialiseRestClientConnection(); + + // Register shutdown hook for cleanup + registerShutDownHook(); + } + + /** Private constructor to prevent instantiation. */ + private ConnectionManager() {} + + /** + * Initializes Elasticsearch REST client from environment variables. + * + * @return true if connection established successfully, false otherwise + */ + private static boolean initialiseRestClientConnection() { + try { + String cluster = System.getenv(JsonKey.SUNBIRD_ES_CLUSTER); + String hostName = System.getenv(JsonKey.SUNBIRD_ES_IP); + String port = System.getenv(JsonKey.SUNBIRD_ES_PORT); + + // Validate required configuration + if (StringUtils.isBlank(hostName) || StringUtils.isBlank(port)) { + logger.warn( + null, + "Elasticsearch configuration incomplete - SUNBIRD_ES_IP or SUNBIRD_ES_PORT not set", + null); + return false; + } + + // Parse comma-separated hosts + String[] splitedHost = hostName.split(","); + for (String host : splitedHost) { + String trimmedHost = host.trim(); + if (StringUtils.isNotBlank(trimmedHost)) { + hosts.add(trimmedHost); + } + } + + // Parse comma-separated ports (currently stored but not used) + String[] splitedPort = port.split(","); + for (String portStr : splitedPort) { + String trimmedPort = portStr.trim(); + if (StringUtils.isNotBlank(trimmedPort)) { + try { + ports.add(Integer.parseInt(trimmedPort)); + } catch (NumberFormatException e) { + logger.warn(null, "Invalid port number in SUNBIRD_ES_PORT: " + trimmedPort, null); + } + } + } + + // Create REST client + boolean success = createRestClient(cluster, hosts); + + if (success) { + String clusterName = cluster != null ? cluster : "default"; + String hostList = String.join(",", hosts); + logger.info( + null, + "Elasticsearch connection established successfully - cluster: " + clusterName + + ", hosts: " + hostList + ", port: 9200"); + } + + return success; + + } catch (Exception e) { + logger.error(null, "Failed to initialize Elasticsearch REST client connection", e); + return false; + } + } + + /** + * Returns the singleton REST client instance with thread-safe lazy initialization. + * + * @return RestHighLevelClient instance, or null if initialization failed + */ + public static RestHighLevelClient getRestClient() { + // First check without locking (performance optimization) + if (restClient == null) { + synchronized (lock) { + // Double-check after acquiring lock + if (restClient == null) { + logger.info(null, "REST client is null, attempting to initialize connection"); + + boolean initialized = initialiseRestClientConnection(); + + if (initialized && restClient != null) { + logger.info(null, "REST client initialized successfully"); + } else { + logger.error( + null, + "Failed to initialize REST client - check Elasticsearch configuration", + null); + } + } + } + } + return restClient; + } + + /** + * Creates Elasticsearch REST client instance using port 9200 for all hosts. + * + * @param clusterName cluster name (informational only) + * @param hostList list of host addresses + * @return true if client created successfully, false otherwise + */ + private static boolean createRestClient(String clusterName, List hostList) { + try { + if (hostList == null || hostList.isEmpty()) { + logger.warn(null, "No Elasticsearch hosts provided for client initialization", null); + return false; + } + + // Build HttpHost array for all configured hosts + HttpHost[] httpHosts = new HttpHost[hostList.size()]; + for (int i = 0; i < hostList.size(); i++) { + httpHosts[i] = new HttpHost(hostList.get(i), 9200, "http"); + logger.debug(null, "Adding Elasticsearch node: " + hostList.get(i) + ":9200"); + } + + // Create REST high-level client + restClient = new RestHighLevelClient(RestClient.builder(httpHosts)); + + logger.info( + null, + "Elasticsearch REST client created successfully with " + hostList.size() + " host(s)"); + + return true; + + } catch (Exception e) { + logger.error(null, "Failed to create Elasticsearch REST client", e); + return false; + } + } + + /** Shutdown hook for graceful Elasticsearch client cleanup. */ + static class ResourceCleanUp extends Thread { + @Override + public void run() { + if (restClient != null) { + try { + logger.info(null, "Shutting down Elasticsearch REST client"); + restClient.close(); + logger.info(null, "Elasticsearch REST client closed successfully"); + } catch (IOException e) { + logger.error( + null, + "Error occurred during Elasticsearch REST client resource cleanup: " + e.getMessage(), + e); + } + } else { + logger.debug(null, "No Elasticsearch REST client to clean up"); + } + } + } + + /** Registers JVM shutdown hook for resource cleanup. */ + static void registerShutDownHook() { + Runtime runtime = Runtime.getRuntime(); + runtime.addShutdownHook(new ResourceCleanUp()); + logger.debug(null, "Elasticsearch connection cleanup shutdown hook registered"); + } +} diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/BackgroundJobManager.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/BackgroundJobManager.java index f49b42603..f495b38a6 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/BackgroundJobManager.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/BackgroundJobManager.java @@ -127,7 +127,7 @@ private void insertCourseBatchInfoToEs(Request actorMessage) { } private boolean updateDataToElastic(RequestContext requestContext, String indexName, String typeName, String identifier, Map data) { - Future responseF = esService.update(requestContext, typeName, identifier, data); + Future responseF = esService.update(typeName, identifier, data, requestContext); boolean response = (boolean) ElasticSearchHelper.getResponseFromFuture(responseF); if (response) { return true; @@ -149,7 +149,7 @@ private boolean updateDataToElastic(RequestContext requestContext, String indexN */ private boolean insertDataToElastic(RequestContext requestContext, String index, String type, String identifier, Map data) { logger.info(requestContext, "BackgroundJobManager:insertDataToElastic: type = " + type + " identifier = " + identifier); - Future responseF = esService.save(requestContext, type, identifier, data); + Future responseF = esService.save(type, identifier, data, requestContext); String response = (String) ElasticSearchHelper.getResponseFromFuture(responseF); logger.debug(requestContext, "ES save response for identifier :" + identifier, null, new HashMap() {{put("response", response);}}); if (!StringUtils.isBlank(response)) { diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/PageManagementActor.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/PageManagementActor.java index 8224c5416..76ef3fe6c 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/PageManagementActor.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/PageManagementActor.java @@ -630,7 +630,7 @@ private Map searchFromES(RequestContext requestContext, Map> resultF = esService.search(requestContext, searcDto, type); + Future> resultF = esService.search(searcDto, type, requestContext); Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); return result; diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/coursebatch/service/UserCoursesService.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/coursebatch/service/UserCoursesService.java index 59c4697d9..6daec6607 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/coursebatch/service/UserCoursesService.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/coursebatch/service/UserCoursesService.java @@ -74,7 +74,7 @@ public Map getActiveEnrollments(String userId) { filter.put(JsonKey.ACTIVE, ProjectUtil.ActiveStatus.ACTIVE.getValue()); SearchDTO searchDto = new SearchDTO(); searchDto.getAdditionalProperties().put(JsonKey.FILTERS, filter); - Future> resultF = esService.search(null, searchDto, ProjectUtil.EsType.usercourses.getTypeName()); + Future> resultF = esService.search(searchDto, ProjectUtil.EsType.usercourses.getTypeName(), null); Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); return result; } @@ -83,7 +83,7 @@ public static void sync(RequestContext requestContext, Map cours String id = generateUserCourseESId(batchId, userId); courseMap.put(JsonKey.ID, id); courseMap.put(JsonKey.IDENTIFIER, id); - Future responseF = esService.upsert(requestContext, ProjectUtil.EsType.usercourses.getTypeName(), id, courseMap); + Future responseF = esService.upsert(ProjectUtil.EsType.usercourses.getTypeName(), id, courseMap, requestContext); boolean response = (boolean) ElasticSearchHelper.getResponseFromFuture(responseF); } diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/search/SearchHandlerActor.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/search/SearchHandlerActor.java index a8053a4f5..8052a9ca5 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/search/SearchHandlerActor.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/search/SearchHandlerActor.java @@ -99,7 +99,7 @@ public void onReceive(Request request) throws Throwable { logger.info(request.getRequestContext(), "SearchHandlerActor:onReceive request search instant duration=" + (Instant.now().toEpochMilli() - instant.toEpochMilli())); String searchType = (types != null && types.length > 0) ? types[0] : ""; - Future> resultF = esService.search(request.getRequestContext(), searchDto, searchType); + Future> resultF = esService.search(searchDto, searchType, request.getRequestContext()); result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); logger.info(request.getRequestContext(), "SearchHandlerActor:onReceive search complete instant duration=" + (Instant.now().toEpochMilli() - instant.toEpochMilli())); diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/syncjobmanager/EsSyncActor.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/syncjobmanager/EsSyncActor.java index 3b4bb2b84..c6106afcb 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/syncjobmanager/EsSyncActor.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/actors/syncjobmanager/EsSyncActor.java @@ -143,12 +143,12 @@ public void onSuccess(ResultSet result) { docList.add(doc); count++; if (docList.size() >= BATCH_SIZE) { - esService.bulkInsert(requestContext, getType(objectType), docList); + esService.bulkInsert(getType(objectType), docList, requestContext); docList.clear(); } } if (!docList.isEmpty()) { - esService.bulkInsert(requestContext, getType(objectType), docList); + esService.bulkInsert(getType(objectType), docList, requestContext); } logger.info(requestContext, "getSyncCallback sync successful objectType=" + objectType + " count=" + count); } catch (Exception e) { diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchSchedulerUtil.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchSchedulerUtil.java index e0a80b557..64866ff26 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchSchedulerUtil.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchSchedulerUtil.java @@ -73,7 +73,7 @@ public static void updateCourseBatchDbStatus(Map map, Boolean in public static boolean updateDataIntoES(RequestContext requestContext, Map map) { boolean flag = true; try { - Future flagF = esService.update(requestContext, ProjectUtil.EsType.course.getTypeName(), (String) map.get(JsonKey.ID), map); + Future flagF = esService.update(ProjectUtil.EsType.course.getTypeName(), (String) map.get(JsonKey.ID), map, requestContext); flag = (boolean) ElasticSearchHelper.getResponseFromFuture(flagF); } catch (Exception e) { logger.error(requestContext, "CourseBatchSchedulerUtil:updateDataIntoES: Exception occurred while saving course batch data to ES", e); diff --git a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchUtil.java b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchUtil.java index 25ae48623..1f6362a7e 100644 --- a/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchUtil.java +++ b/course-mw/course-actors-common/src/main/java/org/sunbird/learner/util/CourseBatchUtil.java @@ -41,14 +41,14 @@ public static void syncCourseBatchForeground(RequestContext requestContext, Stri logger.info(requestContext, "CourseBatchManagementActor: syncCourseBatchForeground called for course batch ID = " + uniqueId); req.put(JsonKey.ID, uniqueId); req.put(JsonKey.IDENTIFIER, uniqueId); - Future esResponseF = esUtil.save(requestContext, ProjectUtil.EsType.courseBatch.getTypeName(), uniqueId, req); + Future esResponseF = esUtil.save(ProjectUtil.EsType.courseBatch.getTypeName(), uniqueId, req, requestContext); String esResponse = (String) ElasticSearchHelper.getResponseFromFuture(esResponseF); logger.info(requestContext, "CourseBatchManagementActor::syncCourseBatchForeground: Sync response for course batch ID = " + uniqueId + " received response = " + esResponse); } public static Map validateCourseBatch(RequestContext requestContext, String courseId, String batchId) { - Future> resultF = esUtil.getDataByIdentifier(requestContext, EsType.courseBatch.getTypeName(), batchId); + Future> resultF = esUtil.getDataByIdentifier(EsType.courseBatch.getTypeName(), batchId, requestContext); Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); if (MapUtils.isEmpty(result)) { ProjectCommonException.throwClientErrorException(ResponseCode.CLIENT_ERROR, "No such batchId exists"); diff --git a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java index 3f99b4a99..f33d351b6 100644 --- a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java +++ b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java @@ -88,7 +88,7 @@ public void beforeTest() throws Exception { when(EsClientFactory.getInstance()).thenReturn(esService); Promise> promise = Futures.promise(); promise.success(createResponseGet(true)); - when(esService.search(Mockito.any(), Mockito.any(SearchDTO.class), Mockito.anyVararg())) + when(esService.search(Mockito.any(SearchDTO.class), Mockito.anyString(), Mockito.any())) .thenReturn(promise.future()); PowerMockito.mockStatic(ServiceFactory.class); diff --git a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/certificate/CertificateActorTest.java b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/certificate/CertificateActorTest.java index fa86f417b..29c4b6d23 100644 --- a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/certificate/CertificateActorTest.java +++ b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/certificate/CertificateActorTest.java @@ -54,7 +54,7 @@ public void issueCertificateTest() throws Exception { .generateRandomFields() .addField("cert_templates", new HashMap<>()) .build(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatch.asESIdentifierResult()); PowerMockito.doNothing().when(KafkaClient.class, "send", Mockito.any(), Mockito.anyString()); Request req = new Request(); @@ -82,7 +82,7 @@ public void reIssueCertificateTest() throws Exception { .generateRandomFields() .addField("cert_templates", new HashMap<>()) .build(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatch.asESIdentifierResult()); PowerMockito.doNothing().when(KafkaClient.class, "send", Mockito.any(), Mockito.anyString()); Request req = new Request(); @@ -109,7 +109,7 @@ public void issueCertificateCertEmptyTest() { group = MockerBuilder.getFreshMockerGroup().withESMock(new ESMocker()); CustomObjectWrapper> courseBatch = CustomObjectBuilder.getCourseBatchBuilder().generateRandomFields().build(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatch.asESIdentifierResult()); Request req = new Request(); HashMap innerMap = new HashMap<>(); @@ -131,7 +131,7 @@ public void issueCertificateCourseMismatchTest() { group = MockerBuilder.getFreshMockerGroup().withESMock(new ESMocker()); CustomObjectWrapper> courseBatch = CustomObjectBuilder.getCourseBatchBuilder().generateRandomFields().build(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatch.asESIdentifierResult()); Request req = new Request(); HashMap innerMap = new HashMap<>(); @@ -152,7 +152,7 @@ public void issueCertificateCourseMismatchTest() { public void issueCertificateMissingBatchTest() { group = MockerBuilder.getFreshMockerGroup().withESMock(new ESMocker()); CustomObjectWrapper> courseBatch = CustomObjectBuilder.getEmptyMap(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatch.asESIdentifierResult()); Request req = new Request(); HashMap innerMap = new HashMap<>(); diff --git a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/coursebatch/service/UserCourseServiceTest.java b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/coursebatch/service/UserCourseServiceTest.java index ce00833ff..b25c02ef7 100644 --- a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/coursebatch/service/UserCourseServiceTest.java +++ b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/actors/coursebatch/service/UserCourseServiceTest.java @@ -108,7 +108,7 @@ public void getActiveUserCourseTestSuccess() { Map map = new HashMap<>(); Promise> promise = Futures.promise(); promise.trySuccess(map); - when(esUtil.search(Mockito.any(), Mockito.anyObject(), Mockito.anyString())).thenReturn(promise.future()); + when(esUtil.search(Mockito.any(), Mockito.anyString(), Mockito.any())).thenReturn(promise.future()); Assert.assertNotEquals(null, userCoursesService.getActiveEnrollments(JsonKey.USER_ID)); } @@ -116,7 +116,7 @@ public void getActiveUserCourseTestSuccess() { public void getActiveUserCourseFailure() { Promise> promise = Futures.promise(); promise.success(null); - when(esUtil.search(Mockito.any(), Mockito.anyObject(), Mockito.anyString())).thenReturn(promise.future()); + when(esUtil.search(Mockito.any(), Mockito.anyString(), Mockito.any())).thenReturn(promise.future()); Assert.assertEquals(null, userCoursesService.getActiveEnrollments(JsonKey.USER_ID)); } } diff --git a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchSchedulerUtilTest.java b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchSchedulerUtilTest.java index ea1d3840f..a8f27ecc3 100644 --- a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchSchedulerUtilTest.java +++ b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchSchedulerUtilTest.java @@ -122,7 +122,7 @@ public void updateCourseBatchDbStatusSuccessTest() throws IOException { PowerMockito.when( group .getESMockerService() - .update(Mockito.any(), Mockito.anyString(), Mockito.anyString(), Mockito.anyMap())) + .update(Mockito.anyString(), Mockito.anyString(), Mockito.anyMap(), Mockito.any())) .thenReturn(Futures.successful(true)); PowerMockito.when( group diff --git a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchUtilTest.java b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchUtilTest.java index 80ca6ee95..6b7332ba8 100644 --- a/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchUtilTest.java +++ b/course-mw/course-actors-common/src/test/java/org/sunbird/learner/util/CourseBatchUtilTest.java @@ -124,7 +124,7 @@ public void validateCourseBatchSuccessTest() { group.withESMock(new ESMocker()); CustomObjectWrapper> courseBatchIn = CustomObjectBuilder.getRandomCourseBatch(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatchIn.asESIdentifierResult()); Map courseBatchOut = CourseBatchUtil.validateCourseBatch( @@ -138,7 +138,7 @@ public void validateCourseBatchSuccessTest() { @PrepareForTest({EsClientFactory.class, ElasticSearchHelper.class, Unirest.class}) public void validateCourseBatchFailureTest() { group.withESMock(new ESMocker()); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(CustomObjectBuilder.getEmptyMap().asESIdentifierResult()); try { CourseBatchUtil.validateCourseBatch(Mockito.any(), "courseId", "batchId"); @@ -154,7 +154,7 @@ public void validateCourseBatchCourseMismatchFailureTest() { group.withESMock(new ESMocker()); CustomObjectWrapper> courseBatchIn = CustomObjectBuilder.getRandomCourseBatch(); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(courseBatchIn.asESIdentifierResult()); try { Map courseBatchOut = @@ -173,7 +173,7 @@ public void syncCourseBatchForegroundSuccessTest() { group.withESMock(new ESMocker()); when(group .getESMockerService() - .save(Mockito.any(), Mockito.anyString(), Mockito.anyString(), Mockito.anyMap())) + .save(Mockito.anyString(), Mockito.anyString(), Mockito.anyMap(), Mockito.any())) .thenReturn(Futures.successful("randomBatchId")); CourseBatchUtil.syncCourseBatchForeground( null, "randomBatchId", CustomObjectBuilder.getRandomCourseBatch().get()); diff --git a/course-mw/course-actors/src/main/java/org/sunbird/learner/actors/bulkupload/BulkUploadBackGroundJobActor.java b/course-mw/course-actors/src/main/java/org/sunbird/learner/actors/bulkupload/BulkUploadBackGroundJobActor.java index ef27a9db9..5916eb8c5 100644 --- a/course-mw/course-actors/src/main/java/org/sunbird/learner/actors/bulkupload/BulkUploadBackGroundJobActor.java +++ b/course-mw/course-actors/src/main/java/org/sunbird/learner/actors/bulkupload/BulkUploadBackGroundJobActor.java @@ -105,7 +105,7 @@ private void processBatchEnrollment(RequestContext requestContext, List tempSuccessList = new HashMap<>(); String batchId = (String) batchMap.get(JsonKey.BATCH_ID); - Future> resultF = esService.getDataByIdentifier(requestContext, ProjectUtil.EsType.courseBatch.getTypeName(), batchId); + Future> resultF = esService.getDataByIdentifier(ProjectUtil.EsType.courseBatch.getTypeName(), batchId, requestContext); Map courseBatchObject = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); String msg = validateBatchInfo(courseBatchObject); if (msg.equals(JsonKey.SUCCESS)) { @@ -188,7 +188,7 @@ private void validateBatchUserListAndAdd(RequestContext requestContext, Map> resultF = - esService.getDataByIdentifier(actorMessage.getRequestContext(), ProjectUtil.EsType.courseBatch.getTypeName(), - (String) actorMessage.getContext().get(JsonKey.BATCH_ID)); + esService.getDataByIdentifier(ProjectUtil.EsType.courseBatch.getTypeName(), + (String) actorMessage.getContext().get(JsonKey.BATCH_ID), actorMessage.getRequestContext()); Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); if (result.containsKey(JsonKey.COURSE_ID)) result.put(JsonKey.COLLECTION_ID, result.getOrDefault(JsonKey.COURSE_ID, "")); diff --git a/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java b/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java index 0c8df2dfe..36c5d82fe 100644 --- a/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java +++ b/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/SearchHandlerActorTest.java @@ -68,7 +68,7 @@ public void beforeTest() { when(EsClientFactory.getInstance()).thenReturn(esService); Promise> promise = Futures.promise(); promise.success(createResponseGet()); - when(esService.search(Mockito.any(), Mockito.any(SearchDTO.class), Mockito.anyVararg())) + when(esService.search(Mockito.any(SearchDTO.class), Mockito.anyString(), Mockito.any())) .thenReturn(promise.future()); PowerMockito.mockStatic(ServiceFactory.class); diff --git a/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/coursebatch/CourseBatchManagementActorTest.java b/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/coursebatch/CourseBatchManagementActorTest.java index a0d013297..ed596fae4 100644 --- a/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/coursebatch/CourseBatchManagementActorTest.java +++ b/course-mw/course-actors/src/test/java/org/sunbird/learner/actors/coursebatch/CourseBatchManagementActorTest.java @@ -70,7 +70,7 @@ public void createBatchInviteSuccess() throws Exception { .get(); when(group .getESMockerService() - .save(Mockito.any(), Mockito.anyString(), Mockito.anyString(), Mockito.anyMap())) + .save(Mockito.anyString(), Mockito.anyString(), Mockito.anyMap(), Mockito.any())) .thenReturn(Futures.successful("randomESID")); when(ContentUtil.searchContent(Mockito.anyString(), Mockito.anyMap())) .thenReturn(CustomObjectBuilder.getRandomCourse().get()); @@ -129,7 +129,7 @@ public Map answer(InvocationOnMock invocation) throws Throwable @PrepareForTest({EsClientFactory.class}) public void getBatchSuccess() { group = MockerBuilder.getFreshMockerGroup().withESMock(new ESMocker()); - when(group.getESMockerService().getDataByIdentifier(Mockito.any(), Mockito.anyString(), Mockito.anyString())) + when(group.getESMockerService().getDataByIdentifier(Mockito.anyString(), Mockito.anyString(), Mockito.any())) .thenReturn(CustomObjectBuilder.getRandomCourseBatch().asESIdentifierResult()); Request req = new Request(); req.setOperation("getBatch"); diff --git a/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/BaseEnrolmentActor.scala b/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/BaseEnrolmentActor.scala index 62a56678a..00445bd8a 100644 --- a/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/BaseEnrolmentActor.scala +++ b/course-mw/enrolment-actor/src/main/scala/org/sunbird/enrolments/BaseEnrolmentActor.scala @@ -21,7 +21,7 @@ abstract class BaseEnrolmentActor extends BaseActor { dto.getAdditionalProperties().put(JsonKey.FILTERS, new java.util.HashMap[String, AnyRef](){{ put(JsonKey.BATCH_ID, batchIds)}}) if(CollectionUtils.isNotEmpty(requestedFields)) dto.setFields(requestedFields) - val future = esService.search(requestContext, dto, ProjectUtil.EsType.courseBatch.getTypeName) + val future = esService.search(dto, ProjectUtil.EsType.courseBatch.getTypeName, requestContext) val response = ElasticSearchHelper.getResponseFromFuture(future).asInstanceOf[java.util.Map[String, AnyRef]] response.getOrDefault(JsonKey.CONTENT, new java.util.ArrayList[util.Map[String, AnyRef]]).asInstanceOf[util.List[util.Map[String, AnyRef]]] } diff --git a/course-mw/enrolment-actor/src/test/scala/org/sunbird/enrolments/CourseConsumptionActorTest.scala b/course-mw/enrolment-actor/src/test/scala/org/sunbird/enrolments/CourseConsumptionActorTest.scala index 2a6dcf998..6fa1c11a9 100644 --- a/course-mw/enrolment-actor/src/test/scala/org/sunbird/enrolments/CourseConsumptionActorTest.scala +++ b/course-mw/enrolment-actor/src/test/scala/org/sunbird/enrolments/CourseConsumptionActorTest.scala @@ -74,7 +74,7 @@ class CourseConsumptionActorTest extends FlatSpec with Matchers with MockFactory put("contentId", "do_789") }}) }}) - (esService.search(_:RequestContext, _: SearchDTO, _: String)).expects(*,*,*).returns(concurrent.Future{validBatchData()}) + (esService.search(_: SearchDTO, _: String, _: RequestContext)).expects(*,*,*).returns(concurrent.Future{validBatchData()}) (cassandraOperation.getRecords(_: String, _: String, _: java.util.Map[String, AnyRef], _: java.util.List[String], _:RequestContext)).expects(*,*,*,*,*).returns(response) (cassandraOperation.batchInsertLogged(_: String, _: String, _: java.util.List[java.util.Map[String, AnyRef]], _:RequestContext)).expects(*,*,*,*) (cassandraOperation.updateRecordV2(_: String, _: String, _: java.util.Map[String, AnyRef], _: java.util.Map[String, AnyRef], _: Boolean, _:RequestContext)).expects("sunbird_courses", "user_enrolments",*,*,true,*) @@ -119,7 +119,7 @@ class CourseConsumptionActorTest extends FlatSpec with Matchers with MockFactory "update AssessmentScore" should "return success on updating the progress" in { val cassandraOperation = mock[CassandraOperation] val esService = mock[ElasticSearchService] - ((requestContext: RequestContext, searchDTO: _root_.org.sunbird.dto.SearchDTO, index: _root_.scala.Predef.String) => esService.search(requestContext, searchDTO, index)).expects(*,*,*).returns(concurrent.Future{validBatchData()}).anyNumberOfTimes() + ((searchDTO: _root_.org.sunbird.dto.SearchDTO, index: _root_.scala.Predef.String, requestContext: RequestContext) => esService.search(searchDTO, index, requestContext)).expects(*,*,*).returns(concurrent.Future{validBatchData()}).anyNumberOfTimes() val response = new Response() response.put("response", new java.util.ArrayList[java.util.Map[String, AnyRef]]()) (cassandraOperation.getRecords(_: String, _: String, _: java.util.Map[String, AnyRef], _: java.util.List[String], _:RequestContext)).expects(*,*,*,*,*).returns(response) @@ -330,7 +330,7 @@ class CourseConsumptionActorTest extends FlatSpec with Matchers with MockFactory } }) - (esService.search(_: RequestContext, _: SearchDTO, _: String)).expects(*, *, *).returns(concurrent.Future { + (esService.search(_: SearchDTO, _: String, _: RequestContext)).expects(*, *, *).returns(concurrent.Future { validBatchData() }) (cassandraOperation.getRecords(_: String, _: String, _: java.util.Map[String, AnyRef], _: java.util.List[String], _:RequestContext)).expects(*, *, *, *, *).returns(response) diff --git a/course-mw/sunbird-util/pom.xml b/course-mw/sunbird-util/pom.xml index ac201f861..23a73a54d 100644 --- a/course-mw/sunbird-util/pom.xml +++ b/course-mw/sunbird-util/pom.xml @@ -13,7 +13,6 @@ sunbird-util pom - sunbird-es-utils sunbird-platform-core sunbird-notification sunbird-cache-utils diff --git a/course-mw/sunbird-util/sunbird-es-utils/.gitignore b/course-mw/sunbird-util/sunbird-es-utils/.gitignore deleted file mode 100644 index 55977f8f9..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/.gitignore +++ /dev/null @@ -1,7 +0,0 @@ -/target/ -.classpath -.project -.settings -/bin/ - -*.iml diff --git a/course-mw/sunbird-util/sunbird-es-utils/pom.xml b/course-mw/sunbird-util/sunbird-es-utils/pom.xml deleted file mode 100644 index 179323f6d..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/pom.xml +++ /dev/null @@ -1,200 +0,0 @@ - - 4.0.0 - - sunbird-util - org.sunbird - 1.0-SNAPSHOT - - sunbird-es-utils - 1.0-SNAPSHOT - Sunbird ElasticSearch Utils - - - UTF-8 - - - - - org.elasticsearch.client - elasticsearch-rest-high-level-client - 7.10.2 - - - org.apache.httpcomponents - httpasyncclient - - - org.apache.httpcomponents - httpcore-nio - - - org.apache.httpcomponents - httpclient - - - org.apache.httpcomponents - httpcore - - - - - - - org.apache.httpcomponents - httpasyncclient - 4.1.5 - - - org.apache.httpcomponents - httpcore-nio - 4.4.16 - - - org.apache.httpcomponents - httpclient - 4.5.14 - - - org.apache.httpcomponents - httpcore - 4.4.16 - - - - org.elasticsearch.client - transport - 7.10.2 - - - io.netty - * - - - - - ch.qos.logback - logback-classic - 1.2.3 - - - ch.qos.logback - logback-core - 1.2.3 - - - net.logstash.logback - logstash-logback-encoder - ${logstash-logback-encoder.version} - - - com.fasterxml.jackson.core - jackson-core - - - com.fasterxml.jackson.core - jackson-databind - - - com.fasterxml.jackson.core - jackson-annotations - - - - - org.sunbird - common-util - 0.0.1-SNAPSHOT - - - io.netty - * - - - - - org.apache.commons - commons-lang3 - 3.0 - - - junit - junit - 4.13.1 - test - - - org.powermock - powermock-module-junit4 - ${powermock.version} - test - - - junit - junit - - - - - org.powermock - powermock-api-mockito2 - ${powermock.version} - test - - - - - ${basedir}/src/main/java - ${basedir}/src/test/java - - - - org.apache.maven.plugins - maven-compiler-plugin - 3.8.1 - - 11 - - - - org.apache.maven.plugins - maven-surefire-plugin - 3.0.0 - - - --illegal-access=warn - - - - - - - - - - org.jacoco - jacoco-maven-plugin - ${jacoco-maven-plugin.version} - - ${basedir}/target/coverage-reports/jacoco-unit.exec - ${basedir}/target/coverage-reports/jacoco-unit.exec - - - - jacoco-initialize - - prepare-agent - - - - jacoco-site - package - - report - - - - - - - \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchRestHighImpl.java b/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchRestHighImpl.java deleted file mode 100644 index fb2a5e02a..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/ElasticSearchRestHighImpl.java +++ /dev/null @@ -1,605 +0,0 @@ -package org.sunbird.common; - -import org.apache.pekko.dispatch.Futures; -import org.apache.commons.collections.CollectionUtils; -import org.apache.commons.collections.MapUtils; -import org.apache.commons.lang3.StringUtils; -import org.elasticsearch.action.ActionListener; -import org.elasticsearch.action.DocWriteResponse; -import org.elasticsearch.action.admin.indices.get.GetIndexRequest; -import org.elasticsearch.action.bulk.BulkItemResponse; -import org.elasticsearch.action.bulk.BulkRequest; -import org.elasticsearch.action.bulk.BulkResponse; -import org.elasticsearch.action.delete.DeleteRequest; -import org.elasticsearch.action.delete.DeleteResponse; -import org.elasticsearch.action.get.GetRequest; -import org.elasticsearch.action.get.GetResponse; -import org.elasticsearch.action.index.IndexRequest; -import org.elasticsearch.action.index.IndexResponse; -import org.elasticsearch.action.search.SearchRequest; -import org.elasticsearch.action.search.SearchResponse; -import org.elasticsearch.action.update.UpdateRequest; -import org.elasticsearch.action.update.UpdateResponse; -import org.elasticsearch.client.RequestOptions; -import org.elasticsearch.index.query.BoolQueryBuilder; -import org.elasticsearch.index.query.QueryBuilders; -import org.elasticsearch.index.query.SimpleQueryStringBuilder; -import org.elasticsearch.index.query.TermQueryBuilder; -import org.elasticsearch.search.aggregations.AggregationBuilders; -import org.elasticsearch.search.aggregations.bucket.histogram.DateHistogramInterval; -import org.elasticsearch.search.builder.SearchSourceBuilder; -import org.elasticsearch.search.sort.FieldSortBuilder; -import org.elasticsearch.search.sort.SortMode; -import org.sunbird.common.inf.ElasticSearchService; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectUtil; -import org.sunbird.common.models.util.PropertiesCache; -import org.sunbird.common.request.RequestContext; -import org.sunbird.common.responsecode.ResponseCode; -import org.sunbird.dto.SearchDTO; -import org.sunbird.helper.ConnectionManager; -import scala.concurrent.Future; -import scala.concurrent.Promise; - -import java.util.*; -import java.util.stream.Collectors; - -/** - * This class will provide all required operation for elastic search. - * - * @author github.com/iostream04 - */ -public class ElasticSearchRestHighImpl implements ElasticSearchService { - private static final String ERROR = "ERROR"; - private static LoggerUtil logger = new LoggerUtil(ElasticSearchRestHighImpl.class); - - /** - * This method will put a new data entry inside Elastic search. identifier value becomes _id - * inside ES, so every time provide a unique value while saving it. - * - * - * @param requestContext - * @param index String ES index name - * @param identifier ES column identifier as an String - * @param data Map - * @return Future which contains identifier for created data - */ - @Override - public Future save(RequestContext requestContext, String index, String identifier, Map data) { - long startTime = System.currentTimeMillis(); - Promise promise = Futures.promise(); - logger.debug(requestContext, "ElasticSearchUtilRest:save: method started at ==" + startTime + " for Index " + index); - if (StringUtils.isBlank(identifier) || StringUtils.isBlank(index)) { - logger.info(requestContext, "ElasticSearchRestHighImpl:save: " - + "Identifier or Index value is null or empty, identifier : " + identifier - + ",index: " + index - + ",not able to save data."); - promise.success(ERROR); - return promise.future(); - } - data.put("identifier", identifier); - - IndexRequest indexRequest = new IndexRequest(index, _DOC, identifier).source(data); - - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(IndexResponse indexResponse) { - logger.info(requestContext, - "ElasticSearchRestHighImpl:save: Success for index : " + index - + ", identifier :" + identifier); - - promise.success(indexResponse.getId()); - logger.debug(requestContext, - "ElasticSearchRestHighImpl:save: method end at ==" + System.currentTimeMillis() - + " for Index " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - } - - @Override - public void onFailure(Exception e) { - promise.failure(e); - logger.error(requestContext, - "ElasticSearchRestHighImpl:save: " + "Error while saving " + index + " id : " + identifier + " with error :" - , e); - logger.debug(requestContext, "ElasticSearchRestHighImpl:save: method end at ==" + System.currentTimeMillis() - + " for INdex " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - } - }; - - ConnectionManager.getRestClient().indexAsync(indexRequest, RequestOptions.DEFAULT, listener); - - return promise.future(); - } - - /** - * This method will update data entry inside Elastic search, using identifier and provided data . - * - * - * @param requestContext - * @param index String ES index name - * @param identifier ES column identifier as an String - * @param data Map - * @return true or false - */ - @Override - public Future update(RequestContext requestContext, String index, String identifier, Map data) { - long startTime = System.currentTimeMillis(); - logger.debug(requestContext, - "ElasticSearchRestHighImpl:update: method started at ==" - + startTime - + " for Index " - + index); - Promise promise = Futures.promise(); - - if (!StringUtils.isBlank(index) && !StringUtils.isBlank(identifier) && data != null) { - UpdateRequest updateRequest = new UpdateRequest(index, _DOC, identifier).doc(data); - - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(UpdateResponse updateResponse) { - promise.success(true); - logger.info(requestContext, "ElasticSearchRestHighImpl:update: Success with " + updateResponse.getResult() - + " response from elastic search for index" + index - + ",identifier : " + identifier); - logger.debug(requestContext, "ElasticSearchRestHighImpl:update: method end ==" - + " for INdex " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - } - - @Override - public void onFailure(Exception e) { - logger.error(requestContext, "ElasticSearchRestHighImpl:update: exception occured:" + e.getMessage(), e); - promise.failure(e); - } - }; - ConnectionManager.getRestClient().updateAsync(updateRequest, RequestOptions.DEFAULT, listener); - - } else { - logger.info(requestContext, "ElasticSearchRestHighImpl:update: Requested data is invalid."); - promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); - } - return promise.future(); - } - - /** - * This method will provide data form ES based on incoming identifier. we can get data by passing - * index and identifier values , or all the three - * - * @param requestContext - * @param identifier - * @return Map or empty map - */ - @Override - public Future> getDataByIdentifier(RequestContext requestContext, String index, String identifier) { - long startTime = System.currentTimeMillis(); - Promise> promise = Futures.promise(); - if (StringUtils.isNotEmpty(identifier) && StringUtils.isNotEmpty(index)) { - - logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: method started at ==" + startTime - + " for Index " + index); - - GetRequest getRequest = new GetRequest(index, _DOC, identifier); - - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(GetResponse getResponse) { - if (getResponse.isExists()) { - Map sourceAsMap = getResponse.getSourceAsMap(); - if (MapUtils.isNotEmpty(sourceAsMap)) { - promise.success(sourceAsMap); - logger.debug(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: method end ==" - + " for Index " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - } else { - promise.success(new HashMap<>()); - } - } else { - promise.success(new HashMap<>()); - } - } - - @Override - public void onFailure(Exception e) { - logger.error(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: method Failed with error == " , e); - promise.failure(e); - } - }; - - ConnectionManager.getRestClient().getAsync(getRequest, RequestOptions.DEFAULT, listener); - } else { - logger.info(requestContext, "ElasticSearchRestHighImpl:getDataByIdentifier: " - + "provided index or identifier is null, index = " + index - + ", identifier = " + identifier); - promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); - } - - return promise.future(); - } - - /** - * This method will remove data from ES based on identifier. - * - * @param requestContext - * @param index String - * @param identifier String - */ - @Override - public Future delete(RequestContext requestContext, String index, String identifier) { - long startTime = System.currentTimeMillis(); - logger.debug(requestContext, "ElasticSearchRestHighImpl:delete: method started at ==" + startTime); - Promise promise = Futures.promise(); - if (StringUtils.isNotEmpty(identifier) && StringUtils.isNotEmpty(index)) { - DeleteRequest delRequest = new DeleteRequest(index, _DOC, identifier); - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(DeleteResponse deleteResponse) { - if (deleteResponse.getResult() == DocWriteResponse.Result.NOT_FOUND) { - logger.info(requestContext, - "ElasticSearchRestHighImpl:delete:OnResponse: Document not found for index : " + index - + " , identifier : " + identifier); - promise.success(false); - } else { - promise.success(true); - } - } - - @Override - public void onFailure(Exception e) { - logger.error(requestContext, "ElasticSearchRestHighImpl:delete: Async Failed due to error :" , e); - promise.failure(e); - } - }; - - ConnectionManager.getRestClient().deleteAsync(delRequest, RequestOptions.DEFAULT, listener); - } else { - logger.info(requestContext, "ElasticSearchRestHighImpl:delete: " - + "provided index or identifier is null, index = " + index - + ", identifier = " + identifier); - promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); - } - - logger.debug(requestContext, "ElasticSearchRestHighImpl:delete: method end ==" - + " ,Total time elapsed = " + calculateEndTime(startTime)); - return promise.future(); - } - - /** - * Method to perform the elastic search on the basis of SearchDTO . SearchDTO contains the search - * criteria like fields, facets, sort by , filters etc. here user can pass single type to search - * or multiple type or null - * - * @return search result as Map. - */ - @Override - @SuppressWarnings({"unchecked", "rawtypes"}) - public Future> search(RequestContext requestContext, SearchDTO searchDTO, String index) { - long startTime = System.currentTimeMillis(); - logger.debug(requestContext, "ElasticSearchRestHighImpl:search: method started at ==" + startTime); - SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder(); - SearchRequest searchRequest = new SearchRequest(index); - // Note: types() is deprecated in Elasticsearch 7.x, document type is now always "_doc" - - // check mode and set constraints - Map constraintsMap = ElasticSearchHelper.getConstraints(searchDTO); - - BoolQueryBuilder query = new BoolQueryBuilder(); - - // add channel field as mandatory - String channel = PropertiesCache.getInstance().getProperty(JsonKey.SUNBIRD_ES_CHANNEL); - if (!(StringUtils.isBlank(channel) || JsonKey.SUNBIRD_ES_CHANNEL.equals(channel))) { - query.must( - ElasticSearchHelper.createMatchQuery(JsonKey.CHANNEL, channel, constraintsMap.get(JsonKey.CHANNEL))); - } - - // apply simple query string - if (!StringUtils.isBlank(searchDTO.getQuery())) { - SimpleQueryStringBuilder sqsb = QueryBuilders.simpleQueryStringQuery(searchDTO.getQuery()); - if (CollectionUtils.isEmpty(searchDTO.getQueryFields())) { - query.must(sqsb.field("all_fields")); - } else { - Map searchFields = - searchDTO - .getQueryFields() - .stream() - .collect(Collectors.toMap(s -> s, v -> 1.0f)); - query.must(sqsb.fields(searchFields)); - } - } - // apply the sorting - if (searchDTO.getSortBy() != null && searchDTO.getSortBy().size() > 0) { - for (Map.Entry entry : searchDTO.getSortBy().entrySet()) { - if (!entry.getKey().contains(".")) { - searchSourceBuilder.sort( - entry.getKey() + ElasticSearchHelper.RAW_APPEND, - ElasticSearchHelper.getSortOrder((String) entry.getValue())); - } else { - Map map = (Map) entry.getValue(); - Map dataMap = (Map) map.get(JsonKey.TERM); - for (Map.Entry dateMapEntry : dataMap.entrySet()) { - FieldSortBuilder mySort = new FieldSortBuilder(entry.getKey() + ElasticSearchHelper.RAW_APPEND) - .setNestedFilter(new TermQueryBuilder(dateMapEntry.getKey(), dateMapEntry.getValue())) - .sortMode(SortMode.MIN) - .order(ElasticSearchHelper.getSortOrder((String) map.get(JsonKey.ORDER))); - searchSourceBuilder.sort(mySort); - } - } - } - } - - // apply the fields filter - searchSourceBuilder.fetchSource( - searchDTO.getFields() != null - ? searchDTO.getFields().stream().toArray(String[]::new) - : null, - searchDTO.getExcludedFields() != null - ? searchDTO.getExcludedFields().stream().toArray(String[]::new) - : null); - - // setting the offset - if (searchDTO.getOffset() != null) { - searchSourceBuilder.from(searchDTO.getOffset()); - } - - // setting the limit - if (searchDTO.getLimit() != null) { - searchSourceBuilder.size(searchDTO.getLimit()); - } - // apply additional properties - if (searchDTO.getAdditionalProperties() != null - && searchDTO.getAdditionalProperties().size() > 0) { - for (Map.Entry entry : searchDTO.getAdditionalProperties().entrySet()) { - ElasticSearchHelper.addAdditionalProperties(query, entry, constraintsMap); - } - } - - // set final query to search request builder - searchSourceBuilder.query(query); - List finalFacetList = new ArrayList(); - - if (null != searchDTO.getFacets() && !searchDTO.getFacets().isEmpty()) { - searchSourceBuilder = addAggregations(requestContext, searchSourceBuilder, searchDTO.getFacets()); - } - logger.info(requestContext, "ElasticSearchRestHighImpl:search: calling search builder======" - + searchSourceBuilder.toString()); - - searchRequest.source(searchSourceBuilder); - Promise> promise = Futures.promise(); - - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(SearchResponse response) { - logger.debug(requestContext, "ElasticSearchRestHighImpl:search:onResponse response1 = " + response); - if (response.getHits() == null || response.getHits().getTotalHits().value == 0) { - - Map responseMap = new HashMap<>(); - List> esSource = new ArrayList<>(); - responseMap.put(JsonKey.CONTENT, esSource); - responseMap.put(JsonKey.COUNT, 0); - promise.success(responseMap); - } else { - Map responseMap = ElasticSearchHelper.getSearchResponseMap(response, searchDTO, finalFacetList); - logger.debug(requestContext, "ElasticSearchRestHighImpl:search: method end " - + " ,Total time elapsed = " + calculateEndTime(startTime)); - promise.success(responseMap); - } - } - - @Override - public void onFailure(Exception e) { - promise.failure(e); - - logger.debug(requestContext, "ElasticSearchRestHighImpl:search: method end for Index " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - logger.error(requestContext, "ElasticSearchRestHighImpl:search: method Failed with error :" , e); - } - }; - - ConnectionManager.getRestClient().searchAsync(searchRequest, RequestOptions.DEFAULT, listener); - return promise.future(); - } - - /** - * This method will do the health check of elastic search. - * - * @return boolean - */ - @Override - public Future healthCheck() { - GetIndexRequest indexRequest = new GetIndexRequest().indices(ProjectUtil.EsType.courseBatch.getTypeName()); - Promise promise = Futures.promise(); - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(Boolean getResponse) { - if (getResponse) { - promise.success(getResponse); - } else { - promise.success(false); - } - } - - @Override - public void onFailure(Exception e) { - promise.failure(e); - logger.info(null, "ElasticSearchRestHighImpl:healthCheck: error " + e.getMessage()); - } - }; - ConnectionManager.getRestClient().indices().existsAsync(indexRequest, RequestOptions.DEFAULT, listener); - - return promise.future(); - } - - /** - * This method will do the bulk data insertion. - * - * - * @param requestContext - * @param index String index name - * @param dataList List> - * @return boolean - */ - @Override - public Future bulkInsert(RequestContext requestContext, String index, List> dataList) { - long startTime = System.currentTimeMillis(); - logger.debug(requestContext, "ElasticSearchRestHighImpl:bulkInsert: method started at ==" + startTime - + " for Index " + index); - BulkRequest request = new BulkRequest(); - Promise promise = Futures.promise(); - for (Map data : dataList) { - request.add(new IndexRequest(index, _DOC, (String) data.get(JsonKey.ID)).source(data)); - } - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(BulkResponse bulkResponse) { - Iterator responseItr = bulkResponse.iterator(); - if (responseItr != null) { - promise.success(true); - while (responseItr.hasNext()) { - BulkItemResponse bResponse = responseItr.next(); - - if (bResponse.isFailed()) { - logger.info(requestContext, "ElasticSearchRestHighImpl:bulkinsert: api response===" - + bResponse.getId() + " " + bResponse.getFailureMessage()); - } - } - } - } - - @Override - public void onFailure(Exception e) { - logger.error(requestContext, "ElasticSearchRestHighImpl:bulkinsert: Bulk upload error block", e); - promise.success(false); - } - }; - ConnectionManager.getRestClient().bulkAsync(request, RequestOptions.DEFAULT, listener); - - logger.debug(requestContext, "ElasticSearchRestHighImpl:bulkInsert: method end ==" - + " for Index " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - return promise.future(); - } - - private static long calculateEndTime(long startTime) { - return System.currentTimeMillis() - startTime; - } - - private static SearchSourceBuilder addAggregations(RequestContext requestContext, - SearchSourceBuilder searchSourceBuilder, List> facets) { - long startTime = System.currentTimeMillis(); - logger.debug(requestContext, "ElasticSearchRestHighImpl:addAggregations: method started at ==" + startTime); - Map map = facets.get(0); - for (Map.Entry entry : map.entrySet()) { - String key = entry.getKey(); - String value = entry.getValue(); - if (JsonKey.DATE_HISTOGRAM.equalsIgnoreCase(value)) { - searchSourceBuilder.aggregation( - AggregationBuilders.dateHistogram(key) - .field(key + ElasticSearchHelper.RAW_APPEND) - .dateHistogramInterval(DateHistogramInterval.days(1))); - - } else if (null == value) { - searchSourceBuilder.aggregation( - AggregationBuilders.terms(key).field(key + ElasticSearchHelper.RAW_APPEND)); - } - } - logger.debug(requestContext, "ElasticSearchRestHighImpl:addAggregations: method end ==" - + " ,Total time elapsed = " + calculateEndTime(startTime)); - return searchSourceBuilder; - } - - /** - * This method will update data based on identifier.take the data based on identifier and merge - * with incoming data then update it. - * - * - * @param requestContext - * @param index String - * @param identifier String - * @param data Map - * @return boolean - */ - @Override - public Future upsert(RequestContext requestContext, String index, String identifier, Map data) { - long startTime = System.currentTimeMillis(); - Promise promise = Futures.promise(); - logger.debug(requestContext, "ElasticSearchRestHighImpl:upsert: method started at ==" + startTime - + " for Index " + index); - if (!StringUtils.isBlank(index) - && !StringUtils.isBlank(identifier) - && data != null - && data.size() > 0) { - - IndexRequest indexRequest = new IndexRequest(index, _DOC, identifier).source(data); - - UpdateRequest updateRequest = new UpdateRequest(index, _DOC, identifier).upsert(indexRequest); - updateRequest.doc(indexRequest); - ActionListener listener = - new ActionListener() { - @Override - public void onResponse(UpdateResponse updateResponse) { - promise.success(true); - logger.debug(requestContext, "ElasticSearchRestHighImpl:upsert: Response for index : " - + updateResponse.getResult() + "," + index - + ",identifier : " + identifier); - logger.debug(requestContext, "ElasticSearchRestHighImpl:upsert: method end ==" - + " for Index " + index - + " ,Total time elapsed = " + calculateEndTime(startTime)); - } - - @Override - public void onFailure(Exception e) { - logger.debug(requestContext, "ElasticSearchRestHighImpl:upsert: exception occured:" + e.getMessage()); - promise.failure(e); - } - }; - ConnectionManager.getRestClient().updateAsync(updateRequest, RequestOptions.DEFAULT, listener); - return promise.future(); - } else { - logger.error(requestContext, "ElasticSearchRestHighImpl:upsert: Requested data is invalid.", null); - promise.failure(ProjectUtil.createClientException(ResponseCode.invalidData)); - return promise.future(); - } - } - - /** - * This method will return map of objects on the basis of ids provided. - * - * @param ids List of String - * @param fields List of String - * @param index index of elasticserach for query - * @return future of requested data in the form of map - */ - @Override - public Future>> getEsResultByListOfIds( RequestContext requestContext, - List ids, List fields, String index) { - Map filters = new HashMap<>(); - filters.put(JsonKey.ID, ids); - - SearchDTO searchDTO = new SearchDTO(); - searchDTO.getAdditionalProperties().put(JsonKey.FILTERS, filters); - searchDTO.setFields(fields); - - Future> resultF = search(requestContext, searchDTO, index); - Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); - List> esContent = (List>) result.get(JsonKey.CONTENT); - Promise>> promise = Futures.promise(); - promise.success( - esContent - .stream() - .collect(Collectors.toMap(obj -> { - return (String) obj.get("id"); - }, - val -> val))); - logger.info(requestContext, "ElasticSearchRestHighImpl:getEsResultByListOfIds: method ended for index " + index); - - return promise.future(); - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/factory/EsClientFactory.java b/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/factory/EsClientFactory.java deleted file mode 100644 index 1a764ffc1..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/factory/EsClientFactory.java +++ /dev/null @@ -1,28 +0,0 @@ -package org.sunbird.common.factory; - -import org.sunbird.common.ElasticSearchRestHighImpl; -import org.sunbird.common.inf.ElasticSearchService; -import org.sunbird.common.models.util.LoggerUtil; - -public class EsClientFactory { - - private static ElasticSearchService restClient = null; - private static final LoggerUtil logger = new LoggerUtil(EsClientFactory.class); - - /** - * This method return REST/TCP client for elastic search - * - * @return ElasticSearchService with the respected type impl - */ - public static ElasticSearchService getInstance() { - if (restClient == null) { - synchronized (EsClientFactory.class) { - if (restClient == null) { - restClient = new ElasticSearchRestHighImpl(); - } - } - } - return restClient; - } - -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/inf/ElasticSearchService.java b/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/inf/ElasticSearchService.java deleted file mode 100644 index d5b59cbe0..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/common/inf/ElasticSearchService.java +++ /dev/null @@ -1,186 +0,0 @@ -package org.sunbird.common.inf; - -import com.fasterxml.jackson.databind.ObjectMapper; -import java.io.IOException; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import org.apache.commons.lang3.StringUtils; -import org.sunbird.common.ElasticSearchHelper; -import org.sunbird.common.exception.ProjectCommonException; -import org.sunbird.common.models.response.Response; -import org.sunbird.common.models.util.HttpUtil; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.ProjectLogger; -import org.sunbird.common.models.util.PropertiesCache; -import org.sunbird.common.request.RequestContext; -import org.sunbird.common.responsecode.ResponseCode; -import org.sunbird.dto.SearchDTO; -import scala.concurrent.Future; - -public interface ElasticSearchService { - public static final String _DOC = "_doc"; - - /** - * This method will put a new data entry inside Elastic search. identifier value becomes _id - * inside ES, so every time provide a unique value while saving it. - * - * - * @param requestContext - * @param index String ES index name - * @param identifier ES column identifier as an String - * @param data Map - * @return String identifier for created data - */ - public Future save(RequestContext requestContext, String index, String identifier, Map data); - - /** - * This method will update data based on identifier.take the data based on identifier and merge - * with incoming data then update it. - * - * - * @param requestContext - * @param index String - * @param identifier String - * @param data Map - * @return boolean - */ - public Future update(RequestContext requestContext, String index, String identifier, Map data); - - /** - * This method will provide data form ES based on incoming identifier. we can get data by passing - * index and identifier values , or all the three index, identifier and type - * - * - * @param requestContext - * @param index String - * @param identifier String - * @return Map or null - */ - public Future> getDataByIdentifier(RequestContext requestContext, String index, String identifier); - - /** - * This method will remove data from ES based on identifier. - * - * @param requestContext - * @param index String - * @param identifier String - */ - public Future delete(RequestContext requestContext, String index, String identifier); - - /** - * Method to perform the elastic search on the basis of SearchDTO . SearchDTO contains the search - * criteria like fields, facets, sort by , filters etc. here user can pass single type to search - * or multiple type or null - * - * @param type var arg of String - * @param requestContext - * @return search result as Map. - */ - public Future> search(RequestContext requestContext, SearchDTO searchDTO, String index); - - /** - * This method will do the health check of elastic search. - * - * @return boolean - */ - public Future healthCheck(); - - /** - * This method will do the bulk data insertion. - * - * - * @param requestContext - * @param index String index name - * @param dataList List> - * @return boolean - */ - public Future bulkInsert(RequestContext requestContext, String index, List> dataList); - - /** - * This method will upsert data based on identifier.take the data based on identifier and merge - * with incoming data then update it or if not present already will create it. - * - * - * @param requestContext - * @param index String - * @param identifier String - * @param data Map - * @return boolean - */ - public Future upsert(RequestContext requestContext, String index, String identifier, Map data); - - /** - * @param ids List of ids of document - * @param fields List of fields which needs to captured - * @param index elastic search index in which search should be done - * @return Map> It will return a map with id as key and the data from ES - * as value - */ - public Future>> getEsResultByListOfIds( RequestContext requestContext, - List organisationIds, List fields, String index); - - /** - * Method to execute ES raw query with the limitation of size set to 0 Currently, This is a not a - * tcp call. - * - * @param index ES indexName - * @param rawQuery actual query to be executed - * @return Response Object from elastic Search - */ - default Response searchMetricsData(String index, String rawQuery) { - long startTime = System.currentTimeMillis(); - ProjectLogger.log( - "ElasticSearchService:searchMetricsData: " - + "Metrics search method started at ==" - + startTime, - LoggerEnum.PERF_LOG); - String baseUrl = null; - if (!StringUtils.isBlank(System.getenv(JsonKey.SUNBIRD_ES_IP))) { - String envHost = System.getenv(JsonKey.SUNBIRD_ES_IP); - String[] host = envHost.split(","); - baseUrl = - "http://" - + host[0] - + ":" - + PropertiesCache.getInstance().getProperty(JsonKey.ES_METRICS_PORT); - } else { - ProjectLogger.log("ElasticSearchTcpImpl:searchMetricsData:" + " ES URL from Properties file"); - baseUrl = PropertiesCache.getInstance().getProperty(JsonKey.ES_URL); - } - // Fixed for Elasticsearch 7.x compatibility - removed deprecated _doc type - String requestURL = baseUrl + "/" + index + "/" + "_search"; - Map headers = new HashMap<>(); - headers.put("Content-Type", "application/json"); - Map responseData = new HashMap<>(); - try { - // TODO:Currently this is making a rest call but needs to be modified to make - // the call using - // ElasticSearch client - String responseStr = HttpUtil.sendPostRequest(requestURL, rawQuery, headers); - ObjectMapper mapper = new ObjectMapper(); - responseData = mapper.readValue(responseStr, Map.class); - } catch (IOException e) { - throw new ProjectCommonException( - ResponseCode.unableToConnectToES.getErrorCode(), - ResponseCode.unableToConnectToES.getErrorMessage(), - ResponseCode.SERVER_ERROR.getResponseCode()); - } catch (Exception e) { - throw new ProjectCommonException( - ResponseCode.unableToParseData.getErrorCode(), - ResponseCode.unableToParseData.getErrorMessage(), - ResponseCode.SERVER_ERROR.getResponseCode()); - } - Response response = new Response(); - response.put(JsonKey.RESPONSE, responseData); - ProjectLogger.log( - "ElasticSearchService:searchMetricsData: " - + "ElasticSearchService metrics search method end at == " - + System.currentTimeMillis() - + " ,Total time elapsed = " - + ElasticSearchHelper.calculateEndTime(startTime), - LoggerEnum.PERF_LOG); - return response; - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ConnectionManager.java b/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ConnectionManager.java deleted file mode 100644 index 442f2ccdd..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ConnectionManager.java +++ /dev/null @@ -1,130 +0,0 @@ -/** */ -package org.sunbird.helper; - -import java.io.IOException; -import java.net.UnknownHostException; -import java.util.ArrayList; -import java.util.List; -import org.apache.commons.lang3.StringUtils; -import org.apache.http.HttpHost; -import org.elasticsearch.client.RestClient; -import org.elasticsearch.client.RestHighLevelClient; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.models.util.LoggerEnum; -import org.sunbird.common.models.util.LoggerUtil; -import org.sunbird.common.models.util.ProjectLogger; - -/** - * This class will manage connection. - * - * @author Manzarul - */ -public class ConnectionManager { - - private static RestHighLevelClient restClient = null; - private static List host = new ArrayList<>(); - private static List ports = new ArrayList<>(); - public static LoggerUtil logger = new LoggerUtil(ConnectionManager.class); - - static { - System.setProperty("es.set.netty.runtime.available.processors", "false"); - initialiseRestClientConnection(); - registerShutDownHook(); - } - - private ConnectionManager() {} - - private static boolean initialiseRestClientConnection() { - boolean response = false; - try { - String cluster = System.getenv(JsonKey.SUNBIRD_ES_CLUSTER); - String hostName = System.getenv(JsonKey.SUNBIRD_ES_IP); - String port = System.getenv(JsonKey.SUNBIRD_ES_PORT); - if (StringUtils.isBlank(hostName) || StringUtils.isBlank(port)) { - return false; - } - String[] splitedHost = hostName.split(","); - for (String val : splitedHost) { - host.add(val); - } - String[] splitedPort = port.split(","); - for (String val : splitedPort) { - ports.add(Integer.parseInt(val)); - } - response = createRestClient(cluster, host); - logger.info(null, - "ELASTIC SEARCH CONNECTION ESTABLISHED for restClient from EVN with Following Details cluster " - + cluster - + " hostName" - + hostName - + " port " - + port - + response); - } catch (Exception e) { - logger.error(null, "Error while initialising connection for restClient from the Env", e); - return false; - } - return response; - } - - /** - * This method will provide ES transport client. - * - * @return TransportClient - */ - public static RestHighLevelClient getRestClient() { - if (restClient == null) { - logger.info(null, - "ConnectionManager:getRestClient eLastic search rest clinet is null "); - initialiseRestClientConnection(); - logger.info(null, - "ConnectionManager:getRestClient after calling initialiseRestClientConnection ES client value "); - } - return restClient; - } - - /** - * This method will create the client instance for elastic search. - * - * @param clusterName String - * @param host List - * @return boolean - * @throws UnknownHostException - */ - private static boolean createRestClient(String clusterName, List host) { - HttpHost[] httpHost = new HttpHost[host.size()]; - for (int i = 0; i < host.size(); i++) { - httpHost[i] = new HttpHost(host.get(i), 9200); - } - restClient = new RestHighLevelClient(RestClient.builder(httpHost)); - logger.info(null, - "ConnectionManager:createRestClient client initialisation done. "); - return true; - } - - /** - * This class will be called by registerShutDownHook to register the call inside jvm , when jvm - * terminate it will call the run method to clean up the resource. - * - * @author Manzarul - */ - public static class ResourceCleanUp extends Thread { - @Override - public void run() { - try { - restClient.close(); - } catch (IOException e) { - e.printStackTrace(); - logger.info(null, - "ConnectionManager:ResourceCleanUp error occured during restclient resource cleanup " - + e); - } - } - } - - /** Register the hook for resource clean up. this will be called when jvm shut down. */ - public static void registerShutDownHook() { - Runtime runtime = Runtime.getRuntime(); - runtime.addShutdownHook(new ResourceCleanUp()); - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ElasticSearchMapping.java b/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ElasticSearchMapping.java deleted file mode 100644 index c7c6c0d9a..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ElasticSearchMapping.java +++ /dev/null @@ -1,21 +0,0 @@ -/** */ -package org.sunbird.helper; - -/** - * This class will define Elastic search mapping. - * - * @author Manzarul - */ -public class ElasticSearchMapping { - - /** - * This method will define ES default mapping. - * - * @return - */ - public static String createMapping() { - String mapping = - " { \"dynamic_templates\": [ {\"longs\": {\"match_mapping_type\": \"long\", \"mapping\": {\"type\": \"long\", \"fields\": { \"raw\": {\"type\": \"long\" } }}}},{\"booleans\": {\"match_mapping_type\": \"boolean\", \"mapping\": {\"type\": \"boolean\", \"fields\": { \"raw\": { \"type\": \"boolean\" }} }}},{\"doubles\": {\"match_mapping_type\": \"double\",\"mapping\": {\"type\": \"double\",\"fields\":{\"raw\": { \"type\": \"double\" } }}}},{ \"dates\": {\"match_mapping_type\": \"date\", \"mapping\": { \"type\": \"date\",\"fields\": {\"raw\": { \"type\": \"date\" } } }}},{\"strings\": {\"match_mapping_type\": \"string\",\"mapping\": {\"type\": \"text\",\"fielddata\": true,\"copy_to\": \"all_fields\",\"analyzer\": \"cs_index_analyzer\",\"search_analyzer\": \"cs_search_analyzer\",\"fields\": {\"raw\": {\"type\": \"text\",\"fielddata\": true,\"analyzer\": \"keylower\"}}}}}],\"properties\": {\"all_fields\": {\"type\": \"text\",\"analyzer\": \"cs_index_analyzer\",\"search_analyzer\": \"cs_search_analyzer\",\"fields\": { \"raw\": { \"type\": \"text\",\"analyzer\": \"keylower\" } }} }}"; - return mapping; - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ElasticSearchSettings.java b/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ElasticSearchSettings.java deleted file mode 100644 index 41c9e17fc..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/java/org/sunbird/helper/ElasticSearchSettings.java +++ /dev/null @@ -1,21 +0,0 @@ -/** */ -package org.sunbird.helper; - -/** - * This class will define Elastic search default settings. - * - * @author Manzarul - */ -public class ElasticSearchSettings { - - /** - * This method will do default settings for Elastic search index - * - * @return String - */ - public static String createSettingsForIndex() { - String settings = - "{\"analysis\": {\"analyzer\": {\"cs_index_analyzer\": {\"type\": \"custom\",\"tokenizer\": \"standard\",\"filter\": [\"lowercase\",\"mynGram\"]},\"cs_search_analyzer\": {\"type\": \"custom\",\"tokenizer\": \"standard\",\"filter\": [\"lowercase\",\"standard\"]},\"keylower\": {\"type\": \"custom\",\"tokenizer\": \"keyword\",\"filter\": \"lowercase\"}},\"filter\": {\"mynGram\": {\"type\": \"ngram\",\"min_gram\": 1,\"max_gram\": 20,\"token_chars\": [\"letter\", \"digit\",\"whitespace\",\"punctuation\",\"symbol\"]} }}}"; - return settings; - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/elasticsearch.conf b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/elasticsearch.conf deleted file mode 100644 index b036dd1e3..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/elasticsearch.conf +++ /dev/null @@ -1,72 +0,0 @@ - { - mapping = { - searchindex = { - user = { - index = "user", - "type" = "_doc" - }, - org = { - index = "org", - "type" = "_doc" - }, - cbatch = { - index = "cbatch", - "type" = "_doc" - }, - content = { - index = "content", - "type" = "_doc" - }, - usercourses = { - index = "usercourses", - "type" = "_doc" - }, - usernotes = { - index = "usernotes", - "type" = "_doc" - }, - userprofilevisibility = { - index = "userprofilevisibility", - "type" = "_doc" - }, - telemetry = { - index = "telemetry", - "type" = "_doc" - }, - location = { - index = "location", - "type" = "_doc" - }, - cbatchstats = { - index = "cbatchstats", - "type" = "_doc" - } - }, - sunbirdplugin = { - announcementtype = { - index = "announcementtype", - "type" = "_doc" - }, - announcement = { - index = "announcement", - "type" = "_doc" - }, - metrics = { - index = "metrics", - "type" = "_doc" - } - }, - sbtestindex = { - sbtesttype = { - index = "sbtestindex", - "type" = "sbtesttype" - } - }, - searchtest = { - usertest = { - index = "searchtest", - "type" = "usertest" - } - } - } - } diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/announcement.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/announcement.json deleted file mode 100644 index 8f091e230..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/announcement.json +++ /dev/null @@ -1,397 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic_templates": [ - { - "longs": { - "match_mapping_type": "long", - "mapping": { - "fields": { - "raw": { - "type": "long" - } - }, - "type": "long" - } - } - }, - { - "booleans": { - "match_mapping_type": "boolean", - "mapping": { - "fields": { - "raw": { - "type": "boolean" - } - }, - "type": "boolean" - } - } - }, - { - "doubles": { - "match_mapping_type": "double", - "mapping": { - "fields": { - "raw": { - "type": "double" - } - }, - "type": "double" - } - } - }, - { - "dates": { - "match_mapping_type": "date", - "mapping": { - "fields": { - "raw": { - "type": "date" - } - }, - "type": "date" - } - } - }, - { - "strings": { - "match_mapping_type": "string", - "mapping": { - "analyzer": "cs_index_analyzer", - "copy_to": "all_fields", - "fielddata": true, - "fields": { - "raw": { - "type": "text", - "fielddata": true, - "analyzer": "keylower" - } - }, - "search_analyzer": "cs_search_analyzer", - "type": "text" - } - } - } - ], - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "attachments": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createddate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "details": { - "properties": { - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "filename": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "from": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "title": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "links": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "sentcount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "sourceId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "sourceid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "target": { - "properties": { - "geo": { - "properties": { - "ids": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } - }, - "userid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/announcementtype.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/announcementtype.json deleted file mode 100644 index 50ec50544..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/announcementtype.json +++ /dev/null @@ -1,233 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic_templates": [ - { - "longs": { - "match_mapping_type": "long", - "mapping": { - "fields": { - "raw": { - "type": "long" - } - }, - "type": "long" - } - } - }, - { - "booleans": { - "match_mapping_type": "boolean", - "mapping": { - "fields": { - "raw": { - "type": "boolean" - } - }, - "type": "boolean" - } - } - }, - { - "doubles": { - "match_mapping_type": "double", - "mapping": { - "fields": { - "raw": { - "type": "double" - } - }, - "type": "double" - } - } - }, - { - "dates": { - "match_mapping_type": "date", - "mapping": { - "fields": { - "raw": { - "type": "date" - } - }, - "type": "date" - } - } - }, - { - "strings": { - "match_mapping_type": "string", - "mapping": { - "analyzer": "cs_index_analyzer", - "copy_to": "all_fields", - "fielddata": true, - "fields": { - "raw": { - "type": "text", - "fielddata": true, - "analyzer": "keylower" - } - }, - "search_analyzer": "cs_search_analyzer", - "type": "text" - } - } - } - ], - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "createddate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootorgid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/badgeassociations.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/badgeassociations.json deleted file mode 100644 index fd503d5e0..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/badgeassociations.json +++ /dev/null @@ -1,201 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "contentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "issuerId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "updatedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/cbatch.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/cbatch.json deleted file mode 100644 index 55ff6e2a0..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/cbatch.json +++ /dev/null @@ -1,369 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countDecrementDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countDecrementStatus": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "countIncrementDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countIncrementStatus": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "courseCreator": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdFor": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "enrollmentType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "mentors": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "startDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "reportUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/cbatchstats.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/cbatchstats.json deleted file mode 100644 index bbec75327..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/cbatchstats.json +++ /dev/null @@ -1,257 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completedPercent": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "districtName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "maskedEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskedPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subOrgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/course-batch.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/course-batch.json deleted file mode 100644 index adb3af368..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/course-batch.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/location.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/location.json deleted file mode 100644 index 57d5e5262..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/location.json +++ /dev/null @@ -1,161 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "code": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "parentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "value": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/metrics.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/metrics.json deleted file mode 100644 index 1785559ca..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/metrics.json +++ /dev/null @@ -1,329 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic_templates": [ - { - "longs": { - "match_mapping_type": "long", - "mapping": { - "fields": { - "raw": { - "type": "long" - } - }, - "type": "long" - } - } - }, - { - "booleans": { - "match_mapping_type": "boolean", - "mapping": { - "fields": { - "raw": { - "type": "boolean" - } - }, - "type": "boolean" - } - } - }, - { - "doubles": { - "match_mapping_type": "double", - "mapping": { - "fields": { - "raw": { - "type": "double" - } - }, - "type": "double" - } - } - }, - { - "dates": { - "match_mapping_type": "date", - "mapping": { - "fields": { - "raw": { - "type": "date" - } - }, - "type": "date" - } - } - }, - { - "strings": { - "match_mapping_type": "string", - "mapping": { - "analyzer": "cs_index_analyzer", - "copy_to": "all_fields", - "fielddata": true, - "fields": { - "raw": { - "type": "text", - "fielddata": true, - "analyzer": "keylower" - } - }, - "search_analyzer": "cs_search_analyzer", - "type": "text" - } - } - } - ], - "properties": { - "activity": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "announcementId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "announcementid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "channel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createddate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootorgid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/org.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/org.json deleted file mode 100644 index 61273d9dd..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/org.json +++ /dev/null @@ -1,876 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "address": { - "properties": { - "addType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "country": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "channel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "contactDetail": { - "properties": { - "Email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "Phone ": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "Phone Number": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "Phonenumber": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "address": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "age": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "fax": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "contactdetails": { - "type": "object" - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "externalId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "homeUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "imgUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isDefault": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isRootOrg": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "locationId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "locationIds": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "noOfMembers": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "orgCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgTypeId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "preferredLanguage": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "provider": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "slug": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "theme": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/user-courses.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/user-courses.json deleted file mode 100644 index adb3af368..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/user-courses.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/user.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/user.json deleted file mode 100644 index 7f05043c8..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/user.json +++ /dev/null @@ -1,3309 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic":false, - "properties": { - "activeStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "address": { - "properties": { - "addType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "country": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "appointmentType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "authenticationStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "avatar": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "batches": { - "properties": { - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastAccessedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "progress": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - } - } - }, - "channel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "classSubjectTaught": { - "properties": { - "classes": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subjects": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "countryCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "disabilityType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "education": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "boardOrUniversity": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "degree": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "percentage": { - "type": "double", - "fields": { - "raw": { - "type": "double" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "yearOfPassing": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - } - } - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "emailVerified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "emailverified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "employmentState": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "firstName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "framework": { - "properties": { - "board": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gradeLevel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "medium": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "fullName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestAcademicQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestEnglishQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestMathQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestSSTQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestScienceQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestTeacherQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestVernacularLanguageQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isMasterTrainer": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isCurrentJob": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "jobName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "joiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "orgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "role": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "language": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "locationIds": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskedEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskedPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "masterTrainerSubjects": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "organisations": { - "properties": { - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addedByName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvalDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvaldate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isApproved": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isRejected": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "orgJoinDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgLeftDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "organisationId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgjoindate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "position": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phoneVerified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "phoneverified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileVisibility": { - "properties": { - "address": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "education": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "firstName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grades": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "language": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "socialMedia": { - "properties": { - "in": { - "properties": { - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "twitter": { - "properties": { - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subjects": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "test": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userSkills": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "webPages": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "provider": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "regOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "registryId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "schoolCode": { - "type": "double", - "fields": { - "raw": { - "type": "double" - } - } - }, - "schoolJoiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "serviceJoiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skills": { - "properties": { - "addedAt": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "endorsementCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsementcount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsers": { - "properties": { - "0283452c-a607-4184-9806-1fac2f16d5b9": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "39d460e8-80ef-4045-8fe0-de4a78e78bc4": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "3d45fbd8-b911-4cc5-b503-61215902d780": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "48a2fbc6-df85-4a41-8e68-7057986aee5a": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "62354c16-29c7-419c-8d30-a30491bef7c3": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "7526ab9d-e8a6-478b-83e2-6ff1296c302e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "9645e749-39f0-4b73-993d-09e633eeea1d": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a1355233-6b82-4660-86f5-73b95c03aec9": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a3d4151b-4d3e-4068-8950-d5b27b10487e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "b2fff05d-dfc9-497c-840e-5675a2b78e57": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "be7efb23-6af9-4d92-82b3-a4d78fcfa2f6": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "c9f23b5f-cd4c-42db-9a24-1f3ebc60dc9a": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "d5efd1ab-3cad-4034-8143-32c480f5cc9e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } - }, - "endorsersList": { - "properties": { - "endorseDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skillName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skillNameToLowercase": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherInBRC": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherInCRC": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherSchoolBoardAffiliation": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "tncAcceptedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "tncAcceptedVersion": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "trainingsCompleted": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "vernacularLanguageStudied": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "webPages": { - "properties": { - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/usercourses.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/usercourses.json deleted file mode 100644 index 1038ff76b..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/usercourses.json +++ /dev/null @@ -1,1181 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "active": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "contentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseLogoUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dateTime": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "delta": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "firstName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "framework": { - "properties": { - "board": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gradeLevel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "medium": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReadContentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReadContentStatus": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "leafNodesCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "locationIds": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "organisations": { - "properties": { - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvaldate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isApproved": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isRejected": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "organisationId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgjoindate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "position": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileVisibility": { - "properties": { - "address": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "education": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "progress": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "properties": { - "endorsementCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsersList": { - "properties": { - "endorseDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skillName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skillNameToLowercase": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "tncAcceptedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "tncAcceptedVersion": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "tocUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/userfeed.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/userfeed.json deleted file mode 100644 index 1ba018b74..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/userfeed.json +++ /dev/null @@ -1,212 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic":false, - "properties": { - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "category": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "data": { - "type": "object" - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "priority": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "createdOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "expireOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "updatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/usernotes.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/usernotes.json deleted file mode 100644 index 8cf7ff145..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/usernotes.json +++ /dev/null @@ -1,289 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "contentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "note": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "tags": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "title": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/userprofilevisibility.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/userprofilevisibility.json deleted file mode 100644 index 986821ada..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/indices/userprofilevisibility.json +++ /dev/null @@ -1,1517 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - }, - "mappings": { - "_doc": { - "dynamic": false, - "properties": { - "address": { - "properties": { - "addType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "country": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "avatar": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countryCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "education": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "boardOrUniversity": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "degree": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "percentage": { - "type": "double", - "fields": { - "raw": { - "type": "double" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "yearOfPassing": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - } - } - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isCurrentJob": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "jobName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "joiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "orgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "role": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "language": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "properties": { - "addedAt": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "endorsementCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsementcount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsers": { - "properties": { - "39d460e8-80ef-4045-8fe0-de4a78e78bc4": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "7526ab9d-e8a6-478b-83e2-6ff1296c302e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a1355233-6b82-4660-86f5-73b95c03aec9": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a3d4151b-4d3e-4068-8950-d5b27b10487e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "d5efd1ab-3cad-4034-8143-32c480f5cc9e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } - }, - "endorsersList": { - "properties": { - "endorseDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skillName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skillNameToLowercase": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "webPages": { - "properties": { - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/announcement-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/announcement-mapping.json deleted file mode 100644 index 08d45cadb..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/announcement-mapping.json +++ /dev/null @@ -1,348 +0,0 @@ -{ - "dynamic_templates": [ - { - "longs": { - "match_mapping_type": "long", - "mapping": { - "fields": { - "raw": { - "type": "long" - } - }, - "type": "long" - } - } - }, - { - "booleans": { - "match_mapping_type": "boolean", - "mapping": { - "fields": { - "raw": { - "type": "boolean" - } - }, - "type": "boolean" - } - } - }, - { - "doubles": { - "match_mapping_type": "double", - "mapping": { - "fields": { - "raw": { - "type": "double" - } - }, - "type": "double" - } - } - }, - { - "dates": { - "match_mapping_type": "date", - "mapping": { - "fields": { - "raw": { - "type": "date" - } - }, - "type": "date" - } - } - }, - { - "strings": { - "match_mapping_type": "string", - "mapping": { - "analyzer": "cs_index_analyzer", - "copy_to": "all_fields", - "fielddata": true, - "fields": { - "raw": { - "type": "text", - "fielddata": true, - "analyzer": "keylower" - } - }, - "search_analyzer": "cs_search_analyzer", - "type": "text" - } - } - } - ], - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "attachments": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createddate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "details": { - "properties": { - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "filename": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "from": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "title": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "links": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "sentcount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "sourceId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "sourceid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "target": { - "properties": { - "geo": { - "properties": { - "ids": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } - }, - "userid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/announcementtype-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/announcementtype-mapping.json deleted file mode 100644 index bc518e631..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/announcementtype-mapping.json +++ /dev/null @@ -1,184 +0,0 @@ -{ - "dynamic_templates": [ - { - "longs": { - "match_mapping_type": "long", - "mapping": { - "fields": { - "raw": { - "type": "long" - } - }, - "type": "long" - } - } - }, - { - "booleans": { - "match_mapping_type": "boolean", - "mapping": { - "fields": { - "raw": { - "type": "boolean" - } - }, - "type": "boolean" - } - } - }, - { - "doubles": { - "match_mapping_type": "double", - "mapping": { - "fields": { - "raw": { - "type": "double" - } - }, - "type": "double" - } - } - }, - { - "dates": { - "match_mapping_type": "date", - "mapping": { - "fields": { - "raw": { - "type": "date" - } - }, - "type": "date" - } - } - }, - { - "strings": { - "match_mapping_type": "string", - "mapping": { - "analyzer": "cs_index_analyzer", - "copy_to": "all_fields", - "fielddata": true, - "fields": { - "raw": { - "type": "text", - "fielddata": true, - "analyzer": "keylower" - } - }, - "search_analyzer": "cs_search_analyzer", - "type": "text" - } - } - } - ], - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "createddate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootorgid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/badgeassociations-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/badgeassociations-mapping.json deleted file mode 100644 index ac89495e9..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/badgeassociations-mapping.json +++ /dev/null @@ -1,152 +0,0 @@ -{ - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "contentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "issuerId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "updatedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/cbatch-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/cbatch-mapping.json deleted file mode 100644 index 558dad77c..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/cbatch-mapping.json +++ /dev/null @@ -1,344 +0,0 @@ -{ - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countDecrementDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countDecrementStatus": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "countIncrementDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "countIncrementStatus": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "courseCreator": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdFor": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "enrollmentEndDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "enrollmentType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "mentors": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "startDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "participantCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "completedCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "reportUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/cbatchstats-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/cbatchstats-mapping.json deleted file mode 100644 index 082136d3b..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/cbatchstats-mapping.json +++ /dev/null @@ -1,208 +0,0 @@ -{ - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completedPercent": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "districtName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "maskedEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskedPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subOrgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/course-batch-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/course-batch-mapping.json deleted file mode 100644 index 722516897..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/course-batch-mapping.json +++ /dev/null @@ -1,264 +0,0 @@ -{ - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdFor": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "enrollmentEndDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "enrollmentType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "mentors": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "startDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "participantCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "completedCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "reportUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/location-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/location-mapping.json deleted file mode 100644 index 39c416274..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/location-mapping.json +++ /dev/null @@ -1,112 +0,0 @@ -{ - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "code": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "parentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "value": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/metrics-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/metrics-mapping.json deleted file mode 100644 index a68e93c22..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/metrics-mapping.json +++ /dev/null @@ -1,280 +0,0 @@ -{ - "dynamic_templates": [ - { - "longs": { - "match_mapping_type": "long", - "mapping": { - "fields": { - "raw": { - "type": "long" - } - }, - "type": "long" - } - } - }, - { - "booleans": { - "match_mapping_type": "boolean", - "mapping": { - "fields": { - "raw": { - "type": "boolean" - } - }, - "type": "boolean" - } - } - }, - { - "doubles": { - "match_mapping_type": "double", - "mapping": { - "fields": { - "raw": { - "type": "double" - } - }, - "type": "double" - } - } - }, - { - "dates": { - "match_mapping_type": "date", - "mapping": { - "fields": { - "raw": { - "type": "date" - } - }, - "type": "date" - } - } - }, - { - "strings": { - "match_mapping_type": "string", - "mapping": { - "analyzer": "cs_index_analyzer", - "copy_to": "all_fields", - "fielddata": true, - "fields": { - "raw": { - "type": "text", - "fielddata": true, - "analyzer": "keylower" - } - }, - "search_analyzer": "cs_search_analyzer", - "type": "text" - } - } - } - ], - "properties": { - "activity": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "announcementId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "announcementid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "channel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createddate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootorgid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/org-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/org-mapping.json deleted file mode 100644 index 94d8edacd..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/org-mapping.json +++ /dev/null @@ -1,827 +0,0 @@ -{ - "dynamic": false, - "properties": { - "address": { - "properties": { - "addType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "country": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "channel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "contactDetail": { - "properties": { - "Email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "Phone ": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "Phone Number": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "Phonenumber": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "address": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "age": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "fax": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "contactdetails": { - "type": "object" - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "externalId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "homeUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "imgUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isDefault": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isRootOrg": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "locationId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "locationIds": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "noOfMembers": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "orgCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgTypeId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "preferredLanguage": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "provider": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "slug": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "theme": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/user-courses-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/user-courses-mapping.json deleted file mode 100644 index e67b5de92..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/user-courses-mapping.json +++ /dev/null @@ -1,397 +0,0 @@ -{ - "dynamic": false, - "properties": { - "active": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dateTime": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "delta": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReadContentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReadContentStatus": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "progress": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "contentStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completionPercentage": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "certificates": { - "type": "nested", - "properties": { - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "token": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastIssuedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReIssuedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/user-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/user-mapping.json deleted file mode 100644 index 0bb527784..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/user-mapping.json +++ /dev/null @@ -1,3572 +0,0 @@ -{ - "dynamic": false, - "properties": { - "activeStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "address": { - "properties": { - "addType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "country": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "appointmentType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "authenticationStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "avatar": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeAssertions": { - "properties": { - "assertionId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "assertionid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeClassImage": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeClassName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeclassimage": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeclassname": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeid": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdTS": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdTs": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "createdts": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "issuerId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "badges": { - "properties": { - "badgeTypeId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "receiverId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "batches": { - "properties": { - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastAccessedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "progress": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - } - } - }, - "channel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "classSubjectTaught": { - "properties": { - "classes": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subjects": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "countryCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "disabilityType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "education": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "boardOrUniversity": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "degree": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "percentage": { - "type": "double", - "fields": { - "raw": { - "type": "double" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "yearOfPassing": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - } - } - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "prevUsedEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "emailVerified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "emailverified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "employmentState": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "firstName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "framework": { - "properties": { - "board": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gradeLevel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "medium": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "fullName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestAcademicQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestEnglishQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestMathQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestSSTQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestScienceQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestTeacherQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "highestVernacularLanguageQualification": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isMasterTrainer": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isCurrentJob": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "jobName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "joiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "orgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "role": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "language": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "locationIds": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskedEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "maskedPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "masterTrainerSubjects": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "organisations": { - "properties": { - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addedByName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvalDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvaldate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isApproved": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isRejected": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "orgJoinDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgLeftDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "organisationId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgjoindate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "position": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "prevUsedPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phoneVerified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "phoneverified": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileVisibility": { - "properties": { - "address": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "education": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "firstName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grades": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "language": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "socialMedia": { - "properties": { - "in": { - "properties": { - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "twitter": { - "properties": { - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subjects": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "test": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userSkills": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "webPages": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "provider": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "regOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "registryId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "schoolCode": { - "type": "double", - "fields": { - "raw": { - "type": "double" - } - } - }, - "schoolJoiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "serviceJoiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skills": { - "properties": { - "addedAt": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "endorsementCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsementcount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsers": { - "properties": { - "0283452c-a607-4184-9806-1fac2f16d5b9": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "39d460e8-80ef-4045-8fe0-de4a78e78bc4": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "3d45fbd8-b911-4cc5-b503-61215902d780": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "48a2fbc6-df85-4a41-8e68-7057986aee5a": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "62354c16-29c7-419c-8d30-a30491bef7c3": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "7526ab9d-e8a6-478b-83e2-6ff1296c302e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "9645e749-39f0-4b73-993d-09e633eeea1d": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a1355233-6b82-4660-86f5-73b95c03aec9": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a3d4151b-4d3e-4068-8950-d5b27b10487e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "b2fff05d-dfc9-497c-840e-5675a2b78e57": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "be7efb23-6af9-4d92-82b3-a4d78fcfa2f6": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "c9f23b5f-cd4c-42db-9a24-1f3ebc60dc9a": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "d5efd1ab-3cad-4034-8143-32c480f5cc9e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } - }, - "endorsersList": { - "properties": { - "endorseDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skillName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skillNameToLowercase": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherInBRC": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherInCRC": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherSchoolBoardAffiliation": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherStatus": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "teacherType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "tncAcceptedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "tncAcceptedVersion": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "trainingsCompleted": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "vernacularLanguageStudied": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "webPages": { - "properties": { - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/usercourses-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/usercourses-mapping.json deleted file mode 100644 index df068fcd5..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/usercourses-mapping.json +++ /dev/null @@ -1,1132 +0,0 @@ -{ - "dynamic": false, - "properties": { - "active": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "batchId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completedOn": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "contentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseLogoUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dateTime": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "delta": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "description": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encEmail": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "encPhone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "enrolledDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "firstName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "framework": { - "properties": { - "board": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gradeLevel": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "medium": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReadContentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastReadContentStatus": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "leafNodesCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "locationIds": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "organisations": { - "properties": { - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvaldate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "approvedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "hashTagId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isApproved": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "isRejected": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "organisationId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgjoindate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "position": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileVisibility": { - "properties": { - "address": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "education": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "progress": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "roles": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "rootOrgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "properties": { - "endorsementCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsersList": { - "properties": { - "endorseDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skillName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skillNameToLowercase": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "status": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "tncAcceptedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "tncAcceptedVersion": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "tocUrl": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/userfeed-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/userfeed-mapping.json deleted file mode 100644 index deba277e5..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/userfeed-mapping.json +++ /dev/null @@ -1,163 +0,0 @@ -{ - "dynamic":false, - "properties": { - "status": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "category": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "data": { - "type": "object" - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "priority": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "createdOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "expireOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "updatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/usernotes-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/usernotes-mapping.json deleted file mode 100644 index c2aa64bfa..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/usernotes-mapping.json +++ /dev/null @@ -1,240 +0,0 @@ -{ - "dynamic": false, - "properties": { - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "completeness": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "contentId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "courseId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isDeleted": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "missingFields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "note": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "tags": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "title": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/userprofilevisibility-mapping.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/userprofilevisibility-mapping.json deleted file mode 100644 index 3a064c02b..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/mappings/userprofilevisibility-mapping.json +++ /dev/null @@ -1,1592 +0,0 @@ -{ - "dynamic": false, - "properties": { - "address": { - "properties": { - "addType": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "country": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "all_fields": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower" - } - }, - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer" - }, - "avatar": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeAssertions": { - "properties": { - "assertionId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeClassImage": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeClassName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "badgeId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdts": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "issuerId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "countryCode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "dob": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "education": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "boardOrUniversity": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "degree": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "name": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "percentage": { - "type": "double", - "fields": { - "raw": { - "type": "double" - } - } - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "yearOfPassing": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - } - } - }, - "email": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "gender": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "grade": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "identifier": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "jobProfile": { - "properties": { - "address": { - "properties": { - "addressLine1": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "addressLine2": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "city": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "state": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "zipcode": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "addressId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "endDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "isCurrentJob": { - "type": "boolean", - "fields": { - "raw": { - "type": "boolean" - } - } - }, - "jobName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "joiningDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "orgId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "orgName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "role": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "updatedDate": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "language": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "location": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "loginId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "phone": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "profileSummary": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skills": { - "properties": { - "addedAt": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "addedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "createdOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "endorsementCount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsementcount": { - "type": "long", - "fields": { - "raw": { - "type": "long" - } - } - }, - "endorsers": { - "properties": { - "39d460e8-80ef-4045-8fe0-de4a78e78bc4": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "7526ab9d-e8a6-478b-83e2-6ff1296c302e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a1355233-6b82-4660-86f5-73b95c03aec9": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "a3d4151b-4d3e-4068-8950-d5b27b10487e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "d5efd1ab-3cad-4034-8143-32c480f5cc9e": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - } - } - }, - "endorsersList": { - "properties": { - "endorseDate": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "id": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedBy": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "lastUpdatedOn": { - "type": "date", - "fields": { - "raw": { - "type": "date" - } - } - }, - "skillName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "skillNameToLowercase": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - }, - "subject": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userId": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "userName": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "webPages": { - "properties": { - "type": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - }, - "url": { - "type": "text", - "fields": { - "raw": { - "type": "text", - "analyzer": "keylower", - "fielddata": true - } - }, - "copy_to": [ - "all_fields" - ], - "analyzer": "cs_index_analyzer", - "search_analyzer": "cs_search_analyzer", - "fielddata": true - } - } - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/README.md b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/README.md deleted file mode 100644 index b53f38f30..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/README.md +++ /dev/null @@ -1,131 +0,0 @@ -# sunbird-course-service - -Repository for Batch Service - -## sunbird-course-Service local setup -This readme file contains the instruction to set up and run the sunbird-course-service in local machine. - -### Prerequisites: -Java 11, -Maven - Latest, -Cassandra 3.11.6, -ES 6.8.11, -Redis 4.0.0, -GIT, -Docker - Latest - -### Create folders for database data and logs - -```shell -mkdir -p ~/sunbird-dbs/cassandra ~/sunbird-dbs/es -export sunbird_dbs_path=~/sunbird-dbs -``` - -### Cassandra database setup in docker: - - - -i. Get the cassandra image using below command -```shell -docker pull cassandra:3.11.6 -``` -ii. For the network, we can use the existing network or create a new network using the following command and use it. -```shell -docker network create sunbird_db_network -``` -iii. Run Cassandra -```shell -docker run -p 9042:9042 --name sunbird_cassandra -v $sunbird_dbs_path/cassandra/data:/var/lib/cassandra -v $sunbird_dbs_path/cassandra/logs:/opt/cassandra/logs -v $sunbird_dbs_path/cassandra/backups:/mnt/backups --network sunbird_db_network -d cassandra:3.11.6 -``` -Fork the below projects and clone it from git, -```shell -git clone https://github.com/Sunbird-Lern/sunbird-utils/ -``` -Open a new Terminal In the path, -#### (Project base path)/sunbird-utils -Run the below command, -```shell -mvn clean install -DskipTests -``` -Make sure the build is success and then, -open a new Terminal In the path, -#### (Project base path)/sunbird-utils/sunbird-cassandra-migration/cassandra-migration, -Run below command, -```shell -mvn clean install -DskipTests -``` -## One should execute only one of the commands listed below. -### Command 1: -```shell -java -jar \ --Dcassandra.migration.scripts.locations=filesystem:/db/migration/cassandra \ --Dcassandra.migration.cluster.contactpoints=localhost \ --Dcassandra.migration.cluster.port=9042 \ --Dcassandra.migration.cluster.username=username \ --Dcassandra.migration.cluster.password=password \ --Dcassandra.migration.keyspace.name=keyspace_name \ -target/*-jar-with-dependencies.jar migrate -``` -### replace keyspace_name as sunbird_courses and sunbird -### Command 2: -```shell -java -cp "cassandra-migration-0.0.1-SNAPSHOT-jar-with-dependencies.jar" com.contrastsecurity.cassandra.migration.utils.MigrationScriptEntryPoint -``` -The system environment listed below is required for command 2. -### System Env -```shell -sunbird_cassandra_keyspace= -sunbird_cassandra_migration_location="filesystem:/db/migration/cassandra" -``` - -### Elasticsearch database setup in docker: -i. Get the ES image using below command: -```shell -docker pull elasticsearch:6.8.11 -``` -ii. Run ES -```shell -docker run -p 9200:9200 --name sunbird_es -v $sunbird_dbs_path/es/data:/usr/share/elasticsearch/data -v $sunbird_dbs_path/es/logs://usr/share/elasticsearch/logs -v $sunbird_dbs_path/es/backups:/opt/elasticsearch/backup -e "discovery.type=single-node" --network sunbird_db_network -d docker.elastic.co/elasticsearch/elasticsearch:6.8.11 - -chmod -R 777 sunbird-dbs/es -``` -iii. ES Indices and Mappings -Get the index and mapping from these folders and create them using postman. -https://github.com/project-sunbird/sunbird-devops/tree/master/ansible/roles/es-mapping -PUT http://localhost:9200/ Body : -PUT http://localhost:9200//_mapping/_doc Body : - -### Redis setup in docker: -i. Get the Redis image using below command: -```shell -docker pull redis:4.0.0 -``` -ii. Run Redis -```shell -docker run --name sunbird_redis -d -p 6379:6379 redis:4.0.0 -``` -​ -### Batch Service Repo setup: -Repository url : git clone https://github.com//sunbird-course-service.git -Branch : - -i. Checkout the branch code from github after forking the repository. - -ii. Update the lms-service.sh file in the scripts folder with configuration values to setup environment variables and run it to export the values or add the variables to bashrc or bashprofile. -```shell -./scripts/lms-service.sh -``` -iii. Build using maven from sunbird-course-service folder -```shell -mvn clean install -DskipTests -``` -iii. Run the service from sunbird-course-service/service folder -```shell -mvn play2:run -``` -iv. Use the below curl to check the service health -```shell -curl --location --request GET 'http://localhost:9000/health' -``` - -The code in this repository is licensed under MIT License unless otherwise noted. Please see the [LICENSE](https://github.com/project-sunbird/sunbird-lms-service/blob/master/LICENSE) file for details. \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/indices/certreg_indices.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/indices/certreg_indices.json deleted file mode 100644 index 8dca30f04..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/indices/certreg_indices.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "settings": { - "index": { - "number_of_shards": "5", - "number_of_replicas": "1", - "analysis": { - "filter": { - "mynGram": { - "token_chars": [ - "letter", - "digit", - "whitespace", - "punctuation", - "symbol" - ], - "min_gram": "1", - "type": "ngram", - "max_gram": "20" - } - }, - "analyzer": { - "cs_index_analyzer": { - "filter": [ - "lowercase", - "mynGram" - ], - "type": "custom", - "tokenizer": "standard" - }, - "keylower": { - "filter": "lowercase", - "type": "custom", - "tokenizer": "keyword" - }, - "cs_search_analyzer": { - "filter": [ - "lowercase", - "standard" - ], - "type": "custom", - "tokenizer": "standard" - } - } - } - } - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/mappings/certreg_mappings.json b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/mappings/certreg_mappings.json deleted file mode 100644 index d1ec23ab4..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/mappings/certreg_mappings.json +++ /dev/null @@ -1,200 +0,0 @@ -{ - "dynamic":"false", - "properties":{ - "accessCode":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "createdAt":{ - "type":"date", - "fields":{ - "raw":{ - "type":"date" - } - } - }, - "createdBy":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "data":{ - "type":"object" - }, - "id":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "isRevoked":{ - "type":"boolean", - "fields":{ - "raw":{ - "type":"boolean" - } - } - }, - "jsonUrl":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "pdfUrl":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "reason":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "recipient":{ - "properties":{ - "id":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - }, - "type":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - } - } - }, - "related":{ - "properties":{ - "type":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - } - } - }, - "updatedAt":{ - "type":"date", - "fields":{ - "raw":{ - "type":"date" - } - } - }, - "updatedBy":{ - "type":"text", - "fields":{ - "raw":{ - "type":"text", - "analyzer":"keylower", - "fielddata":true - } - }, - "copy_to":[ - "all_fields" - ], - "analyzer":"cs_index_analyzer", - "search_analyzer":"cs_search_analyzer", - "fielddata":true - } - } -} \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/reindex.sh b/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/reindex.sh deleted file mode 100755 index 9fc38b77f..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/main/resources/reindexing/reindex.sh +++ /dev/null @@ -1,175 +0,0 @@ -#!/bin/bash -set -eu -o pipefail - -perform_reindexing(){ - -echo ">>STEP1: mapping $alias_name with $old_index index" - - -alias_old_index_status=$( curl -s --write-out %{http_code} --silent --output --location --request POST 'http://'$es_ip':9200/_aliases?pretty' \ ---header 'Content-Type: application/json' \ ---data-raw '{ - "actions" : [ - { "add" : { "index" : "'$old_index'", "alias" : "'$alias_name'" } } - ] -}') - - -if [[ $alias_old_index_status == 200 ]] ; then - echo "'$old_index' index successfully map to alias $alias_name with status code 200" -else - echo "STEP1 FAILED:$old_index index is unable to map with alias $alias_name with status code $alias_old_index_status hence exiting program....." - exit 1 -fi - - -echo ">>STEP2: creating '$new_index' index" - -index_status_code=$( curl -s --write-out %{http_code} --silent --output --location --request PUT 'http://'$es_ip':9200/'$new_index'' \ ---header 'Content-Type: application/json' \ --d @$index_req_filepath) - -if [[ $index_status_code == 200 ]] ; then - echo "'$new_index' index successfully created with status code 200" -else - echo "STEP2 FAILED:'$new_index' index is unable to create with status code $index_status_code hence exiting program....." - exit 1 -fi - -echo ">>STEP3: creating mapping of '$new_index' index\n" - -mapping_status_code=$( curl -s --write-out %{http_code} --silent --output --location --request PUT 'http://'$es_ip':9200/'$new_index'/_doc/_mapping' \ ---header 'Content-Type: application/json' \ --d @$mapping_req_filepath) - -if [[ $mapping_status_code == 200 ]] ; then - echo "'$new_index' index mappings successfully created with status code 200" -else - echo "STEP3 FAILED:'$new_index' index is unable to create mappings with status code $mapping_status_code hence exiting program......" - exit 1 -fi - -echo ">>STEP4: copying $data_count certificates from '$old_index' index to '$new_index' index\n" - - -status_code=$( curl -s --write-out %{http_code} --silent --output --location --request POST 'http://'$es_ip':9200/_reindex' \ ---header 'Content-Type: application/json' \ ---data-raw '{ - "source": { - "index": "'$old_index'" - }, - "dest": { - "index": "'$new_index'" - } -}') - -if [[ $status_code == 200 ]] ; then - echo "$data_count certificates copied from '$old_index' to '$new_index' index with status code 200" -else - echo "STEP4 FAILED:to copy certificates with status code $status_code, please manually delete the temp index. exiting the program......" - exit 1 -fi - - -echo ">>STEP5: deleting $alias_name with $old_index index and mapping alias with $new_index" - -alias_new_index_status=$( curl -s --write-out %{http_code} --silent --output --location --request POST 'http://'$es_ip':9200/_aliases' \ ---header 'Content-Type: application/json' \ ---data-raw '{ - "actions" : [ - { "add" : { "index" : "'$new_index'", "alias" : "'$alias_name'" } }, - { "remove" : { "index" : "'$old_index'", "alias" : "'$alias_name'" }} - ] -}') - -if [[ $alias_new_index_status == 200 ]] ; then - echo "$alias_name successfully mapped to $new_index" -else - echo "$alias_name failed to map with $new_indexES with status code $alias_new_index_status, exiting....." - exit 1 -fi - -echo ">>STEP6: deleting previous $old_index index\n" - -index_delete_status_code=$( curl -s --write-out %{http_code} --silent --output --location --request DELETE 'http://'$es_ip':9200/'$old_index'' \ ---header 'Content-Type: application/json' ) - - -if [[ $index_delete_status_code == 200 ]] ; then - echo "$old_index index deleted with status code 200" -else - echo "STEP6 FAILED:to delete $old_index index with status code $index_delete_status_code exiting the program......" - exit 1 -fi - -} - - -echo "Starting REINDEXING PROGRAM IN ELASTICSEARCH......." - -es_ip=$1 -old_index=$2 -new_index=$3 -alias_name=$4 -index_req_filepath=$5 -mapping_req_filepath=$6 - -if [ "$#" -ne 6 ]; then - echo "PARAM INITIALIZATION FAILED, No command line arguments provided, Please provide esIp, old index, new index and alias name, index_req_filepath, mapping_req_filepath" - exit 1 -fi - - - -echo "checking provide file existence" - -[ -f "$index_req_filepath" ] || { echo "$index_req_filepath NOT FOUND" ; exit 1 ;} -[ -f "$mapping_req_filepath" ] || { echo "$mapping_req_filepath NOT FOUND" ; exit 1 ;} - - - - - -echo "ES_IP GOT: $es_ip\n" -echo "OLD INDEX(NEED TO BE DELETED) GOT: $old_index\n" -echo "NEW INDEX GOT: $new_index\n" -echo "Alias GOT: $alias_name\n" -echo "index json request path got $index_req_filepath" -echo "mapping request json path $mapping_req_filepath" -echo "=======Params Initialized==========\n" -echo "NOTE: IF ANY STEP FAILED PLEASE MANUALLY DELETE THE NEW INDEX from ElasticSearch i.e $new_index." - - - -eshealth_status_code=$( curl -s --write-out %{http_code} --silent --output --location --request GET 'http://'$es_ip':9200' \ ---header 'Content-Type: application/json' ) - -if [[ $eshealth_status_code == 200 ]] ; then - echo "ELASTICSEARCH IS ALIVE" -else - echo "ES is not alive please make sure es is up and running, exiting....." - exit 1 -fi - -DATE=`date "+%Y%m%d-%H%M%S"` -backup_file_name=certregBackup$DATE.txt -echo "PERFORMING '$old_index' BACKUP, can be found in file $backup_file_name" - -curl -s --location --request GET 'http://'$es_ip':9200/'$old_index'/_search?size=10000' --header 'Content-Type: application/json' --data-raw '{ - "query":{ - - "match_all":{} - - } -} - -' | jq '.' > $backup_file_name - - -data_count=$( curl -s --location --request GET 'http://'$es_ip':9200/'$old_index'/_count' --header 'Content-Type: application/json' --header 'Accept: text' | jq ."count" ) -echo "continue reindexing of $data_count records" -perform_reindexing - - - - diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/common/ElasticSearchRestHighImplTest.java b/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/common/ElasticSearchRestHighImplTest.java deleted file mode 100644 index 9ab73b641..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/common/ElasticSearchRestHighImplTest.java +++ /dev/null @@ -1,452 +0,0 @@ -package org.sunbird.common; - -import org.elasticsearch.action.ActionListener; -import org.elasticsearch.action.DocWriteResponse; -import org.elasticsearch.action.bulk.BulkItemResponse; -import org.elasticsearch.action.bulk.BulkProcessor; -import org.elasticsearch.action.bulk.BulkResponse; -import org.elasticsearch.action.delete.DeleteResponse; -import org.elasticsearch.action.get.GetRequestBuilder; -import org.elasticsearch.action.get.GetResponse; -import org.elasticsearch.action.index.IndexResponse; -import org.elasticsearch.action.support.master.AcknowledgedResponse; -import org.elasticsearch.action.update.UpdateResponse; -import org.elasticsearch.client.RestHighLevelClient; -import org.elasticsearch.common.util.concurrent.FutureUtils; -import org.elasticsearch.search.SearchHit; -import org.elasticsearch.search.SearchHits; -import org.elasticsearch.search.aggregations.Aggregations; -import org.junit.Assert; -import org.junit.Before; -import org.junit.FixMethodOrder; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.MethodSorters; -import org.mockito.Mockito; -import org.mockito.invocation.InvocationOnMock; -import org.mockito.stubbing.Answer; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PowerMockIgnore; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; -import org.sunbird.common.exception.ProjectCommonException; -import org.sunbird.common.factory.EsClientFactory; -import org.sunbird.common.inf.ElasticSearchService; -import org.sunbird.common.models.util.HttpUtil; -import org.sunbird.common.models.util.JsonKey; -import org.sunbird.common.responsecode.ResponseCode; -import org.sunbird.helper.ConnectionManager; -import scala.concurrent.Future; - -import java.util.*; - -import static org.junit.Assert.assertEquals; -import static org.mockito.Mockito.doAnswer; -import static org.mockito.Mockito.when; -import static org.powermock.api.mockito.PowerMockito.doNothing; -import static org.powermock.api.mockito.PowerMockito.mock; - -/** - * Test class for Elastic search Rest High level client Impl - * - * @author github.com/iostream04 - */ -@FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RunWith(PowerMockRunner.class) -@PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*", "jdk.internal.reflect.*", "sun.security.ssl.*", "javax.net.ssl.*" , "javax.crypto.*"}) -@PrepareForTest({ - ConnectionManager.class, - RestHighLevelClient.class, - AcknowledgedResponse.class, - GetRequestBuilder.class, - HttpUtil.class, - BulkProcessor.class, - FutureUtils.class, - SearchHit.class, - SearchHits.class, - Aggregations.class, - ElasticSearchHelper.class -}) -public class ElasticSearchRestHighImplTest { - - private ElasticSearchService esService = EsClientFactory.getInstance(); - private static RestHighLevelClient client = null; - - @Before - public void initBeforeTest() { - mockBaseRules(); - mockRulesForSave(false); - } - - @Test - public void testSaveSuccess() { - mockRulesForSave(false); - Future result = esService.save(null, "test", "001", new HashMap<>()); - String res = (String) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals("001", res); - } - - @Test - public void testSaveFailureWithEmptyIndex() { - - Future result = esService.save(null, "", "001", new HashMap<>()); - String res = (String) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals("ERROR", res); - } - - @Test - public void testSaveFailureWithEmptyIdentifier() { - Future result = esService.save(null, "test", "", new HashMap<>()); - String res = (String) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals("ERROR", res); - } - - @Test - public void testSaveFailure() { - mockRulesForSave(true); - Future result = esService.save(null, "test", "001", new HashMap<>()); - String res = (String) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(null, res); - } - - @Test - public void testUpdateSuccess() { - mockRulesForUpdate(false); - Future result = esService.update(null, "test", "001", new HashMap<>()); - boolean res = (boolean) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(true, res); - } - - @Test - public void testUpdateFailure() { - mockRulesForUpdate(true); - Future result = esService.update(null, "test", "001", new HashMap<>()); - Object res = ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(null, res); - } - - @Test - public void testUpdateFailureWithEmptyIndex() { - try { - esService.update(null, "", "001", new HashMap<>()); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testUpdateFailureWithEmptyIdentifier() { - try { - esService.update(null, "test", "", new HashMap<>()); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testGetDataByIdentifierFailureWithEmptyIndex() { - try { - esService.getDataByIdentifier(null, "", "001"); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testGetDataByIdentifierFailureWithEmptyIdentifier() { - try { - esService.getDataByIdentifier(null, "test", ""); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testGetDataByIdentifierFailure() { - mockRulesForGet(true); - Future> result = esService.getDataByIdentifier(null, "test", "001"); - Object res = ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(null, res); - } - - @Test - public void testDeleteSuccess() { - mockRulesForDelete(false, false); - Future result = esService.delete(null, "test", "001"); - boolean res = (boolean) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(true, res); - } - - @Test - public void testDeleteSuccessWithoutDelete() { - mockRulesForDelete(false, true); - Future result = esService.delete(null, "test", "001"); - boolean res = (boolean) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(false, res); - } - - @Test - public void testDeleteFailure() { - mockRulesForDelete(true, false); - Future result = esService.delete(null, "test", "001"); - Object res = ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(null, res); - } - - @Test - public void testDeleteFailureWithEmptyIdentifier() { - try { - esService.delete(null, "test", ""); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testDeleteFailureWithEmptyIndex() { - try { - esService.delete(null, "", "001"); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testUpsertSuccess() { - mockRulesForUpdate(false); - Future result = esService.update(null, "test", "001", new HashMap<>()); - boolean res = (boolean) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(true, res); - } - - @Test - public void testUpsertFailure() { - mockRulesForUpdate(true); - Future result = esService.update(null, "test", "001", new HashMap<>()); - Object res = ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(null, res); - } - - @Test - public void testUpsertFailureWithEmptyIndex() { - try { - esService.update(null, "", "001", new HashMap<>()); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testUpsertFailureWithEmptyIdentifier() { - try { - esService.update(null, "test", "", new HashMap<>()); - } catch (ProjectCommonException e) { - assertEquals(e.getResponseCode(), ResponseCode.invalidData.getResponseCode()); - } - } - - @Test - public void testBuilInsertSuccess() { - mockRulesForBulk(false); - List> list = new ArrayList<>(); - Map map = new HashMap<>(); - map.put(JsonKey.IDENTIFIER, "0001"); - list.add(map); - Future result = esService.bulkInsert(null, "test", list); - boolean res = (boolean) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(true, res); - } - - @Test - public void testBuilInsertFailure() { - mockRulesForBulk(true); - List> list = new ArrayList<>(); - Map map = new HashMap<>(); - map.put(JsonKey.IDENTIFIER, "0001"); - list.add(map); - Future result = esService.bulkInsert(null, "test", list); - boolean res = (boolean) ElasticSearchHelper.getResponseFromFuture(result); - assertEquals(false, res); - } - - private void mockBaseRules() { - client = mock(RestHighLevelClient.class); - PowerMockito.mockStatic(ConnectionManager.class); - try { - doNothing().when(ConnectionManager.class, "registerShutDownHook"); - } catch (Exception e) { - Assert.fail("Initialization of test case failed due to " + e.getLocalizedMessage()); - } - when(ConnectionManager.getRestClient()).thenReturn(client); - } - - private static void mockRulesForBulk(boolean fail) { - Iterator itr = mock(Iterator.class); - - BulkResponse response = mock(BulkResponse.class); - when(response.iterator()).thenReturn(itr); - when(itr.hasNext()).thenReturn(false); - - if (!fail) { - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onResponse(response); - return null; - } - }) - .when(client) - .bulkAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } else { - - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onFailure(new NullPointerException()); - return null; - } - }) - .when(client) - .bulkAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } - } - - private static void mockRulesForSave(boolean fail) { - IndexResponse ir = mock(IndexResponse.class); - when(ir.getId()).thenReturn("001"); - - if (!fail) { - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]).onResponse(ir); - return null; - } - }) - .when(client) - .indexAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } else { - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - - ((ActionListener) invocation.getArguments()[2]) - .onFailure(new NullPointerException()); - return null; - } - }) - .when(client) - .indexAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } - } - - @SuppressWarnings("rawtypes") - private static void mockRulesForUpdate(boolean fail) { - UpdateResponse updateRes = mock(UpdateResponse.class); - when(updateRes.getResult()).thenReturn(null); - - if (!fail) { - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onResponse(updateRes); - return null; - } - }) - .when(client) - .updateAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } else { - doAnswer( - new Answer() { - @SuppressWarnings("unchecked") - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onFailure(new NullPointerException()); - return null; - } - }) - .when(client) - .updateAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } - } - - @SuppressWarnings("rawtypes") - private static void mockRulesForGet(boolean fail) { - GetResponse getResponse = mock(GetResponse.class); - Map map = new HashMap<>(); - map.put("test", "any"); - when(getResponse.getSourceAsMap()).thenReturn(map); - when(getResponse.isExists()).thenReturn(true); - - if (!fail) { - doAnswer( - new Answer() { - @SuppressWarnings("unchecked") - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onResponse(getResponse); - return null; - } - }) - .when(client) - .getAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } else { - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onFailure(new NullPointerException()); - return null; - } - }) - .when(client) - .getAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } - } - - private static void mockRulesForDelete(boolean fail, boolean notFound) { - DeleteResponse delResponse = mock(DeleteResponse.class); - - if (!fail) { - if (notFound) { - when(delResponse.getResult()).thenReturn(DocWriteResponse.Result.NOT_FOUND); - } - - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onResponse(delResponse); - return null; - } - }) - .when(client) - .deleteAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } else { - - doAnswer( - new Answer() { - @Override - public Object answer(InvocationOnMock invocation) throws Throwable { - ((ActionListener) invocation.getArguments()[2]) - .onFailure(new NullPointerException()); - return null; - } - }) - .when(client) - .deleteAsync(Mockito.any(), Mockito.any(), Mockito.any()); - } - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/common/factory/EsClientFactoryTest.java b/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/common/factory/EsClientFactoryTest.java deleted file mode 100644 index 9857ad1da..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/common/factory/EsClientFactoryTest.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.sunbird.common.factory; - -import org.junit.Assert; -import org.junit.Test; -import org.sunbird.common.ElasticSearchRestHighImpl; -import org.sunbird.common.inf.ElasticSearchService; - -public class EsClientFactoryTest { - - @Test - public void testGetRestClient() { - ElasticSearchService service = EsClientFactory.getInstance(); - Assert.assertTrue(service instanceof ElasticSearchRestHighImpl); - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ConnectionManagerTest.java b/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ConnectionManagerTest.java deleted file mode 100644 index e767c83d8..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ConnectionManagerTest.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.sunbird.helper; - -import org.elasticsearch.action.bulk.BulkProcessor; -import org.elasticsearch.action.get.GetRequestBuilder; -import org.elasticsearch.action.support.master.AcknowledgedResponse; -import org.elasticsearch.client.RestHighLevelClient; -import org.elasticsearch.client.transport.TransportClient; -import org.elasticsearch.common.util.concurrent.FutureUtils; -import org.elasticsearch.search.SearchHit; -import org.elasticsearch.search.SearchHits; -import org.elasticsearch.search.aggregations.Aggregations; -import org.junit.Assert; -import org.junit.FixMethodOrder; -import org.junit.Ignore; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.runners.MethodSorters; -import org.powermock.core.classloader.annotations.PowerMockIgnore; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; -import org.sunbird.common.models.util.HttpUtil; - -/** @author manzarul */ -@Ignore -@FixMethodOrder(MethodSorters.NAME_ASCENDING) -@RunWith(PowerMockRunner.class) -@PowerMockIgnore({"javax.management.*", "javax.net.ssl.*", "javax.security.*"}) -@PrepareForTest({ - ConnectionManager.class, - TransportClient.class, - AcknowledgedResponse.class, - GetRequestBuilder.class, - HttpUtil.class, - BulkProcessor.class, - FutureUtils.class, - SearchHit.class, - SearchHits.class, - Aggregations.class -}) -public class ConnectionManagerTest { - - @Test - public void testGetRestClientNull() { - RestHighLevelClient client = ConnectionManager.getRestClient(); - Assert.assertNotNull(client); - } -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ElasticSearchMappingTest.java b/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ElasticSearchMappingTest.java deleted file mode 100644 index 6dc64a80c..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ElasticSearchMappingTest.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.sunbird.helper; - -import org.junit.Assert; -import org.junit.Test; - -public class ElasticSearchMappingTest { - - @Test - public void testcreateMapping() { - String mapping = ElasticSearchMapping.createMapping(); - Assert.assertNotNull(mapping); - } - -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ElasticSearchSettingsTest.java b/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ElasticSearchSettingsTest.java deleted file mode 100644 index f9d9fe886..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/test/java/org/sunbird/helper/ElasticSearchSettingsTest.java +++ /dev/null @@ -1,15 +0,0 @@ -package org.sunbird.helper; - -import org.junit.Assert; -import org.junit.Test; - -public class ElasticSearchSettingsTest { - - @Test - public void testcreateSettingsForIndex() { - - String settings = ElasticSearchSettings.createSettingsForIndex(); - Assert.assertNotNull(settings); - } - -} diff --git a/course-mw/sunbird-util/sunbird-es-utils/src/test/resources/elasticsearch.config.properties b/course-mw/sunbird-util/sunbird-es-utils/src/test/resources/elasticsearch.config.properties deleted file mode 100644 index 84aafa4dd..000000000 --- a/course-mw/sunbird-util/sunbird-es-utils/src/test/resources/elasticsearch.config.properties +++ /dev/null @@ -1,3 +0,0 @@ -es.cluster.name=test -es.host.name=localhost -es.host.port=9300 \ No newline at end of file diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/org/impl/OrganisationClientImpl.java b/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/org/impl/OrganisationClientImpl.java index 843f5ede7..de1a84fd6 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/org/impl/OrganisationClientImpl.java +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/org/impl/OrganisationClientImpl.java @@ -122,7 +122,7 @@ public Organisation esGetOrgByExternalId(String externalId, String provider) { filter.put(JsonKey.PROVIDER, provider); searchDto.getAdditionalProperties().put(JsonKey.FILTERS, filter); Future> esResponseF = - esUtil.search(null, searchDto, ProjectUtil.EsType.organisation.getTypeName()); + esUtil.search(searchDto, ProjectUtil.EsType.organisation.getTypeName(), null); Map esResponse = (Map) ElasticSearchHelper.getResponseFromFuture(esResponseF); List> list = (List>) esResponse.get(JsonKey.CONTENT); @@ -138,7 +138,7 @@ public Organisation esGetOrgByExternalId(String externalId, String provider) { public Organisation esGetOrgById(String id) { Map map = null; Future> mapF = - esUtil.getDataByIdentifier(null, ProjectUtil.EsType.organisation.getTypeName(), id); + esUtil.getDataByIdentifier(ProjectUtil.EsType.organisation.getTypeName(), id, null); map = (Map) ElasticSearchHelper.getResponseFromFuture(mapF); if (MapUtils.isEmpty(map)) { @@ -160,7 +160,7 @@ public List esSearchOrgByFilter(Map filter) { private List searchOrganisation(SearchDTO searchDto) { List orgList = new ArrayList<>(); Future> resultF = - esUtil.search(null, searchDto, ProjectUtil.EsType.organisation.getTypeName()); + esUtil.search(searchDto, ProjectUtil.EsType.organisation.getTypeName(), null); Map result = (Map) ElasticSearchHelper.getResponseFromFuture(resultF); diff --git a/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/user/impl/UserClientImpl.java b/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/user/impl/UserClientImpl.java index 0f20eaf42..287e53b70 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/user/impl/UserClientImpl.java +++ b/course-mw/sunbird-util/sunbird-platform-core/actor-util/src/main/java/org/sunbird/actorutil/user/impl/UserClientImpl.java @@ -61,7 +61,7 @@ private void esVerifyFieldUniqueness(String facetsKey, String objectType) { searchDto.setFacets(list); Future> esResponseF = - esUtil.search(null, searchDto, ProjectUtil.EsType.user.getTypeName()); + esUtil.search(searchDto, ProjectUtil.EsType.user.getTypeName(), null); Map esResponse = (Map) ElasticSearchHelper.getResponseFromFuture(esResponseF); diff --git a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/JsonKey.java b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/JsonKey.java index 55e548f11..481db5810 100644 --- a/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/JsonKey.java +++ b/course-mw/sunbird-util/sunbird-platform-core/common-util/src/main/java/org/sunbird/common/models/util/JsonKey.java @@ -9,6 +9,8 @@ * @author Manzarul */ public final class JsonKey { + + public static final String SEARCH_FUZZY = "fuzzy"; public static final String ANONYMOUS = "Anonymous"; public static final String UNAUTHORIZED = "Unauthorized"; public static final String MW_SYSTEM_HOST = "sunbird_mw_system_host"; @@ -250,6 +252,7 @@ public final class JsonKey { public static final String PARTICIPANTS = "participants"; public static final String PASSWORD = "password"; public static final String PDATA = "pdata"; + public static final String REST = "rest"; public static final String PERCENTAGE = "percentage"; public static final String PHONE = "phone";