TextIndexDefinitionBuilder indexDefinitionBuilder = new TextIndexDefinitionBuilder().named(name); indexDefinitionBuilder.withDefaultLanguage(root.getLanguage()); TextIndexDefinition indexDefinition = indexDefinitionBuilder.build();
indexDefinitionBuilder.withLanguageOverride(persistentProperty.getFieldName()); indexDefinitionBuilder.onField(propertyDotPath, weight);
public IndexDefinition getIndexDefinition() { return index.build(); }
public MongoTextSearchIndex withLanguageOverride(String language) { index.withLanguageOverride(language); return this; }
public MongoTextSearchIndex onAllFields() { index.onAllFields(); return this; }
public MongoTextSearchIndex named(String name) { index.named(name); return this; }
public MongoTextSearchIndex() { index = new TextIndexDefinition.TextIndexDefinitionBuilder(); }
public MongoTextSearchIndex on(String key, float weight) { index.onField(key, weight); return this; }
public MongoTextSearchIndex on(String... key) { index.onFields(key); return this; }
public MongoTextSearchIndex defaultLanguage(String language) { index.withDefaultLanguage(language); return this; }
TextIndexDefinition textIndex = new TextIndexDefinition.TextIndexDefinitionBuilder() .withDefaultLanguage("none").withLanguageOverride("dummy") .named("text_user_search") .onField("user.name") .onField("user.mail") .build(); mongoTemplate.indexOps(User.class).ensureIndex(textIndex);
indexDefinitionBuilder.withLanguageOverride(persistentProperty.getFieldName()); indexDefinitionBuilder.onField(propertyDotPath, weight);
/** * Creates a {@link TextIndexDefinition} for all fields in the document. * * @return */ public static TextIndexDefinition forAllFields() { return new TextIndexDefinitionBuilder().onAllFields().build(); }
/** * Include given fields with default weight. * * @param fieldnames * @return */ public TextIndexDefinitionBuilder onFields(String... fieldnames) { for (String fieldname : fieldnames) { onField(fieldname); } return this; }
/** * Include given field with default weight. * * @param fieldname * @return */ public TextIndexDefinitionBuilder onField(String fieldname) { return onField(fieldname, 1F); }
/** * Get {@link TextIndexDefinitionBuilder} to create {@link TextIndexDefinition}. * * @return */ public static TextIndexDefinitionBuilder builder() { return new TextIndexDefinitionBuilder(); }
TextIndexDefinitionBuilder indexDefinitionBuilder = new TextIndexDefinitionBuilder().named(name); indexDefinitionBuilder.withDefaultLanguage(root.getLanguage()); TextIndexDefinition indexDefinition = indexDefinitionBuilder.build();
/** * Include given fields with default weight. * * @param fieldnames * @return */ public TextIndexDefinitionBuilder onFields(String... fieldnames) { for (String fieldname : fieldnames) { onField(fieldname); } return this; }
/** * Include given field with default weight. * * @param fieldname * @return */ public TextIndexDefinitionBuilder onField(String fieldname) { return onField(fieldname, 1F); }
/** * Get {@link TextIndexDefinitionBuilder} to create {@link TextIndexDefinition}. * * @return */ public static TextIndexDefinitionBuilder builder() { return new TextIndexDefinitionBuilder(); }