• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2010 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.gallery3d.util;
18 
19 import com.android.gallery3d.data.MediaSet;
20 import com.android.gallery3d.data.MtpContext;
21 import com.android.gallery3d.data.Path;
22 
23 import android.os.Environment;
24 
25 import java.util.Comparator;
26 
27 public class MediaSetUtils {
28     public static final Comparator<MediaSet> NAME_COMPARATOR = new NameComparator();
29 
30     public static final int CAMERA_BUCKET_ID = GalleryUtils.getBucketId(
31             Environment.getExternalStorageDirectory().toString() + "/DCIM/Camera");
32     public static final int DOWNLOAD_BUCKET_ID = GalleryUtils.getBucketId(
33             Environment.getExternalStorageDirectory().toString() + "/download");
34     public static final int IMPORTED_BUCKET_ID = GalleryUtils.getBucketId(
35             Environment.getExternalStorageDirectory().toString() + "/"
36             + MtpContext.NAME_IMPORTED_FOLDER);
37 
38     private static final Path[] CAMERA_PATHS = {
39             Path.fromString("/local/all/" + CAMERA_BUCKET_ID),
40             Path.fromString("/local/image/" + CAMERA_BUCKET_ID),
41             Path.fromString("/local/video/" + CAMERA_BUCKET_ID)};
42 
isCameraSource(Path path)43     public static boolean isCameraSource(Path path) {
44         return CAMERA_PATHS[0] == path || CAMERA_PATHS[1] == path
45                 || CAMERA_PATHS[2] == path;
46     }
47 
48     // Sort MediaSets by name
49     public static class NameComparator implements Comparator<MediaSet> {
compare(MediaSet set1, MediaSet set2)50         public int compare(MediaSet set1, MediaSet set2) {
51             int result = set1.getName().compareToIgnoreCase(set2.getName());
52             if (result != 0) return result;
53             return set1.getPath().toString().compareTo(set2.getPath().toString());
54         }
55     }
56 }
57