1d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williamspackage com.xtremelabs.robolectric.shadows;
2d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams
3d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williamsimport android.content.ContentResolver;
4d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williamsimport android.graphics.Bitmap;
5d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williamsimport android.net.Uri;
6d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williamsimport android.provider.MediaStore;
72ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richardimport com.xtremelabs.robolectric.Robolectric;
8f64d95f87eb9715622e3f77eb0b369d60270054cChristian Williams & Phil Goodwinimport com.xtremelabs.robolectric.internal.Implementation;
9f64d95f87eb9715622e3f77eb0b369d60270054cChristian Williams & Phil Goodwinimport com.xtremelabs.robolectric.internal.Implements;
10d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams
11d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams@SuppressWarnings({"UnusedDeclaration"})
12d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams@Implements(MediaStore.class)
13d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williamspublic class ShadowMediaStore {
142ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
15d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams    @Implements(MediaStore.Images.class)
16d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams    public static class ShadowImages {
17d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams        @Implements(MediaStore.Images.Media.class)
18d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams        public static class ShadowMedia {
19d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams            @Implementation
20d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams            public static Bitmap getBitmap(ContentResolver cr, Uri url) {
2122ae0c422c4f1bb6878f624fbf2531eea4da0187Christian Williams & Phil Goodwin                return ShadowBitmapFactory.create(url.toString());
22d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams            }
23d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams        }
24d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams    }
252ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
262ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    public static void reset() {
272ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        Robolectric.Reflection.setFinalStaticField(MediaStore.Images.Media.class, "EXTERNAL_CONTENT_URI",
282ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                Uri.parse("content://media/external/images/media"));
292ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard
302ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard        Robolectric.Reflection.setFinalStaticField(MediaStore.Images.Media.class, "INTERNAL_CONTENT_URI",
312ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard                Uri.parse("content://media/internal/images/media"));
323aa85ac4ae1ed62786afccc3bc828657439409a7Matthias Kiefer
333aa85ac4ae1ed62786afccc3bc828657439409a7Matthias Kiefer        Robolectric.Reflection.setFinalStaticField(MediaStore.Video.Media.class, "EXTERNAL_CONTENT_URI",
343aa85ac4ae1ed62786afccc3bc828657439409a7Matthias Kiefer                Uri.parse("content://media/external/video/media"));
353aa85ac4ae1ed62786afccc3bc828657439409a7Matthias Kiefer
363aa85ac4ae1ed62786afccc3bc828657439409a7Matthias Kiefer        Robolectric.Reflection.setFinalStaticField(MediaStore.Video.Media.class, "INTERNAL_CONTENT_URI",
373aa85ac4ae1ed62786afccc3bc828657439409a7Matthias Kiefer                Uri.parse("content://media/internal/video/media"));
382ee0a59c08fbf90d69e509d4919f791df9c44a27Ryan Richard    }
39d3f9a56dffcdd129355351019aef9652cce0d6b2Josh Lauer & Christian Williams}
40