package com.parse;

import com.parse.OfflineStore;
import com.parse.ParseObject;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import p137.C2739;
import p137.C2742;
import p137.InterfaceC2741;

/* JADX INFO: loaded from: classes.dex */
public class OfflineObjectStore<T extends ParseObject> implements ParseObjectStore<T> {
    public final String className;
    public final ParseObjectStore<T> legacy;
    public final String pinName;

    public OfflineObjectStore(Class<T> cls, String str, ParseObjectStore<T> parseObjectStore) {
        this.className = ParseCorePlugins.INSTANCE.getSubclassingController().getClassName(cls);
        this.pinName = str;
        this.legacy = parseObjectStore;
    }

    @Override // com.parse.ParseObjectStore
    public C2742<Void> deleteAsync() {
        final C2742<Void> c2742UnpinAllInBackground = ParseObject.unpinAllInBackground(this.pinName);
        return C2742.m4801((Collection<? extends C2742<?>>) Arrays.asList(this.legacy.deleteAsync(), c2742UnpinAllInBackground)).m4815(new InterfaceC2741<Void, C2742<Void>>(this) { // from class: com.parse.OfflineObjectStore.6
            @Override // p137.InterfaceC2741
            public C2742<Void> then(C2742<Void> c2742) {
                return c2742UnpinAllInBackground;
            }
        }, C2742.f8455, null);
    }

    @Override // com.parse.ParseObjectStore
    public C2742<T> getAsync() {
        ParseQuery parseQuery = new ParseQuery(this.className);
        parseQuery.fromPin(this.pinName);
        parseQuery.ignoreACLs();
        return parseQuery.findInBackground().m4817(new InterfaceC2741<List<T>, C2742<T>>() { // from class: com.parse.OfflineObjectStore.4
            @Override // p137.InterfaceC2741
            public Object then(C2742 c2742) {
                List list = (List) c2742.m4812();
                if (list == null) {
                    return C2742.m4805((Object) null);
                }
                if (list.size() == 1) {
                    return C2742.m4805(list.get(0));
                }
                C2742<Void> c2742UnpinAllInBackground = ParseObject.unpinAllInBackground(OfflineObjectStore.this.pinName);
                if (c2742UnpinAllInBackground != null) {
                    return c2742UnpinAllInBackground;
                }
                throw null;
            }
        }, C2742.f8455).m4817(new InterfaceC2741<T, C2742<T>>() { // from class: com.parse.OfflineObjectStore.3
            @Override // p137.InterfaceC2741
            public Object then(C2742 c2742) {
                if (((ParseObject) c2742.m4812()) == null) {
                    final OfflineObjectStore offlineObjectStore = OfflineObjectStore.this;
                    final ParseObjectStore<T> parseObjectStore = offlineObjectStore.legacy;
                    c2742 = parseObjectStore.getAsync().m4817(new InterfaceC2741<T, C2742<T>>() { // from class: com.parse.OfflineObjectStore.1
                        /* JADX WARN: Multi-variable type inference failed */
                        @Override // p137.InterfaceC2741
                        public Object then(C2742 c27422) {
                            final ParseObject parseObject = (ParseObject) c27422.m4812();
                            return parseObject == null ? c27422 : C2742.m4801((Collection<? extends C2742<?>>) Arrays.asList(parseObjectStore.deleteAsync(), offlineObjectStore.setAsync(parseObject))).m4809((InterfaceC2741<Void, TContinuationResult>) new InterfaceC2741<Void, T>(this) { // from class: com.parse.OfflineObjectStore.1.1
                                @Override // p137.InterfaceC2741
                                public Object then(C2742<Void> c27423) {
                                    return parseObject;
                                }
                            }, C2742.f8455, (C2739) null);
                        }
                    }, C2742.f8455);
                    if (c2742 == null) {
                        throw null;
                    }
                }
                return c2742;
            }
        }, C2742.f8455);
    }

    @Override // com.parse.ParseObjectStore
    public C2742<Void> setAsync(final T t) {
        return ParseObject.unpinAllInBackground(this.pinName).m4815(new InterfaceC2741<Void, C2742<Void>>() { // from class: com.parse.OfflineObjectStore.2
            @Override // p137.InterfaceC2741
            public C2742<Void> then(C2742<Void> c2742) {
                ParseObject parseObject = t;
                final String str = OfflineObjectStore.this.pinName;
                final boolean z = false;
                if (parseObject == null) {
                    throw null;
                }
                final List<ParseObject> listSingletonList = Collections.singletonList(parseObject);
                if (!Parse.isLocalDatastoreEnabled) {
                    throw new IllegalStateException("Method requires Local Datastore. Please refer to `Parse#enableLocalDatastore(Context)`.");
                }
                C2742 c2742M4805 = C2742.m4805((Object) null);
                for (final ParseObject parseObject2 : listSingletonList) {
                    c2742M4805 = c2742M4805.m4817(new InterfaceC2741<Void, C2742<Void>>() { // from class: com.parse.ParseObject.19
                        public AnonymousClass19() {
                        }

                        @Override // p137.InterfaceC2741
                        public C2742<Void> then(C2742<Void> c27422) {
                            ParseACL acl;
                            if (ParseObject.this.isDataAvailable("ACL") && (acl = ParseObject.this.getACL(false)) != null) {
                                ParseUser parseUser = acl.unresolvedUser;
                                return (parseUser == null || !parseUser.isCurrentUser()) ? C2742.m4805((Object) null) : ParseUser.pinCurrentUserIfNeededAsync(parseUser);
                            }
                            return C2742.m4805((Object) null);
                        }
                    }, C2742.f8455);
                }
                return c2742M4805.m4817(new InterfaceC2741<Void, C2742<Void>>() { // from class: com.parse.ParseObject.21
                    public final /* synthetic */ boolean val$includeAllChildren;
                    public final /* synthetic */ String val$name;
                    public final /* synthetic */ List val$objects;

                    public AnonymousClass21(final String str2, final List listSingletonList2, final boolean z2) {
                        str = str2;
                        list = listSingletonList2;
                        z = z2;
                    }

                    @Override // p137.InterfaceC2741
                    public C2742<Void> then(C2742<Void> c27422) {
                        final OfflineStore offlineStore = Parse.offlineStore;
                        final String str2 = str;
                        if (str2 == null) {
                            str2 = "_default";
                        }
                        final List list = list;
                        final boolean z2 = z;
                        if (offlineStore != null) {
                            return offlineStore.runWithManagedTransaction(new OfflineStore.SQLiteDatabaseCallable<C2742<Void>>() { // from class: com.parse.OfflineStore.37
                                @Override // com.parse.OfflineStore.SQLiteDatabaseCallable
                                public C2742<Void> call(final ParseSQLiteDatabase parseSQLiteDatabase) {
                                    final OfflineStore offlineStore2 = OfflineStore.this;
                                    String str3 = str2;
                                    final List list2 = list;
                                    final boolean z3 = z2;
                                    if (offlineStore2 != null) {
                                        return (list2 == null || list2.size() == 0) ? C2742.m4805((Object) null) : offlineStore2.getParsePin(str3, parseSQLiteDatabase).m4817(new InterfaceC2741<ParsePin, C2742<Void>>() { // from class: com.parse.OfflineStore.38
                                            @Override // p137.InterfaceC2741
                                            public C2742<Void> then(C2742<ParsePin> c27423) {
                                                ParsePin parsePinM4812 = c27423.m4812();
                                                List<ParseObject> objects = parsePinM4812.getObjects();
                                                if (objects == null) {
                                                    objects = new ArrayList<>(list2);
                                                } else {
                                                    for (ParseObject parseObject3 : list2) {
                                                        if (!objects.contains(parseObject3)) {
                                                            objects.add(parseObject3);
                                                        }
                                                    }
                                                }
                                                parsePinM4812.put("_objects", objects);
                                                return z3 ? OfflineStore.access$1300(OfflineStore.this, parsePinM4812, true, parseSQLiteDatabase) : OfflineStore.this.saveLocallyAsync(parsePinM4812, parsePinM4812.getObjects(), parseSQLiteDatabase);
                                            }
                                        }, C2742.f8455);
                                    }
                                    throw null;
                                }
                            });
                        }
                        throw null;
                    }
                }, C2742.f8455).m4817(new InterfaceC2741<Void, C2742<Void>>() { // from class: com.parse.ParseObject.20
                    public final /* synthetic */ String val$name;
                    public final /* synthetic */ List val$objects;

                    public AnonymousClass20(final String str2, final List listSingletonList2) {
                        str = str2;
                        list = listSingletonList2;
                    }

                    @Override // p137.InterfaceC2741
                    public C2742<Void> then(C2742<Void> c27422) {
                        if ("_currentUser".equals(str)) {
                            return c27422;
                        }
                        for (ParseObject parseObject3 : list) {
                            if (parseObject3 instanceof ParseUser) {
                                ParseUser parseUser = (ParseUser) parseObject3;
                                if (parseUser.isCurrentUser()) {
                                    return ParseUser.pinCurrentUserIfNeededAsync(parseUser);
                                }
                            }
                        }
                        return c27422;
                    }
                }, C2742.f8455);
            }
        }, C2742.f8455, null);
    }
}
