/**
  * Removes all the objects that match the a given optional query. If query is not specified, all
  * objects are removed. However, please notice that this is normally less performant that dropping
  * the collection and creating it and its indices again
  *
  * <p>{@sample.xml ../../../doc/mongo-connector.xml.sample mongo:remove-using-query-map}
  *
  * @param collection the collection whose elements will be removed
  * @param queryAttributes the query object. Objects that match it will be removed.
  * @param writeConcern the write concern used to remove the object
  */
 @Processor
 public void removeUsingQueryMap(
     String collection,
     @Placement(group = "Query Attributes") Map<String, Object> queryAttributes,
     @Optional @Default(WRITE_CONCERN_DEFAULT_VALUE) WriteConcern writeConcern) {
   client.removeObjects(collection, (DBObject) adapt(queryAttributes), writeConcern);
 }
 /**
  * Removes all the objects that match the a given optional query. If query is not specified, all
  * objects are removed. However, please notice that this is normally less performant that dropping
  * the collection and creating it and its indices again
  *
  * <p>{@sample.xml ../../../doc/mongo-connector.xml.sample mongo:remove-objects}
  *
  * @param collection the collection whose elements will be removed
  * @param query the optional {@link DBObject} query object. Objects that match it will be removed.
  * @param writeConcern the write concern used to remove the object
  */
 @Processor
 public void removeObjects(
     String collection,
     @Optional @Default("#[payload]") DBObject query,
     @Optional @Default(WRITE_CONCERN_DEFAULT_VALUE) WriteConcern writeConcern) {
   client.removeObjects(collection, query, writeConcern);
 }