Skip to content

Commit f0288cd

Browse files
committed
add pipeline interface in cocoapods support
1 parent 681f6b3 commit f0288cd

File tree

7 files changed

+283
-234
lines changed

7 files changed

+283
-234
lines changed

Firestore/Example/Firestore.xcodeproj/project.pbxproj

Lines changed: 250 additions & 231 deletions
Large diffs are not rendered by default.

Firestore/Source/API/FIRFirestore+Internal.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,6 @@ NS_ASSUME_NONNULL_BEGIN
7979

8080
- (const std::shared_ptr<firebase::firestore::util::AsyncQueue> &)workerQueue;
8181

82-
@property(nonatomic, assign, readonly) std::shared_ptr<api::Firestore> wrapped;
83-
8482
@property(nonatomic, assign, readonly) const model::DatabaseId &databaseID;
8583
@property(nonatomic, strong, readonly) FSTUserDataReader *dataReader;
8684

Firestore/Source/Public/FirebaseFirestore/FIRFirestore.h

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
*/
1616

1717
#import <Foundation/Foundation.h>
18+
#import <memory>
1819

1920
#import "FIRListenerRegistration.h"
2021

@@ -30,6 +31,16 @@
3031
@class FIRWriteBatch;
3132
@class FIRPersistentCacheIndexManager;
3233

34+
namespace firebase {
35+
namespace firestore {
36+
namespace api {
37+
class Firestore;
38+
} // namespace api
39+
} // namespace firestore
40+
} // namespace firebase
41+
42+
namespace api = firebase::firestore::api;
43+
3344
NS_ASSUME_NONNULL_BEGIN
3445

3546
/**
@@ -91,6 +102,8 @@ NS_SWIFT_NAME(Firestore)
91102
*/
92103
+ (instancetype)firestoreForDatabase:(NSString *)database NS_SWIFT_NAME(firestore(database:));
93104

105+
@property(nonatomic, assign, readonly) std::shared_ptr<api::Firestore> wrapped;
106+
94107
/**
95108
* Custom settings used to configure this `Firestore` object.
96109
*/

Firestore/Swift/Source/AsyncAwait/Firestore+AsyncAwait.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,4 +115,8 @@ public extension Firestore {
115115
}
116116
}
117117
}
118+
119+
func pipeline() -> PipelineSource {
120+
return PipelineSource(firebase.firestore.api.FirestorePipeline.pipeline(wrapped))
121+
}
118122
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
//
2+
// PipelineSource.swift
3+
// Pods
4+
//
5+
// Created by Cheryl Lin on 2024-12-12.
6+
//
7+
8+
public class PipelineSource {
9+
let cppPtr: firebase.firestore.api.PipelineSource
10+
11+
public init(_ cppSource: firebase.firestore.api.PipelineSource) {
12+
cppPtr = cppSource
13+
}
14+
}

Firestore/core/swift/include/firestore_pipeline.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class Firestore;
1515

1616
class FirestorePipeline {
1717
public:
18-
PipelineSource pipeline(std::shared_ptr<Firestore> firestore);
18+
static PipelineSource pipeline(std::shared_ptr<Firestore> firestore);
1919
};
2020

2121
} // namespace api

Package.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1412,6 +1412,7 @@ func firebaseFirestoreCppTarget() -> Target {
14121412
"FirebaseAppCheckInterop",
14131413
"FirebaseCore",
14141414
"leveldb",
1415+
"FirebaseFirestoreInternalWrapper",
14151416
.product(name: "nanopb", package: "nanopb"),
14161417
],
14171418
path: "Firestore/core/swift",

0 commit comments

Comments
 (0)