summaryrefslogtreecommitdiff
path: root/FireBase/Offline/SetHandler.cs
blob: 18a5131b08bf83519ac7a6a853565ea7af7b6257 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
namespace Firebase.Database.Offline
{
    using Query;
    using System.Threading.Tasks;

    public class SetHandler<T> : ISetHandler<T>
    {
        public virtual async Task SetAsync(ChildQuery query, string key, OfflineEntry entry)
        {
            using (var child = query.Child(key))
            {
                if (entry.SyncOptions == SyncOptions.Put)
                    await child.PutAsync(entry.Data);
                else
                    await child.PatchAsync(entry.Data);
            }
        }
    }
}