125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann/*
225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * Copyright (C) 2011 The Android Open Source Project
325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann *
425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * Licensed under the Apache License, Version 2.0 (the "License");
525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * you may not use this file except in compliance with the License.
625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * You may obtain a copy of the License at
725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann *
825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann *      http://www.apache.org/licenses/LICENSE-2.0
925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann *
1025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * Unless required by applicable law or agreed to in writing, software
1125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * distributed under the License is distributed on an "AS IS" BASIS,
1225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * See the License for the specific language governing permissions and
1425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * limitations under the License.
1525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann */
1625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
1725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannpackage com.android.contacts.tests.mocks;
1825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
1914d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoroimport android.graphics.Bitmap;
2025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.net.Uri;
2125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.widget.ImageView;
2225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
2379a6b5d3a885bc508b4b98c92a946fe12643c444Chiao Chengimport com.android.contacts.common.ContactPhotoManager;
24e0b2f1e2d01d1ac52ba207dc7ce76971d853298eChiao Cheng
2525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann/**
2625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * A photo preloader that always uses the "no contact" picture and never executes any real
2725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * db queries
2825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann */
2925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannpublic class MockContactPhotoManager extends ContactPhotoManager {
3025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
312f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann    public void loadThumbnail(ImageView view, long photoId, boolean darkTheme,
323d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki            DefaultImageProvider defaultProvider) {
332f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann        defaultProvider.applyDefaultImage(view, -1, darkTheme);
3425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
3525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
3625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
372f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann    public void loadPhoto(ImageView view, Uri photoUri, int requestedExtent, boolean darkTheme,
383d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki            DefaultImageProvider defaultProvider) {
392f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann        defaultProvider.applyDefaultImage(view, requestedExtent, darkTheme);
4025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
4125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
4225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
43f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa    public void removePhoto(ImageView view) {
44f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa        view.setImageDrawable(null);
45f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa    }
46f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa
47f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa    @Override
4825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void pause() {
4925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
5025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
5125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
5225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void resume() {
5325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
5425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
5525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
5625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void refreshCache() {
5725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
5825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
5925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
6014d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro    public void cacheBitmap(Uri photoUri, Bitmap bitmap, byte[] photoBytes) {
6114d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro    }
6214d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro
6314d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro    @Override
6425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void preloadPhotosInBackground() {
6525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
6625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann}
67