107ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor/*
207ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * Copyright (C) 2012 The Android Open Source Project
307ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor *
407ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * Licensed under the Apache License, Version 2.0 (the "License");
507ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * you may not use this file except in compliance with the License.
607ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * You may obtain a copy of the License at
707ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor *
807ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor *      http://www.apache.org/licenses/LICENSE-2.0
907ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor *
1007ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * Unless required by applicable law or agreed to in writing, software
1107ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * distributed under the License is distributed on an "AS IS" BASIS,
1207ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1307ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * See the License for the specific language governing permissions and
1407ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor * limitations under the License.
1507ddb5c577a10e5aa3b4442426a055f3b95d5202Tom Taylor */
1651e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor
1751e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylorpackage com.android.mms.util;
1851e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor
199c9df2773645d195dbf17df91d7cccdf5154fe84Tom Taylorimport android.net.Uri;
209c9df2773645d195dbf17df91d7cccdf5154fe84Tom Taylor
2151e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor/**
2251e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor * Interface for querying the state of a pending item loading request.
2351e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor *
2451e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor */
2551e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylorpublic interface ItemLoadedFuture {
2651e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor    /**
2751e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor     * Returns whether the associated task has invoked its callback. Note that
2851e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor     * in some implementations this value only indicates whether the load
2951e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor     * request was satisfied synchronously via a cache rather than
3051e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor     * asynchronously.
3151e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor     */
3251e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor    boolean isDone();
3351e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor
349c9df2773645d195dbf17df91d7cccdf5154fe84Tom Taylor    void setIsDone(boolean done);
359c9df2773645d195dbf17df91d7cccdf5154fe84Tom Taylor
369c9df2773645d195dbf17df91d7cccdf5154fe84Tom Taylor    void cancel(Uri uri);
3751e4621fa12400b1e79cc18b7bb0f9a83af6b622Tom Taylor}
38