summaryrefslogtreecommitdiffstats
path: root/mobile/android/geckoview/src/main/java/org/mozilla/gecko/util/ActivityResultHandlerMap.java
blob: dc1d26cecd9db0e19042c08e8d1668ab6bf42890 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
 * You can obtain one at http://mozilla.org/MPL/2.0/. */

package org.mozilla.gecko.util;

import android.util.SparseArray;

public final class ActivityResultHandlerMap {
    private final SparseArray<ActivityResultHandler> mMap = new SparseArray<ActivityResultHandler>();
    private int mCounter;

    public synchronized int put(ActivityResultHandler handler) {
        mMap.put(mCounter, handler);
        return mCounter++;
    }

    public synchronized ActivityResultHandler getAndRemove(int i) {
        ActivityResultHandler handler = mMap.get(i);
        mMap.delete(i);

        return handler;
    }
}