15fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey/* 25fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * Copyright (C) 2014 The Android Open Source Project 35fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * 45fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * Licensed under the Apache License, Version 2.0 (the "License"); 55fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * you may not use this file except in compliance with the License. 65fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * You may obtain a copy of the License at 75fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * 85fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * http://www.apache.org/licenses/LICENSE-2.0 95fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * 105fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * Unless required by applicable law or agreed to in writing, software 115fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * distributed under the License is distributed on an "AS IS" BASIS, 125fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 135fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * See the License for the specific language governing permissions and 145fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey * limitations under the License. 155fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey */ 165fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 175fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkeypackage android.support.v4.provider; 185fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 195fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkeyimport android.content.Context; 205fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkeyimport android.net.Uri; 215fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkeyimport android.support.v4.provider.DocumentsContractApi19; 225fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 235fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkeyclass SingleDocumentFile extends DocumentFile { 245fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey private Context mContext; 255fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey private Uri mUri; 265fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 275fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey SingleDocumentFile(DocumentFile parent, Context context, Uri uri) { 285fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey super(parent); 295fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey mContext = context; 305fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey mUri = uri; 315fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 325fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 335fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 345fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public DocumentFile createFile(String mimeType, String displayName) { 355fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey throw new UnsupportedOperationException(); 365fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 375fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 385fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 395fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public DocumentFile createDirectory(String displayName) { 405fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey throw new UnsupportedOperationException(); 415fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 425fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 435fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 445fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public Uri getUri() { 455fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return mUri; 465fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 475fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 485fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 495fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public String getName() { 505fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.getName(mContext, mUri); 515fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 525fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 535fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 545fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public String getType() { 555fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.getType(mContext, mUri); 565fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 575fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 585fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 595fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean isDirectory() { 605fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.isDirectory(mContext, mUri); 615fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 625fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 635fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 645fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean isFile() { 655fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.isFile(mContext, mUri); 665fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 675fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 685fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 695fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public long lastModified() { 705fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.lastModified(mContext, mUri); 715fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 725fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 735fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 745fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public long length() { 755fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.length(mContext, mUri); 765fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 775fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 785fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 795fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean canRead() { 805fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.canRead(mContext, mUri); 815fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 825fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 835fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 845fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean canWrite() { 855fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.canWrite(mContext, mUri); 865fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 875fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 885fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 895fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean delete() { 905fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.delete(mContext, mUri); 915fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 925fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 935fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 945fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean exists() { 955fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey return DocumentsContractApi19.exists(mContext, mUri); 965fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 975fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 985fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 995fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public DocumentFile[] listFiles() { 1005fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey throw new UnsupportedOperationException(); 1015fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 1025fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey 1035fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey @Override 1045fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey public boolean renameTo(String displayName) { 1055fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey throw new UnsupportedOperationException(); 1065fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey } 1075fdfbc2e02f46509474057e4366585f6a6062cb9Jeff Sharkey} 108