Skip to content

Commit c547b03

Browse files
committed
CSHARP-5193: Remove LINQ2 provider.
1 parent a34499f commit c547b03

File tree

384 files changed

+4553
-35820
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

384 files changed

+4553
-35820
lines changed

src/MongoDB.Driver.GridFS/GridFSBucket.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -627,8 +627,7 @@ private FindOperation<GridFSFileInfo<TFileId>> CreateFindOperation(FilterDefinit
627627
{
628628
var filesCollectionNamespace = this.GetFilesCollectionNamespace();
629629
var messageEncoderSettings = this.GetMessageEncoderSettings();
630-
var linqProvider = _database.Client.Settings.LinqProvider;
631-
var args = new RenderArgs<GridFSFileInfo<TFileId>>(_fileInfoSerializer, _options.SerializerRegistry, linqProvider);
630+
var args = new RenderArgs<GridFSFileInfo<TFileId>>(_fileInfoSerializer, _options.SerializerRegistry);
632631
var renderedFilter = filter.Render(args);
633632
var renderedSort = options.Sort == null ? null : options.Sort.Render(args);
634633

src/MongoDB.Driver.GridFS/GridFSBucketCompat.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -240,17 +240,15 @@ private IEnumerable<GridFSFileInfo> TransformFileInfos(IEnumerable<GridFSFileInf
240240

241241
private FilterDefinition<GridFSFileInfo<ObjectId>> WrapFilter(FilterDefinition<GridFSFileInfo> filter)
242242
{
243-
var linqProvider = Database.Client.Settings.LinqProvider;
244-
var renderedFilter = filter.Render(new(GridFSFileInfoSerializer.Instance, BsonSerializer.SerializerRegistry, linqProvider));
243+
var renderedFilter = filter.Render(new(GridFSFileInfoSerializer.Instance, BsonSerializer.SerializerRegistry));
245244
return new BsonDocumentFilterDefinition<GridFSFileInfo<ObjectId>>(renderedFilter);
246245
}
247246

248247
private GridFSFindOptions<ObjectId> WrapFindOptions(GridFSFindOptions options)
249248
{
250249
if (options != null)
251250
{
252-
var linqProvider = Database.Client.Settings.LinqProvider;
253-
var renderedSort = options.Sort == null ? null : options.Sort.Render(new(GridFSFileInfoSerializer.Instance, BsonSerializer.SerializerRegistry, linqProvider));
251+
var renderedSort = options.Sort == null ? null : options.Sort.Render(new(GridFSFileInfoSerializer.Instance, BsonSerializer.SerializerRegistry));
254252
var wrappedSort = renderedSort == null ? null : new BsonDocumentSortDefinition<GridFSFileInfo<ObjectId>>(renderedSort);
255253
return new GridFSFindOptions<ObjectId>
256254
{

src/MongoDB.Driver/AggregateExpressionDefinition.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -73,12 +73,11 @@ public static implicit operator AggregateExpressionDefinition<TSource, TResult>(
7373
/// </summary>
7474
/// <param name="sourceSerializer">The source serializer.</param>
7575
/// <param name="serializerRegistry">The serializer registry.</param>
76-
/// <param name="linqProvider">The LINQ provider.</param>
7776
/// <returns>The rendered aggregation expression.</returns>
7877
[Obsolete("Use Render(RenderArgs<TSource> args) overload instead.")]
79-
public virtual BsonValue Render(IBsonSerializer<TSource> sourceSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
78+
public virtual BsonValue Render(IBsonSerializer<TSource> sourceSerializer, IBsonSerializerRegistry serializerRegistry)
8079
{
81-
return Render(new(sourceSerializer, serializerRegistry, linqProvider));
80+
return Render(new(sourceSerializer, serializerRegistry));
8281
}
8382

8483
/// <summary>
@@ -157,7 +156,7 @@ internal ExpressionAggregateExpressionDefinition(
157156
public override BsonValue Render(RenderArgs<TSource> args)
158157
{
159158
var contextData = _contextData?.With("SerializerRegistry", args.SerializerRegistry);
160-
return args.LinqProvider.GetAdapter().TranslateExpressionToAggregateExpression(_expression, args.DocumentSerializer, args.SerializerRegistry, _translationOptions, contextData);
159+
return LinqProviderAdapter.TranslateExpressionToAggregateExpression(_expression, args.DocumentSerializer, args.SerializerRegistry, _translationOptions, contextData);
161160
}
162161
}
163162

src/MongoDB.Driver/AggregateFacet.cs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,12 +77,11 @@ protected AggregateFacet(string name)
7777
/// </summary>
7878
/// <param name="inputSerializer">The input serializer.</param>
7979
/// <param name="serializerRegistry">The serializer registry.</param>
80-
/// <param name="linqProvider">The LINQ provider.</param>
8180
/// <returns>The rendered pipeline.</returns>
8281
[Obsolete("Use Render(RenderArgs<TInput> args) overload instead.")]
83-
public virtual BsonArray RenderPipeline(IBsonSerializer<TInput> inputSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
82+
public virtual BsonArray RenderPipeline(IBsonSerializer<TInput> inputSerializer, IBsonSerializerRegistry serializerRegistry)
8483
{
85-
return RenderPipeline(new(inputSerializer, serializerRegistry, linqProvider));
84+
return RenderPipeline(new(inputSerializer, serializerRegistry));
8685
}
8786

8887
/// <summary>

src/MongoDB.Driver/AggregateFluent.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -390,8 +390,7 @@ public override IAggregateFluent<TResult> VectorSearch(
390390

391391
public override string ToString()
392392
{
393-
var linqProvider = Database.Client.Settings.LinqProvider;
394-
return $"aggregate({_pipeline.ToString(linqProvider)})";
393+
return $"aggregate({_pipeline.ToString()})";
395394
}
396395

397396
protected abstract IAggregateFluent<TNewResult> WithPipeline<TNewResult>(PipelineDefinition<TInput, TNewResult> pipeline);

src/MongoDB.Driver/ArrayFilterDefinition.cs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,10 @@
1313
* limitations under the License.
1414
*/
1515

16+
using System;
1617
using MongoDB.Bson;
1718
using MongoDB.Bson.Serialization;
1819
using MongoDB.Driver.Core.Misc;
19-
using MongoDB.Driver.Linq;
20-
using System;
2120

2221
namespace MongoDB.Driver
2322
{
@@ -41,11 +40,10 @@ public abstract class ArrayFilterDefinition
4140
/// </summary>
4241
/// <param name="itemSerializer">The item serializer.</param>
4342
/// <param name="serializerRegistry">The serializer registry.</param>
44-
/// <param name="linqProvider">The LINQ provider.</param>
4543
/// <returns>
4644
/// A <see cref="BsonDocument" />.
4745
/// </returns>
48-
public abstract BsonDocument Render(IBsonSerializer itemSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider);
46+
public abstract BsonDocument Render(IBsonSerializer itemSerializer, IBsonSerializerRegistry serializerRegistry);
4947
}
5048

5149
/// <summary>
@@ -99,11 +97,10 @@ public static implicit operator ArrayFilterDefinition<TItem>(string json)
9997
/// </summary>
10098
/// <param name="itemSerializer">The item serializer.</param>
10199
/// <param name="serializerRegistry">The serializer registry.</param>
102-
/// <param name="linqProvider">The LINQ provider.</param>
103100
/// <returns>
104101
/// A <see cref="BsonDocument" />.
105102
/// </returns>
106-
public abstract BsonDocument Render(IBsonSerializer<TItem> itemSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider);
103+
public abstract BsonDocument Render(IBsonSerializer<TItem> itemSerializer, IBsonSerializerRegistry serializerRegistry);
107104
}
108105

109106
/// <summary>
@@ -136,13 +133,13 @@ public BsonDocumentArrayFilterDefinition(BsonDocument document)
136133

137134
// public methods
138135
/// <inheritdoc />
139-
public override BsonDocument Render(IBsonSerializer itemSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
136+
public override BsonDocument Render(IBsonSerializer itemSerializer, IBsonSerializerRegistry serializerRegistry)
140137
{
141-
return Render((IBsonSerializer<TItem>)itemSerializer, serializerRegistry, linqProvider);
138+
return Render((IBsonSerializer<TItem>)itemSerializer, serializerRegistry);
142139
}
143140

144141
/// <inheritdoc />
145-
public override BsonDocument Render(IBsonSerializer<TItem> itemSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
142+
public override BsonDocument Render(IBsonSerializer<TItem> itemSerializer, IBsonSerializerRegistry serializerRegistry)
146143
{
147144
return _document;
148145
}
@@ -188,13 +185,13 @@ public JsonArrayFilterDefinition(string json)
188185

189186
// public methods
190187
/// <inheritdoc />
191-
public override BsonDocument Render(IBsonSerializer itemSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
188+
public override BsonDocument Render(IBsonSerializer itemSerializer, IBsonSerializerRegistry serializerRegistry)
192189
{
193-
return Render((IBsonSerializer<TItem>)itemSerializer, serializerRegistry, linqProvider);
190+
return Render((IBsonSerializer<TItem>)itemSerializer, serializerRegistry);
194191
}
195192

196193
/// <inheritdoc />
197-
public override BsonDocument Render(IBsonSerializer<TItem> itemSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
194+
public override BsonDocument Render(IBsonSerializer<TItem> itemSerializer, IBsonSerializerRegistry serializerRegistry)
198195
{
199196
return _document;
200197
}

src/MongoDB.Driver/ChangeStreamHelper.cs

Lines changed: 5 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -32,18 +32,7 @@ public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult
3232
MessageEncoderSettings messageEncoderSettings,
3333
bool retryRequested)
3434
{
35-
return CreateChangeStreamOperation(pipeline, LinqProvider.V3, options, readConcern, messageEncoderSettings, retryRequested);
36-
}
37-
38-
public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult>(
39-
PipelineDefinition<ChangeStreamDocument<BsonDocument>, TResult> pipeline,
40-
LinqProvider linqProvider,
41-
ChangeStreamOptions options,
42-
ReadConcern readConcern,
43-
MessageEncoderSettings messageEncoderSettings,
44-
bool retryRequested)
45-
{
46-
var renderedPipeline = RenderPipeline(pipeline, BsonDocumentSerializer.Instance, linqProvider);
35+
var renderedPipeline = RenderPipeline(pipeline, BsonDocumentSerializer.Instance);
4736

4837
var operation = new ChangeStreamOperation<TResult>(
4938
renderedPipeline.Documents,
@@ -65,19 +54,7 @@ public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult
6554
MessageEncoderSettings messageEncoderSettings,
6655
bool retryRequested)
6756
{
68-
return CreateChangeStreamOperation(database, pipeline, LinqProvider.V3, options, readConcern, messageEncoderSettings, retryRequested);
69-
}
70-
71-
public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult>(
72-
IMongoDatabase database,
73-
PipelineDefinition<ChangeStreamDocument<BsonDocument>, TResult> pipeline,
74-
LinqProvider linqProvider,
75-
ChangeStreamOptions options,
76-
ReadConcern readConcern,
77-
MessageEncoderSettings messageEncoderSettings,
78-
bool retryRequested)
79-
{
80-
var renderedPipeline = RenderPipeline(pipeline, BsonDocumentSerializer.Instance, linqProvider);
57+
var renderedPipeline = RenderPipeline(pipeline, BsonDocumentSerializer.Instance);
8158

8259
var operation = new ChangeStreamOperation<TResult>(
8360
database.DatabaseNamespace,
@@ -101,20 +78,7 @@ public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult
10178
MessageEncoderSettings messageEncoderSettings,
10279
bool retryRequested)
10380
{
104-
return CreateChangeStreamOperation(collection, pipeline, documentSerializer, LinqProvider.V3, options, readConcern, messageEncoderSettings, retryRequested);
105-
}
106-
107-
public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult, TDocument>(
108-
IMongoCollection<TDocument> collection,
109-
PipelineDefinition<ChangeStreamDocument<TDocument>, TResult> pipeline,
110-
IBsonSerializer<TDocument> documentSerializer,
111-
LinqProvider linqProvider,
112-
ChangeStreamOptions options,
113-
ReadConcern readConcern,
114-
MessageEncoderSettings messageEncoderSettings,
115-
bool retryRequested)
116-
{
117-
var renderedPipeline = RenderPipeline(pipeline, documentSerializer, linqProvider);
81+
var renderedPipeline = RenderPipeline(pipeline, documentSerializer);
11882

11983
var operation = new ChangeStreamOperation<TResult>(
12084
collection.CollectionNamespace,
@@ -132,12 +96,11 @@ public static ChangeStreamOperation<TResult> CreateChangeStreamOperation<TResult
13296
// private static methods
13397
private static RenderedPipelineDefinition<TResult> RenderPipeline<TResult, TDocument>(
13498
PipelineDefinition<ChangeStreamDocument<TDocument>, TResult> pipeline,
135-
IBsonSerializer<TDocument> documentSerializer,
136-
LinqProvider linqProvider)
99+
IBsonSerializer<TDocument> documentSerializer)
137100
{
138101
var changeStreamDocumentSerializer = new ChangeStreamDocumentSerializer<TDocument>(documentSerializer);
139102
var serializerRegistry = BsonSerializer.SerializerRegistry;
140-
return pipeline.Render(new(changeStreamDocumentSerializer, serializerRegistry, linqProvider));
103+
return pipeline.Render(new(changeStreamDocumentSerializer, serializerRegistry));
141104
}
142105

143106
private static void SetOperationOptions<TResult>(

src/MongoDB.Driver/FieldDefinition.cs

Lines changed: 7 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -141,23 +141,10 @@ public abstract class FieldDefinition<TDocument>
141141
/// <param name="documentSerializer">The document serializer.</param>
142142
/// <param name="serializerRegistry">The serializer registry.</param>
143143
/// <returns>A <see cref="RenderedFieldDefinition"/>.</returns>
144-
[Obsolete("Use Render(RenderArgs<TSource> args) overload instead.")]
145-
public virtual RenderedFieldDefinition Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry)
146-
{
147-
return Render(new(documentSerializer, serializerRegistry, LinqProvider.V3));
148-
}
149-
150-
/// <summary>
151-
/// Renders the field to a <see cref="RenderedFieldDefinition"/>.
152-
/// </summary>
153-
/// <param name="documentSerializer">The document serializer.</param>
154-
/// <param name="serializerRegistry">The serializer registry.</param>
155-
/// <param name="linqProvider">The LINQ provider.</param>
156-
/// <returns>A <see cref="RenderedFieldDefinition"/>.</returns>
157144
[Obsolete("Use Render(RenderArgs<TDocument> args) overload instead.")]
158-
public virtual RenderedFieldDefinition Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
145+
public virtual RenderedFieldDefinition Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry)
159146
{
160-
return Render(new(documentSerializer, serializerRegistry, LinqProvider.V3));
147+
return Render(new(documentSerializer, serializerRegistry));
161148
}
162149

163150
/// <summary>
@@ -192,18 +179,6 @@ public static implicit operator FieldDefinition<TDocument>(string fieldName)
192179
/// <typeparam name="TField">The type of the field.</typeparam>
193180
public abstract class FieldDefinition<TDocument, TField>
194181
{
195-
/// <summary>
196-
/// Renders the field to a <see cref="RenderedFieldDefinition{TField}"/>.
197-
/// </summary>
198-
/// <param name="documentSerializer">The document serializer.</param>
199-
/// <param name="serializerRegistry">The serializer registry.</param>
200-
/// <returns>A <see cref="RenderedFieldDefinition{TField}"/>.</returns>
201-
[Obsolete("Use Render(RenderArgs<TDocument> args) overload instead.")]
202-
public virtual RenderedFieldDefinition<TField> Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry)
203-
{
204-
return Render(new(documentSerializer, serializerRegistry, LinqProvider.V3));
205-
}
206-
207182
/// <summary>
208183
/// Renders the field to a <see cref="RenderedFieldDefinition{TField}"/>.
209184
/// </summary>
@@ -217,38 +192,19 @@ public virtual RenderedFieldDefinition<TField> Render(
217192
IBsonSerializerRegistry serializerRegistry,
218193
bool allowScalarValueForArrayField)
219194
{
220-
return Render(new (documentSerializer, serializerRegistry, LinqProvider.V3, new PathRenderArgs(null, allowScalarValueForArrayField)));
195+
return Render(new(documentSerializer, serializerRegistry)); // ignore allowScalarValueForArrayField if not overridden by subclass
221196
}
222197

223198
/// <summary>
224199
/// Renders the field to a <see cref="RenderedFieldDefinition{TField}"/>.
225200
/// </summary>
226201
/// <param name="documentSerializer">The document serializer.</param>
227202
/// <param name="serializerRegistry">The serializer registry.</param>
228-
/// <param name="linqProvider">The LINQ provider.</param>
229-
/// <param name="allowScalarValueForArrayField">Whether a scalar value is allowed for an array field.</param>
230203
/// <returns>A <see cref="RenderedFieldDefinition{TField}"/>.</returns>
231204
[Obsolete("Use Render(RenderArgs<TDocument> args) overload instead.")]
232-
public virtual RenderedFieldDefinition<TField> Render(
233-
IBsonSerializer<TDocument> documentSerializer,
234-
IBsonSerializerRegistry serializerRegistry,
235-
LinqProvider linqProvider,
236-
bool allowScalarValueForArrayField)
237-
{
238-
return Render(new(documentSerializer, serializerRegistry, linqProvider)); // ignore allowScalarValueForArrayField if not overridden by subclass
239-
}
240-
241-
/// <summary>
242-
/// Renders the field to a <see cref="RenderedFieldDefinition{TField}"/>.
243-
/// </summary>
244-
/// <param name="documentSerializer">The document serializer.</param>
245-
/// <param name="serializerRegistry">The serializer registry.</param>
246-
/// <param name="linqProvider">The LINQ provider.</param>
247-
/// <returns>A <see cref="RenderedFieldDefinition{TField}"/>.</returns>
248-
[Obsolete("Use Render(RenderArgs<TDocument> args) overload instead.")]
249-
public virtual RenderedFieldDefinition<TField> Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry, LinqProvider linqProvider)
205+
public virtual RenderedFieldDefinition<TField> Render(IBsonSerializer<TDocument> documentSerializer, IBsonSerializerRegistry serializerRegistry)
250206
{
251-
return Render(new(documentSerializer, serializerRegistry, linqProvider));
207+
return Render(new(documentSerializer, serializerRegistry));
252208
}
253209

254210
/// <summary>
@@ -326,7 +282,7 @@ public LambdaExpression Expression
326282
/// <inheritdoc />
327283
public override RenderedFieldDefinition Render(RenderArgs<TDocument> args)
328284
{
329-
return args.LinqProvider.GetAdapter().TranslateExpressionToField(_expression, args.DocumentSerializer, args.SerializerRegistry);
285+
return LinqProviderAdapter.TranslateExpressionToField(_expression, args.DocumentSerializer, args.SerializerRegistry);
330286
}
331287
}
332288

@@ -359,8 +315,7 @@ public Expression<Func<TDocument, TField>> Expression
359315
/// <inheritdoc />
360316
public override RenderedFieldDefinition<TField> Render(RenderArgs<TDocument> args)
361317
{
362-
var linqAdapter = args.LinqProvider.GetAdapter();
363-
return linqAdapter.TranslateExpressionToField(_expression, args.DocumentSerializer, args.SerializerRegistry, args.PathRenderArgs.AllowScalarValueForArray);
318+
return LinqProviderAdapter.TranslateExpressionToField(_expression, args.DocumentSerializer, args.SerializerRegistry, args.PathRenderArgs.AllowScalarValueForArray);
364319
}
365320
}
366321

0 commit comments

Comments
 (0)