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