public override string Download(long userid) { var api_path = "https://api.twitter.com/1.1/users/show.json?user_id={0}&include_entities={1}"; string query = string.Format(api_path, userid, true); IMongoClient mclient = new MongoClient(); IMongoDatabase mdb = mclient.GetDatabase("twitter"); var collection = mdb.GetCollection<BsonDocument>("users"); try { _log.Info("Getting profile info for user:{0} ...", userid); var jsonObject = TwitterDownloader.ExecuteJsonGETQuery(query); var filter = Builders<BsonDocument>.Filter.Eq("id", userid); var option = new FindOneAndReplaceOptions<BsonDocument>(); option.IsUpsert = true; BsonDocument doc = BsonDocument.Parse(jsonObject); collection.FindOneAndReplaceAsync(filter, doc, option).Wait(); return doc["screen_name"].AsString; } catch (Exception ex) { string msg = "Error trying to download profile for user:{0}"; msg = string.Format(msg, userid); throw new Exception(msg, ex); } }
public TProjection FindOneAndReplace <TProjection>(IClientSessionHandle session, FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null, CancellationToken cancellationToken = default) { throw new NotImplementedException(); }
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { return(Task.FromResult(FindOneAndReplace(filter, replacement, options, cancellationToken))); }
/// <inheritdoc/> public Task <TProjection> FindOneAndReplaceAsync <TProjection>(IClientSessionHandle session, FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = default) { throw new System.NotImplementedException(); }
public static T FindOneAndReplace <T>(string collectionName, Expression <Func <T, bool> > filter, T document, FindOneAndReplaceOptions <BsonDocument> findOneAndReplaceOptions = null, string schemaId = "", Notification notification = null) { return(FindOneAndReplace(collectionName, new ExpressionFilterDefinition <T>(filter), document, findOneAndReplaceOptions, schemaId, notification)); }
public static T FindOneAndReplace <T>(string token, string collectionName, FilterDefinition <T> filter, T entity, FindOneAndReplaceOptions <T> findOneAndReplaceOptions = null, Notification notification = null) { if (findOneAndReplaceOptions == null) { findOneAndReplaceOptions = new FindOneAndReplaceOptions <T> { IsUpsert = true, ReturnDocument = ReturnDocument.After }; } var request = new FindOneAndReplace { CollectionName = collectionName, Filter = filter.ToJson(), FindOneAndReplaceOptions = findOneAndReplaceOptions.ToBson(), Document = entity.ToJson(), Notification = notification, OutputMode = JsonOutputMode.Strict, CultureCode = CultureInfo.CurrentCulture.Name }; var response = Send <FindOneAndReplaceResponse>("entities/" + collectionName + "/findOneAndReplace", request, "POST"); if (response != null && response.Result.Any()) { var documentAsEntity = BsonSerializer.Deserialize <T>(response.Result); return(documentAsEntity); } return(default(T)); }
public TDocument FindOneAndReplace <TDocument>(string tableName, FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TDocument> options = null) where TDocument : class { return(FindOneAndReplaceAsync <TDocument, TDocument>(tableName, filter, replacement, options).Result); }
public override TProjection FindOneAndReplace <TProjection>(FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { var documentToDelete = Filter(filter).FirstOrDefault(); if (documentToDelete == null) { return(default(TProjection)); } _documents.Remove(documentToDelete); var documentToAdd = SerializeDocument(replacement); _documents.Add(documentToAdd); var projectedDocument = Project(new[] { documentToDelete }, options?.Projection).Single(); return(projectedDocument); }
/// <summary> /// Used to asynchronously update a record in database. This replaces entire matched document. /// Consider using UpdateOneAsync instead. /// This method is a wrapper for IMongoCollection.FindOneAndReplaceAsync /// </summary> public async Task <TEntity> UpdateAsync(TEntity updatedEntity, Expression <Func <TEntity, bool> > filter, FindOneAndReplaceOptions <TEntity> options = null, CancellationToken cancellationToken = default(CancellationToken)) { TEntity oldEntity = await mongoCollection.FindOneAndReplaceAsync <TEntity>( filter, updatedEntity, options, cancellationToken ); return(oldEntity); }
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { return(collection.FindOneAndReplaceAsync(filter, replacement, options, cancellationToken)); }
public virtual Task <TProjection> FindOneAndReplaceAsync <TProjection>(IClientSessionHandle session, FilterDefinition <TVal> filter, TVal replacement, FindOneAndReplaceOptions <TVal, TProjection> options = null, CancellationToken cancellationToken = new CancellationToken()) => throw new NotImplementedException();
public virtual TProjection FindOneAndReplace <TProjection>(FilterDefinition <TVal> filter, TVal replacement, FindOneAndReplaceOptions <TVal, TProjection> options = null, CancellationToken cancellationToken = new CancellationToken()) => throw new NotImplementedException();
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <AnimatedImage> filter, AnimatedImage replacement, FindOneAndReplaceOptions <AnimatedImage, TProjection> options = null, CancellationToken cancellationToken = default) { throw new NotImplementedException(); }
public TProjection FindOneAndReplace <TProjection>(FilterDefinition <Vehicle> filter, Vehicle replacement, FindOneAndReplaceOptions <Vehicle, TProjection> options = null, CancellationToken cancellationToken = default) { throw new NotImplementedException(); }
public Task <T> FindOneAndReplaceAsync(string collectionName, Expression <Func <T, bool> > filter, T replacement, FindOneAndReplaceOptions <T> options = null, CancellationToken cancellationToken = default) { return(infrastructure.Exec(database => { return database.GetCollection <T>(collectionName).FindOneAndReplaceAsync(filter, replacement, options, cancellationToken); })); }
public Task <T> FindOneAndReplaceAsync(Expression <Func <T, bool> > filter, T replacement, FindOneAndReplaceOptions <T> options = null, CancellationToken cancellationToken = default) { return(FindOneAndReplaceAsync(collectionTypeName, filter, replacement, options, cancellationToken)); }
public async Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = new CancellationToken()) => await _semaphore.AddRequest(_base.FindOneAndReplaceAsync(filter, replacement, options, cancellationToken));
/// <inheritdoc/> public TProjection FindOneAndReplace <TProjection>(FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { return(_actualCollection.FindOneAndReplace(filter, replacement, options, cancellationToken)); }
public async Task <TProjection> FindOneAndReplaceAsync <TDocument, TProjection>(string tableName, FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null) where TDocument : class { IMongoCollection <TDocument> collection = db.GetCollection <TDocument>(tableName); return(await collection.FindOneAndReplaceAsync <TProjection>(filter, replacement, options)); }
/// <inheritdoc/> public Task <TProjection> FindOneAndReplaceAsync <TProjection>(IClientSessionHandle session, FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { return(_actualCollection.FindOneAndReplaceAsync(session, filter, replacement, options, cancellationToken)); }
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); }
public TProjection FindOneAndReplace <TProjection>(IClientSessionHandle session, FilterDefinition <TModel> filter, TModel replacement, FindOneAndReplaceOptions <TModel, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) => _collection.FindOneAndReplace(session, filter, replacement, options, cancellationToken);
public static T FindOneAndReplace <T>(string collectionName, FilterDefinition <T> filter, T document, FindOneAndReplaceOptions <BsonDocument> findOneAndReplaceOptions = null, string schemaId = "", Notification notification = null) { var request = new FindOneAndReplace { CollectionName = collectionName, OutputMode = JsonOutputMode.Strict, Filter = filter.ToJson(), Notification = notification, Document = document.ToBsonDocument().ToJson(), FindOneAndReplaceOptions = findOneAndReplaceOptions }; var response = Send <FindOneAndReplaceResponse>("entities/" + collectionName + "/findOneAndReplace", request, "POST"); if (response?.Result == null) { return(default(T)); } var documentAsEntity = BsonSerializer.Deserialize <T>(response.Result); return(documentAsEntity); }
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <TModel> filter, TModel replacement, FindOneAndReplaceOptions <TModel, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) => _collection.FindOneAndReplaceAsync(filter, replacement, options, cancellationToken);
/// <inheritdoc/> public TProjection FindOneAndReplace <TProjection>(FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = default) { throw new System.NotImplementedException(); }
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <InformationEntry> filter, InformationEntry replacement, FindOneAndReplaceOptions <InformationEntry, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken)) { throw new System.NotImplementedException(); }
public abstract TProjection FindOneAndReplace <TProjection>(FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null, CancellationToken cancellationToken = default(CancellationToken));
public Task <TProjection> FindOneAndReplaceAsync <TProjection>(FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null, CancellationToken cancellationToken = default) { throw new System.NotImplementedException(); }
public TProjection FindOneAndReplace <TProjection>(FilterDefinition <TDocument> filter, TDocument replacement, FindOneAndReplaceOptions <TDocument, TProjection> options = null, CancellationToken cancellationToken = default) => _collection.FindOneAndReplace(_getSession(), filter, replacement, options, cancellationToken);
public TProjection FindOneAndReplace <TProjection>(IClientSessionHandle session, FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T, TProjection> options = null, CancellationToken cancellationToken = new CancellationToken()) => _base.FindOneAndReplace(session, filter, replacement, options, cancellationToken);
public void FindOneAndReplaceAsync_with_an_expression_and_result_options_should_call_collection_with_the_correct_filter( [Values(false, true)] bool async) { var subject = CreateSubject(); var replacement = new Person(); var options = new FindOneAndReplaceOptions<Person, BsonDocument>(); if (async) { subject.FindOneAndReplaceAsync(x => x.FirstName == "Jack", replacement, options); subject.Received().FindOneAndReplaceAsync<BsonDocument>(Arg.Any<ExpressionFilterDefinition<Person>>(), replacement, options, default(CancellationToken)); } else { subject.FindOneAndReplace(x => x.FirstName == "Jack", replacement, options); subject.Received().FindOneAndReplace<BsonDocument>(Arg.Any<ExpressionFilterDefinition<Person>>(), replacement, options, default(CancellationToken)); } }
public Task <T> FindOneAndReplaceAsync(FilterDefinition <T> filter, T replacement, FindOneAndReplaceOptions <T> options = null, CancellationToken cancellationToken = default) { return(FindOneAndReplaceAsync(collectionTypeName, filter, replacement, options, cancellationToken)); }