package androidx.room; import androidx.annotation.VisibleForTesting; import androidx.lifecycle.LiveData; import java.util.Collections; import java.util.IdentityHashMap; import java.util.Set; import java.util.concurrent.Callable; public class InvalidationLiveDataContainer { private final RoomDatabase mDatabase; @VisibleForTesting public final Set mLiveDataSet = Collections.newSetFromMap(new IdentityHashMap()); public InvalidationLiveDataContainer(RoomDatabase roomDatabase) { this.mDatabase = roomDatabase; } public LiveData create(String[] strArr, boolean z2, Callable callable) { return new RoomTrackingLiveData(this.mDatabase, this, z2, callable, strArr); } public void onActive(LiveData liveData) { this.mLiveDataSet.add(liveData); } public void onInactive(LiveData liveData) { this.mLiveDataSet.remove(liveData); } }