summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/lookup/DirectoryId.java
blob: 023585c36df4fe99d6906fbd0f7367baf3bc8854 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
package com.android.dialer.lookup;

import android.net.Uri;
import android.provider.ContactsContract;

public class DirectoryId {
  // default contacts directory
  public static final long DEFAULT = ContactsContract.Directory.DEFAULT;

  // id for a non existant directory
  public static final long NULL = Long.MAX_VALUE;

  // id for nearby forward lookup results (not a real directory)
  public static final long NEARBY = NULL - 1;

  // id for people forward lookup results (not a real directory)
  public static final long PEOPLE = NULL - 2;

  public static boolean isFakeDirectory(long directory) {
    return directory == NULL || directory == NEARBY || directory == PEOPLE;
  }

  public static long fromUri(Uri lookupUri) {
    long directory = DirectoryId.DEFAULT;
    if (lookupUri != null) {
      String dqp = lookupUri.getQueryParameter(ContactsContract.DIRECTORY_PARAM_KEY);
      if (dqp != null) {
        directory = Long.valueOf(dqp);
      }
    }
    return directory;
  }
}