Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e363121e authored by Ricky Wai's avatar Ricky Wai
Browse files

Add Work Contacts Directory APIs

Add Work Contacts Directory APIs, so primary profile application can get work directory info.

Bug: 25761127

Change-Id: I0bce6f8153d32e7da883911c5b0af182745e9d40
parent 8382f98f
Loading
Loading
Loading
Loading
+3 −0
Original line number Original line Diff line number Diff line
@@ -25855,12 +25855,15 @@ package android.provider {
  }
  }
  public static final class ContactsContract.Directory implements android.provider.BaseColumns {
  public static final class ContactsContract.Directory implements android.provider.BaseColumns {
    method public static boolean isEnterpriseDirectoryId(long);
    method public static boolean isRemoteDirectory(long);
    method public static void notifyDirectoryChange(android.content.ContentResolver);
    method public static void notifyDirectoryChange(android.content.ContentResolver);
    field public static final java.lang.String ACCOUNT_NAME = "accountName";
    field public static final java.lang.String ACCOUNT_NAME = "accountName";
    field public static final java.lang.String ACCOUNT_TYPE = "accountType";
    field public static final java.lang.String ACCOUNT_TYPE = "accountType";
    field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_directory";
    field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_directory";
    field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/contact_directories";
    field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/contact_directories";
    field public static final android.net.Uri CONTENT_URI;
    field public static final android.net.Uri CONTENT_URI;
    field public static final android.net.Uri CORP_CONTENT_URI;
    field public static final long DEFAULT = 0L; // 0x0L
    field public static final long DEFAULT = 0L; // 0x0L
    field public static final java.lang.String DIRECTORY_AUTHORITY = "authority";
    field public static final java.lang.String DIRECTORY_AUTHORITY = "authority";
    field public static final java.lang.String DISPLAY_NAME = "displayName";
    field public static final java.lang.String DISPLAY_NAME = "displayName";
+3 −0
Original line number Original line Diff line number Diff line
@@ -27831,12 +27831,15 @@ package android.provider {
  }
  }
  public static final class ContactsContract.Directory implements android.provider.BaseColumns {
  public static final class ContactsContract.Directory implements android.provider.BaseColumns {
    method public static boolean isEnterpriseDirectoryId(long);
    method public static boolean isRemoteDirectory(long);
    method public static void notifyDirectoryChange(android.content.ContentResolver);
    method public static void notifyDirectoryChange(android.content.ContentResolver);
    field public static final java.lang.String ACCOUNT_NAME = "accountName";
    field public static final java.lang.String ACCOUNT_NAME = "accountName";
    field public static final java.lang.String ACCOUNT_TYPE = "accountType";
    field public static final java.lang.String ACCOUNT_TYPE = "accountType";
    field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_directory";
    field public static final java.lang.String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/contact_directory";
    field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/contact_directories";
    field public static final java.lang.String CONTENT_TYPE = "vnd.android.cursor.dir/contact_directories";
    field public static final android.net.Uri CONTENT_URI;
    field public static final android.net.Uri CONTENT_URI;
    field public static final android.net.Uri CORP_CONTENT_URI;
    field public static final long DEFAULT = 0L; // 0x0L
    field public static final long DEFAULT = 0L; // 0x0L
    field public static final java.lang.String DIRECTORY_AUTHORITY = "authority";
    field public static final java.lang.String DIRECTORY_AUTHORITY = "authority";
    field public static final java.lang.String DISPLAY_NAME = "displayName";
    field public static final java.lang.String DISPLAY_NAME = "displayName";
+51 −0
Original line number Original line Diff line number Diff line
@@ -393,6 +393,14 @@ public final class ContactsContract {
        public static final Uri CONTENT_URI =
        public static final Uri CONTENT_URI =
                Uri.withAppendedPath(AUTHORITY_URI, "directories");
                Uri.withAppendedPath(AUTHORITY_URI, "directories");


        /**
         * The content:// style URI for enterprise Directory table. Requests to this URI can be
         * performed on the UI thread because they are always unblocking.
         *
         */
        public static final Uri CORP_CONTENT_URI = Uri.withAppendedPath(AUTHORITY_URI,
                "directories_corp");

        /**
        /**
         * The MIME-type of {@link #CONTENT_URI} providing a directory of
         * The MIME-type of {@link #CONTENT_URI} providing a directory of
         * contact directories.
         * contact directories.
@@ -416,6 +424,22 @@ public final class ContactsContract {
         */
         */
        public static final long LOCAL_INVISIBLE = 1;
        public static final long LOCAL_INVISIBLE = 1;


        /**
         * _ID of the work profile default directory, which represents locally stored contacts.
         *
         * @hide
         */
        public static final long ENTERPRISE_DEFAULT = Directory.ENTERPRISE_DIRECTORY_ID_BASE
                + DEFAULT;

        /**
         * _ID of the work profile directory that represents locally stored invisible contacts.
         *
         * @hide
         */
        public static final long ENTERPRISE_LOCAL_INVISIBLE = Directory.ENTERPRISE_DIRECTORY_ID_BASE
                + LOCAL_INVISIBLE;

        /**
        /**
         * The name of the package that owns this directory. Contacts Provider
         * The name of the package that owns this directory. Contacts Provider
         * fill it in with the name of the package containing the directory provider.
         * fill it in with the name of the package containing the directory provider.
@@ -471,6 +495,15 @@ public final class ContactsContract {
         */
         */
        public static final String ACCOUNT_NAME = "accountName";
        public static final String ACCOUNT_NAME = "accountName";


        /**
         * Mimimal ID for corp directory returned from
         * {@link Directory#CORP_CONTENT_URI}.
         *
         * @hide
         */
        // slightly smaller than 2 ** 30
        public static final long ENTERPRISE_DIRECTORY_ID_BASE = 1000000000;

        /**
        /**
         * One of {@link #EXPORT_SUPPORT_NONE}, {@link #EXPORT_SUPPORT_ANY_ACCOUNT},
         * One of {@link #EXPORT_SUPPORT_NONE}, {@link #EXPORT_SUPPORT_ANY_ACCOUNT},
         * {@link #EXPORT_SUPPORT_SAME_ACCOUNT_ONLY}. This is the expectation the
         * {@link #EXPORT_SUPPORT_SAME_ACCOUNT_ONLY}. This is the expectation the
@@ -554,6 +587,24 @@ public final class ContactsContract {
         */
         */
        public static final int PHOTO_SUPPORT_FULL = 3;
        public static final int PHOTO_SUPPORT_FULL = 3;


        /**
         * Return TRUE if it is a remote stored directory.
         */
        public static boolean isRemoteDirectory(long directoryId) {
            return directoryId != Directory.DEFAULT
                    && directoryId != Directory.LOCAL_INVISIBLE
                    && directoryId != Directory.ENTERPRISE_DEFAULT
                    && directoryId != Directory.ENTERPRISE_LOCAL_INVISIBLE;
        }

        /**
         * Return TRUE if a directory ID is from the contacts provider on the enterprise profile.
         *
         */
        public static boolean isEnterpriseDirectoryId(long directoryId) {
            return directoryId >= ENTERPRISE_DIRECTORY_ID_BASE;
        }

        /**
        /**
         * Notifies the system of a change in the list of directories handled by
         * Notifies the system of a change in the list of directories handled by
         * a particular directory provider. The Contacts provider will turn around
         * a particular directory provider. The Contacts provider will turn around