package org.mongodb.morphia.query;

import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;

Defines $meta expression object
@mongodb.driver.manualreference/operator/aggregation/meta/ $meta
/** * Defines $meta expression object * @mongodb.driver.manual reference/operator/aggregation/meta/ $meta */
public class Meta { private static final String META = "$meta";
Representing specified metadata keyword
@mongodb.driver.manualreference/operator/aggregation/meta/#exp._S_meta $meta
/** * Representing specified metadata keyword * @mongodb.driver.manual reference/operator/aggregation/meta/#exp._S_meta $meta */
public enum MetaDataKeyword { textScore;
Returns:MetaDataKeyword name
/** * @return MetaDataKeyword name */
public String getName() { return textScore.name(); } } private MetaDataKeyword metaDataKeyword; private String field;
Specify the meta
Params:
  • metaDataKeyword – - metadata keyword to create
/** * Specify the meta * @param metaDataKeyword - metadata keyword to create */
public Meta(final MetaDataKeyword metaDataKeyword) { this.metaDataKeyword = metaDataKeyword; this.field = metaDataKeyword.getName(); }
Params:
  • metaDataKeyword – - metadata keyword to create
  • field – - metadata object field name
/** * @param metaDataKeyword - metadata keyword to create * @param field - metadata object field name */
public Meta(final MetaDataKeyword metaDataKeyword, final String field) { this.metaDataKeyword = metaDataKeyword; this.field = field; }
Returns:metadata object field name
/** * @return metadata object field name */
public String getField() { return field; }
factory method for textScore metaDataKeyword
Returns:instance of 'textScore' Meta
/** * factory method for textScore metaDataKeyword * @return instance of 'textScore' Meta */
public static Meta textScore() { return new Meta(MetaDataKeyword.textScore); }
Params:
  • field – - the field to project meta data
Returns: instance of 'textScore' Meta
/** * * @param field - the field to project meta data * @return instance of 'textScore' Meta */
public static Meta textScore(final String field) { return new Meta(MetaDataKeyword.textScore, field); } DBObject toDatabase() { BasicDBObject metaObject = new BasicDBObject(META, metaDataKeyword.getName()); return new BasicDBObject(field, metaObject); } }