A13u
A13u
CC#
Created by A13u on 8/8/2023 in #help
❔ How to close a listener firestore.
class FirestoreListener
{
private FirestoreDb db;
private FirestoreChangeListener listener;

public FirestoreListener(string projectId)
{
// Initialize FirestoreDb instance
Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS", "C:\\Users\\abuba\\source\\repos\\tryingAPI\\tryingAPI\\serviceAccountKey.json"); //google certificate
db = FirestoreDb.Create(projectId);
}

public void ListenToDocument(string collectionName, string documentId)
{
DocumentReference docRef = db.Collection(collectionName).Document(documentId);
listener = docRef.Listen(snapshot =>
{
Console.WriteLine("Callback received document snapshot.");
Console.WriteLine("Document exists? {0}", snapshot.Exists);
if (snapshot.Exists)
{
Console.WriteLine("Document data for {0} document:", snapshot.Id);
Dictionary<string, object> documentData = snapshot.ToDictionary();
foreach (KeyValuePair<string, object> pair in documentData)
{
Console.WriteLine("{0}: {1}", pair.Key, pair.Value);
}
}
});
listener.ListenerTask.Wait(); // Block until the listener is done
}

public void stopListener()
{
listener.ListenerTask.Dispose();
}
}
class FirestoreListener
{
private FirestoreDb db;
private FirestoreChangeListener listener;

public FirestoreListener(string projectId)
{
// Initialize FirestoreDb instance
Environment.SetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS", "C:\\Users\\abuba\\source\\repos\\tryingAPI\\tryingAPI\\serviceAccountKey.json"); //google certificate
db = FirestoreDb.Create(projectId);
}

public void ListenToDocument(string collectionName, string documentId)
{
DocumentReference docRef = db.Collection(collectionName).Document(documentId);
listener = docRef.Listen(snapshot =>
{
Console.WriteLine("Callback received document snapshot.");
Console.WriteLine("Document exists? {0}", snapshot.Exists);
if (snapshot.Exists)
{
Console.WriteLine("Document data for {0} document:", snapshot.Id);
Dictionary<string, object> documentData = snapshot.ToDictionary();
foreach (KeyValuePair<string, object> pair in documentData)
{
Console.WriteLine("{0}: {1}", pair.Key, pair.Value);
}
}
});
listener.ListenerTask.Wait(); // Block until the listener is done
}

public void stopListener()
{
listener.ListenerTask.Dispose();
}
}
Will this work ?
4 replies
CC#
Created by A13u on 8/8/2023 in #help
❔ How to close a listener firestore.
It's in a class and want to close the listener safely
4 replies