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
1925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport com.android.contacts.ContactPhotoManager;
2025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
2125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.net.Uri;
2225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.widget.ImageView;
2325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
2425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann/**
2525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * A photo preloader that always uses the "no contact" picture and never executes any real
2625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * db queries
2725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann */
2825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannpublic class MockContactPhotoManager extends ContactPhotoManager {
2925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
303d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki    public void loadPhoto(ImageView view, long photoId, boolean hires, boolean darkTheme,
313d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki            DefaultImageProvider defaultProvider) {
323d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki        defaultProvider.applyDefaultImage(view, hires, darkTheme);
3325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
3425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
3525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
363d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki    public void loadPhoto(ImageView view, Uri photoUri, boolean hires, boolean darkTheme,
373d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki            DefaultImageProvider defaultProvider) {
383d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki        defaultProvider.applyDefaultImage(view, hires, darkTheme);
3925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
4025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
4125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
42f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa    public void removePhoto(ImageView view) {
43f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa        view.setImageDrawable(null);
44f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa    }
45f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa
46f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa    @Override
4725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void pause() {
4825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
4925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
5025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
5125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void resume() {
5225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
5325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
5425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
5525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void refreshCache() {
5625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
5725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann
5825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    @Override
5925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    public void preloadPhotosInBackground() {
6025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann    }
6125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann}
62