11cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein/* 21cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * Copyright (C) 2011 Google Inc. 31cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * Licensed to The Android Open Source Project. 41cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * 51cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * Licensed under the Apache License, Version 2.0 (the "License"); 61cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * you may not use this file except in compliance with the License. 71cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * You may obtain a copy of the License at 81cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * 91cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * http://www.apache.org/licenses/LICENSE-2.0 101cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * 111cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * Unless required by applicable law or agreed to in writing, software 121cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * distributed under the License is distributed on an "AS IS" BASIS, 131cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 141cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * See the License for the specific language governing permissions and 151cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * limitations under the License. 161cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein */ 171cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 181cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sappersteinpackage com.android.ex.photo.provider; 191cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 201cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sappersteinimport android.net.Uri; 211cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sappersteinimport android.provider.OpenableColumns; 221cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 231cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sappersteinpublic final class PhotoContract { 24d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein /** Columns for the view */ 251cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static interface PhotoViewColumns { 261cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein /** 271cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * This column is a {@link Uri} that can be queried 281cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * for this individual image (resulting cursor has one single row for this image). 291cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein */ 301cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static final String URI = "uri"; 311cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein /** 321cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * This column is a {@link String} that can be queried for this 331cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * individual image to return a displayable name. 341cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein */ 351cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static final String NAME = OpenableColumns.DISPLAY_NAME; 361cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein /** 37d5cfe29032281253f9d6d9e1630323cc64127e9fAndrew Sapperstein * This column is a {@link Uri} that points to the downloaded local file. 38d5cfe29032281253f9d6d9e1630323cc64127e9fAndrew Sapperstein * Can be null. 391cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein */ 401cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static final String CONTENT_URI = "contentUri"; 411cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein /** 42d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein * This column is a {@link Uri} that points to a thumbnail of the image 43d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein * that ideally is a local file. 44d5cfe29032281253f9d6d9e1630323cc64127e9fAndrew Sapperstein * Can be null. 45d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein */ 46d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein public static final String THUMBNAIL_URI = "thumbnailUri"; 47d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein /** 481cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * This string column is the MIME type. 491cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein */ 501cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static final String CONTENT_TYPE = "contentType"; 511cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 521cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein } 531cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 541cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static interface PhotoQuery { 551cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein /** Projection of the returned cursor */ 561cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public final static String[] PROJECTION = { 571cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein PhotoViewColumns.URI, 581cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein PhotoViewColumns.NAME, 591cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein PhotoViewColumns.CONTENT_URI, 60d19540fb7139fc0baba3b55260a6aabdb029c831Andrew Sapperstein PhotoViewColumns.THUMBNAIL_URI, 611cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein PhotoViewColumns.CONTENT_TYPE, 621cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein }; 631cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein } 641cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 651cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static final class ContentTypeParameters { 661cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein /** 671cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * Parameter used to specify which type of content to return. 681cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein * Allows multiple types to be specified. 691cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein */ 701cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein public static final String CONTENT_TYPE = "contentType"; 711cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein 721cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein private ContentTypeParameters() {} 731cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein } 741cc4b2144a45abb495c8b14f6cfc5a10fb5e8ba8Andrew Sapperstein} 75