ElasticSqlQueryFields.java 1.5 KB

12345678910111213141516171819202122232425262728293031
  1. package org.elasticsearch.dsl.bean;
  2. import org.elasticsearch.dsl.enums.QueryFieldType;
  3. public class ElasticSqlQueryFields {
  4. private ElasticSqlQueryFields() {
  5. // private constructor
  6. }
  7. public static ElasticSqlQueryField newMatchAllField(String prefixPath) {
  8. String matchAllField = String.format("%s.%s", prefixPath, "*");
  9. return new ElasticSqlQueryField(null, matchAllField, matchAllField, QueryFieldType.MatchAllField);
  10. }
  11. public static ElasticSqlQueryField newRootDocQueryField(String rootDocFieldName) {
  12. return new ElasticSqlQueryField(null, rootDocFieldName, rootDocFieldName, QueryFieldType.RootDocField);
  13. }
  14. public static ElasticSqlQueryField newInnerDocQueryField(String innerDocQueryFieldFullName) {
  15. return new ElasticSqlQueryField(null, innerDocQueryFieldFullName, innerDocQueryFieldFullName, QueryFieldType.InnerDocField);
  16. }
  17. public static ElasticSqlQueryField newInnerDocQueryField(String innerDocFieldPrefix, String innerDocFieldName) {
  18. String innerDocQueryFieldFullName = String.format("%s.%s", innerDocFieldPrefix, innerDocFieldName);
  19. return newInnerDocQueryField(innerDocQueryFieldFullName);
  20. }
  21. public static ElasticSqlQueryField newNestedDocQueryField(String nestedDocContextPath, String simpleQueryFieldName) {
  22. return new ElasticSqlQueryField(nestedDocContextPath, simpleQueryFieldName, String.format("%s.%s", nestedDocContextPath, simpleQueryFieldName), QueryFieldType.NestedDocField);
  23. }
  24. }