docs: @Override
      public DBObject getUpdateClause() {
          if (clear) {
              // If clear() was called, updates will either be an empty BasicDBList or items added
              return new BasicDBObject($set.name(), new BasicDBObject(getNameFromPrefix(), updates));
          } else {
              if (operation == null) {
                  return new BasicDBObject();     // If there are no updates, return an empty DBObject
              } else if (operation == UpdateOperation.$set) {
                  return new BasicDBObject(operation.name(), updates);
              } else {
                  return new BasicDBObject(operation.name(), new BasicDBObject(getNameFromPrefix(), updates));
              }
          }
      }