MongoCollection
extension MongoCollection
-
コレクションに対して MongoDB 変更ストリーム を開き、変更を監視します。 結果のストリームには、構成された MongoDB ルールに基づいて参照する権限を持つこのコレクションのすべてのイベントが通知されます。
宣言
Swift
public func watch(delegate: ChangeEventDelegate, queue: DispatchQueue = .main) -> ChangeStream
パラメーター
delegate
結果として得られる変更ストリームからのイベントとエラーに対応するReact 。
queue
ストリーミング イベントをオプションのキューにディスパッチします。キューが提供されない場合は、メイン キューが使用されます。
戻り値
ストリーミング イベントを管理する ChangeStream 。
-
コレクションに対して MongoDB 変更ストリーム を開き、変更を監視します。 提供された BSON ドキュメントは、ストリームから取得される変更イベントのマッチ式フィルターとして使用されます。
https://mongodb.com/java-j/docs/manual/reference/operator/aggregation/match/を参照してください 一致フィルターの定義方法に関するドキュメントについては、 を参照してください。
ChangeEvents をフィルタリングするためのマッチ式の定義は、trigger のマッチ式を定義するのと同様です。 https://mongodb.com/java-j/docs/realm/triggers/database-triggers/
宣言
Swift
public func watch(matchFilter: Document, delegate: ChangeEventDelegate, queue: DispatchQueue = .main) -> ChangeStream
パラメーター
matchFilter
受信変更イベントに適用する $match フィルター
delegate
結果として得られる変更ストリームからのイベントとエラーに対応するReact 。
queue
ストリーミング イベントをオプションのキューにディスパッチします。キューが提供されない場合は、メイン キューが使用されます。
戻り値
ストリーミング イベントを管理する ChangeStream 。
-
コレクションに対して MongoDB 変更ストリーム を開き、特定のドキュメントに加えられた変更を監視します。 監視するドキュメントは、 _id によって明示的に指定される必要があります。
宣言
Swift
public func watch(filterIds: [ObjectId], delegate: ChangeEventDelegate, queue: DispatchQueue = .main) -> ChangeStream
パラメーター
filterIds
監視するコレクション内の _ids のリスト。
delegate
結果として得られる変更ストリームからのイベントとエラーに対応するReact 。
queue
ストリーミング イベントをオプションのキューにディスパッチします。キューが提供されない場合は、メイン キューが使用されます。
戻り値
ストリーミング イベントを管理する ChangeStream 。
-
指定された値を BSON にエンコードし、挿入します。 値に識別子がない場合、その値に対して識別子が生成されます。
宣言
Swift
public func insertOne(_ document: Document, _ completion: @escaping MongoInsertBlock)
パラメーター
document
挿入するドキュメント A
Document
値。completion
挿入を実行しようとした結果です。 成功時に挿入されたオブジェクトの ID が返されます
-
指定された値を BSON にエンコードし、挿入します。 識別子が欠落している値は生成されます。
宣言
Swift
public func insertMany(_ documents: [Document], _ completion: @escaping MongoInsertManyBlock)
パラメーター
documents
挿入するBSON配列内の
Document
値。completion
挿入の結果、 は、挿入された配列ドキュメント ID を順番に返します。
-
このコレクション内の指定されたフィルターに一致するドキュメントを検索します。
宣言
Swift
public func find(filter: Document, options: FindOptions, _ completion: @escaping MongoFindBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。options
FindOptions
コマンドを実行するときに使用します。completion
ドキュメントの結果としてのBSON配列やエラーが発生した場合は、
-
このコレクション内の指定されたフィルターに一致するドキュメントを検索します。
宣言
Swift
public func find(filter: Document, _ completion: @escaping MongoFindBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。completion
ドキュメントの結果としてのBSON配列やエラーが発生した場合は、
-
指定されたフィルターに一致するコレクションまたはビューから 1 つのドキュメントを返します。 クエリを満たすドキュメントが複数ある場合、このメソッドではクエリのソート順または自然な順序に従って最初のドキュメントが返されます。
宣言
Swift
public func findOneDocument(filter: Document, options: FindOptions, _ completion: @escaping MongoFindOneBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。options
FindOptions
コマンドを実行するときに使用します。completion
BSONまたは エラーが発生した場合
-
指定されたフィルターに一致するコレクションまたはビューから 1 つのドキュメントを返します。 クエリを満たすドキュメントが複数ある場合、このメソッドではクエリのソート順または自然な順序に従って最初のドキュメントが返されます。
宣言
Swift
public func findOneDocument(filter: Document, _ completion: @escaping MongoFindOneBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。completion
BSONまたは エラーが発生した場合
-
このコレクションに対して 集計フレームワーク パイプライン を実行します。
宣言
Swift
public func aggregate(pipeline: [Document], _ completion: @escaping MongoFindBlock)
パラメーター
pipeline
実行される集計操作のパイプラインを含む
Documents
で構成されるBSON配列。completion
ドキュメントの結果としてのBSON配列やエラーが発生した場合は、
-
指定されたフィルターに一致するこのコレクション内のドキュメントの数をカウントします。
宣言
Swift
public func count(filter: Document, limit: Int, _ completion: @escaping MongoCountBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。limit
カウントするドキュメントの最大量
completion
フィルターに一致したドキュメントの数を返します。
-
指定されたフィルターに一致するこのコレクション内のドキュメントの数をカウントします。
宣言
Swift
public func count(filter: Document, _ completion: @escaping MongoCountBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。completion
フィルターに一致したドキュメントの数を返します。
-
コレクションから一致するドキュメントを 1 つ削除します。
宣言
Swift
public func deleteOneDocument(filter: Document, _ completion: @escaping MongoCountBlock)
パラメーター
filter
クエリに一致する必要があるBSONとしての
Document
。completion
削除を実行した結果。 削除されたオブジェクトの数を返します
-
複数のドキュメントを削除します
宣言
Swift
public func deleteManyDocuments(filter: Document, _ completion: @escaping MongoCountBlock)
パラメーター
filter
一致条件を表すドキュメント
completion
削除を実行した結果。 削除のカウントを返します
-
このコレクション内の指定されたフィルターに一致する 1 つのドキュメントを更新します。
宣言
Swift
public func updateOneDocument(filter: Document, update: Document, upsert: Bool, _ completion: @escaping MongoUpdateBlock)
-
このコレクション内の指定されたフィルターに一致する 1 つのドキュメントを更新します。
宣言
Swift
public func updateOneDocument(filter: Document, update: Document, _ completion: @escaping MongoUpdateBlock)
-
このコレクション内の指定されたフィルターに一致する複数のドキュメントを更新します。
宣言
Swift
public func updateManyDocuments(filter: Document, update: Document, upsert: Bool, _ completion: @escaping MongoUpdateBlock)
-
このコレクション内の指定されたフィルターに一致する複数のドキュメントを更新します。
宣言
Swift
public func updateManyDocuments(filter: Document, update: Document, _ completion: @escaping MongoUpdateBlock)
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを更新し、更新前または更新後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、更新、返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。宣言
Swift
public func findOneAndUpdate(filter: Document, update: Document, options: FindOneAndModifyOptions, _ completion: @escaping MongoFindOneBlock)
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを更新し、更新前または更新後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、更新、返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。宣言
Swift
public func findOneAndUpdate(filter: Document, update: Document, _ completion: @escaping MongoFindOneBlock)
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを上書きし、置換前または置換後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、置換、および返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。宣言
Swift
public func findOneAndReplace(filter: Document, replacement: Document, options: FindOneAndModifyOptions, _ completion: @escaping MongoFindOneBlock)
パラメーター
filter
クエリに一致する必要がある
Document
。replacement
置換を説明する
Document
。options
FindOneAndModifyOptions
コマンドを実行するときに使用します。completion
ドキュメントを置き換えようとした試行の結果。
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを上書きし、置換前または置換後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、置換、および返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。宣言
Swift
public func findOneAndReplace(filter: Document, replacement: Document, _ completion: @escaping MongoFindOneBlock)
-
クエリフィルターに基づいてコレクションから 1 つのドキュメントを削除し、削除される 直前 のドキュメントと同じ形式のドキュメントを返します。
deleteOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索して削除できます。 これにより、検索操作と削除操作が個別に行われる間に他の更新操作でドキュメントが変更されるリスクを回避できます。宣言
Swift
public func findOneAndDelete(filter: Document, options: FindOneAndModifyOptions, _ completion: @escaping MongoFindOneBlock)
パラメーター
filter
クエリに一致する必要がある
Document
。options
FindOneAndModifyOptions
コマンドを実行するときに使用します。completion
ドキュメントを削除しようとした試行の結果。
-
クエリフィルターに基づいてコレクションから 1 つのドキュメントを削除し、削除される 直前 のドキュメントと同じ形式のドキュメントを返します。
deleteOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索して削除できます。 これにより、検索操作と削除操作が個別に行われる間に他の更新操作でドキュメントが変更されるリスクを回避できます。宣言
Swift
public func findOneAndDelete(filter: Document, _ completion: @escaping MongoFindOneBlock)
パラメーター
filter
クエリに一致する必要がある
Document
。completion
ドキュメントを削除しようとした試行の結果。
-
MongoDB コレクションが変更されるたびに任意の BSON 変更イベントを発行する発行者を作成します。
宣言
Swift
public func watch() -> Publishers.WatchPublisher
戻り値
コレクションが変更されるたびに任意の BSON 変更イベント を発行する発行者。
-
MongoDB コレクションが変更されるたびに任意の BSON 変更イベントを発行する発行者を作成します。
宣言
Swift
public func watch(filterIds: [ObjectId]) -> Publishers.WatchPublisher
パラメーター
filterIds
監視するコレクション内の _ids のリスト。
戻り値
コレクションが変更されるたびに任意の BSON 変更イベント を発行する発行者。
-
MongoDB コレクションが変更されるたびに任意の BSON 変更イベントを発行する発行者を作成します。
宣言
Swift
public func watch(matchFilter: Document) -> Publishers.WatchPublisher
パラメーター
matchFilter
受信変更イベントに適用する $match フィルター。
戻り値
コレクションが変更されるたびに任意の BSON 変更イベント を発行する発行者。
-
指定された値を BSON にエンコードし、挿入します。 値に識別子がない場合、その値に対して識別子が生成されます。 @ param ドキュメント: 挿入する
Document
値。 @returns 挿入されたドキュメントのオブジェクト ID またはError
を最終的に返す出版社。 -
指定された値を BSON にエンコードし、挿入します。 識別子が欠落している値は生成されます。 @ param ドキュメント: 挿入するBSON配列の
Document
値。 @returns 挿入されたドキュメントのオブジェクト ID またはError
を最終的に返す出版社。 -
このコレクション内の指定されたフィルターに一致するドキュメントを検索します。 @ param フィルター: クエリに一致する必要があるBSONとしての
Document
。 @ param オプション: コマンド実行時に使用するFindOptions
@returns は最終的に[ObjectId]
のドキュメントまたはError
を返す出版社を返します。宣言
Swift
func find(filter: Document, options: FindOptions) -> Future<[Document], Error>
-
このコレクション内の指定されたフィルターに一致するドキュメントを検索します。 @ param フィルター: クエリに一致する必要があるBSONとしての
Document
。 @returns は最終的に[ObjectId]
のドキュメントまたはError
を返す出版社を返します。 -
指定されたフィルターに一致するコレクションまたはビューから 1 つのドキュメントを返します。 クエリを満たすドキュメントが複数ある場合、このメソッドではクエリのソート順または自然な順序に従って最初のドキュメントが返されます。 @ param フィルター: クエリに一致する必要があるBSONとしての
Document
。 @ param オプション: コマンド実行時に使用するFindOptions
@returns は最終的にDocument
またはError
を返す出版社を返します。宣言
Swift
func findOneDocument(filter: Document, options: FindOptions) -> Future<Document?, Error>
-
このコレクションに対して 集計フレームワーク パイプライン を実行します。 @ param パイプライン: 実行する集計操作のパイプラインを含む
Documents
で構成されるBSON配列。 @returns は最終的にDocument
またはError
を返す出版社を返します。 -
複数のドキュメントを削除 @ param フィルター: 一致条件を表すドキュメント @returns 削除されたドキュメントの
Int
数、またはError
を最終的に返す出版社。宣言
Swift
func deleteManyDocuments(filter: Document) -> Future<Int, Error>
-
このコレクション内の指定されたフィルターに一致する 1 つのドキュメントを更新します。 @ param フィルター: 一致条件を表すBSON
Document
。 @ param update: 一致するドキュメントに適用するアップデートを表すBSONDocument
。 @ param アップサート: true の場合、クエリに一致するドキュメントがない場合は、新しいドキュメントを作成します。 @returns は最終的にUpdateResult
またはError
を返す出版社を返します。宣言
Swift
func updateOneDocument(filter: Document, update: Document, upsert: Bool) -> Future<UpdateResult, Error>
-
このコレクション内の指定されたフィルターに一致する 1 つのドキュメントを更新します。 @ param フィルター: 一致条件を表すBSON
Document
。 @ param update: 一致するドキュメントに適用するアップデートを表すBSONDocument
。 @returns は最終的にUpdateResult
またはError
を返す出版社を返します。宣言
Swift
func updateOneDocument(filter: Document, update: Document) -> Future<UpdateResult, Error>
-
このコレクション内の指定されたフィルターに一致する複数のドキュメントを更新します。 @ param フィルター: 一致条件を表すBSON
Document
。 @ param update: 一致するドキュメントに適用するアップデートを表すBSONDocument
。 @ param アップサート: true の場合、クエリに一致するドキュメントがない場合は、新しいドキュメントを作成します。 @returns は最終的にUpdateResult
またはError
を返す出版社を返します。宣言
Swift
func updateManyDocuments(filter: Document, update: Document, upsert: Bool) -> Future<UpdateResult, Error>
-
このコレクション内の指定されたフィルターに一致する複数のドキュメントを更新します。 @ param フィルター: 一致条件を表すBSON
Document
。 @ param update: 一致するドキュメントに適用するアップデートを表すBSONDocument
。 @returns は最終的にUpdateResult
またはError
を返す出版社を返します。宣言
Swift
func updateManyDocuments(filter: Document, update: Document) -> Future<UpdateResult, Error>
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを更新し、更新前または更新後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、更新、返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。 @ param フィルター: 一致条件を表すBSONDocument
。 @ param update: 一致するドキュメントに適用するアップデートを表すBSONDocument
。 @ param オプション: コマンド実行時に使用するRemoteFindOneAndModifyOptions
@ は、ドキュメントが見つからなかった場合、またはError
の場合は、最終的にDocument
またはnil
を返す出版社を返します。宣言
Swift
func findOneAndUpdate(filter: Document, update: Document, options: FindOneAndModifyOptions) -> Future<Document?, Error>
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを更新し、更新前または更新後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、更新、返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。 @ param フィルター: 一致条件を表すBSONDocument
。 @ param update: 一致するドキュメントに適用するアップデートを表すBSONDocument
。 @ は、ドキュメントが見つからなかった場合、またはError
の場合は、最終的にDocument
またはnil
を返す出版社を返します。 -
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを上書きし、置換前または置換後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、置換、および返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。 @ param フィルター: クエリに一致する必要があるDocument
。 @ param 置換: 置換を説明するDocument
。 @ param オプション: コマンド実行時に使用するFindOneAndModifyOptions
@ は、ドキュメントが見つからなかった場合、またはError
の場合は、最終的にDocument
またはnil
を返す出版社を返します。宣言
Swift
func findOneAndReplace(filter: Document, replacement: Document, options: FindOneAndModifyOptions) -> Future<Document?, Error>
-
クエリフィルターに基づいてコレクション内の 1 つのドキュメントを上書きし、置換前または置換後の形式でドキュメントを返します。
updateOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索、置換、および返すことができます。 これにより、検索操作と更新操作の間にある他の更新操作でドキュメントが変更されるリスクを回避できます。 @ param フィルター: クエリに一致する必要があるDocument
。 @ param 置換: 置換を説明するDocument
。 @ は、ドキュメントが見つからなかった場合、またはError
の場合は、最終的にDocument
またはnil
を返す出版社を返します。宣言
-
クエリフィルターに基づいてコレクションから 1 つのドキュメントを削除し、削除される 直前 のドキュメントと同じ形式のドキュメントを返します。
deleteOneDocument
とは異なり、このアクションでは同じコマンドでドキュメントをアトミックに検索して削除できます。 これにより、検索操作と削除操作が個別に行われる間に他の更新操作でドキュメントが変更されるリスクを回避できます。 @ param フィルター: クエリに一致する必要があるDocument
。 @ param オプション: コマンド実行時に使用するFindOneAndModifyOptions
@ は、ドキュメントが見つからなかった場合、またはError
の場合は、最終的にDocument
またはnil
を返す出版社を返します。宣言
Swift
func findOneAndDelete(filter: Document, options: FindOneAndModifyOptions) -> Future<Document?, Error>