11ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov/*
21ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * Copyright (C) 2010 The Android Open Source Project
31ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov *
41ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * Licensed under the Apache License, Version 2.0 (the "License");
51ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * you may not use this file except in compliance with the License.
61ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * You may obtain a copy of the License at
71ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov *
81ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov *      http://www.apache.org/licenses/LICENSE-2.0
91ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov *
101ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * Unless required by applicable law or agreed to in writing, software
111ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * distributed under the License is distributed on an "AS IS" BASIS,
121ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
131ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * See the License for the specific language governing permissions and
141ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * limitations under the License.
151ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov */
161ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
171ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikovpackage com.android.contacts.list;
181ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
191ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikovimport android.content.Intent;
2027b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikovimport android.net.Uri;
211ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikovimport android.os.Parcel;
221ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikovimport android.os.Parcelable;
231ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
241ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov/**
251ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov * Parsed form of the intent sent to the Contacts application.
261ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov */
271ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikovpublic class ContactsRequest implements Parcelable {
281ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
291ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Default mode: browse contacts */
301ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_DEFAULT = 10;
311ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
3248cc25047d2c61828e9137c50b3496feada7a175Dmitri Plotnikov    /** Show all contacts */
3348cc25047d2c61828e9137c50b3496feada7a175Dmitri Plotnikov    public static final int ACTION_ALL_CONTACTS = 15;
3448cc25047d2c61828e9137c50b3496feada7a175Dmitri Plotnikov
3591ab5b436ebf12e29fdf3e19b3ea195287fcc1d9Dmitri Plotnikov    /** Show all contacts with phone numbers */
3691ab5b436ebf12e29fdf3e19b3ea195287fcc1d9Dmitri Plotnikov    public static final int ACTION_CONTACTS_WITH_PHONES = 17;
3791ab5b436ebf12e29fdf3e19b3ea195287fcc1d9Dmitri Plotnikov
381ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show contents of a specific group */
391ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_GROUP = 20;
401ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
411ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all starred contacts */
421ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_STARRED = 30;
431ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
441ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show frequently contacted contacts */
451ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_FREQUENT = 40;
461ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
471ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show starred and the frequent */
481ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_STREQUENT = 50;
491ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
501ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all contacts and pick them when clicking */
511ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_PICK_CONTACT = 60;
521ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
531ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all contacts as well as the option to create a new one */
541ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_PICK_OR_CREATE_CONTACT = 70;
551ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
561ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all contacts and pick them for edit when clicking, and allow creating a new contact */
571ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_INSERT_OR_EDIT_CONTACT = 80;
581ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
591ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all phone numbers and pick them when clicking */
601ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_PICK_PHONE = 90;
611ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
621ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all postal addresses and pick them when clicking */
631ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_PICK_POSTAL = 100;
641ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
65c86ace78ca5c2e10dcb001a916386c8a9865e230Daniel Lehmann    /** Show all postal addresses and pick them when clicking */
66c86ace78ca5c2e10dcb001a916386c8a9865e230Daniel Lehmann    public static final int ACTION_PICK_EMAIL = 105;
67c86ace78ca5c2e10dcb001a916386c8a9865e230Daniel Lehmann
681ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all contacts and create a shortcut for the picked contact */
691ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_CREATE_SHORTCUT_CONTACT = 110;
701ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
711ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all phone numbers and create a call shortcut for the picked number */
721ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_CREATE_SHORTCUT_CALL = 120;
731ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
741ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /** Show all phone numbers and create an SMS shortcut for the picked number */
751ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static final int ACTION_CREATE_SHORTCUT_SMS = 130;
761ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
7727b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    /** Show all contacts and activate the specified one */
7827b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    public static final int ACTION_VIEW_CONTACT = 140;
7927b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov
801ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private boolean mValid = true;
811ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private int mActionCode = ACTION_DEFAULT;
821ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private Intent mRedirectIntent;
831ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private CharSequence mTitle;
841ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private boolean mSearchMode;
851ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private String mQueryString;
860a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro    private boolean mIncludeProfile;
871ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    private boolean mLegacyCompatibilityMode;
881c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov    private boolean mDirectorySearchEnabled = true;
8927b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    private Uri mContactUri;
901ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
916d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki    @Override
926d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki    public String toString() {
936d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki        return "{ContactsRequest:mValid=" + mValid
946d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mActionCode=" + mActionCode
956d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mRedirectIntent=" + mRedirectIntent
966d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mTitle=" + mTitle
976d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mSearchMode=" + mSearchMode
986d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mQueryString=" + mQueryString
996d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mIncludeProfile=" + mIncludeProfile
1006d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mLegacyCompatibilityMode=" + mLegacyCompatibilityMode
1016d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mDirectorySearchEnabled=" + mDirectorySearchEnabled
1026d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + " mContactUri=" + mContactUri
1036d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki                + "}";
1046d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki    }
1056d9befe1de956c50e31e4d1c22809fe9826f680cMakoto Onuki
1061ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    /**
1071ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov     * Copies all fields.
1081ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov     */
1091ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void copyFrom(ContactsRequest request) {
1101ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mValid = request.mValid;
1111ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mActionCode = request.mActionCode;
1121ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mRedirectIntent = request.mRedirectIntent;
1131ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mTitle = request.mTitle;
1141ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mSearchMode = request.mSearchMode;
1151ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mQueryString = request.mQueryString;
1160a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro        mIncludeProfile = request.mIncludeProfile;
1171ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mLegacyCompatibilityMode = request.mLegacyCompatibilityMode;
1181c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov        mDirectorySearchEnabled = request.mDirectorySearchEnabled;
11927b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov        mContactUri = request.mContactUri;
1201ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1211ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1221ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public static Parcelable.Creator<ContactsRequest> CREATOR = new Creator<ContactsRequest>() {
1231ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1241ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        public ContactsRequest[] newArray(int size) {
1251ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            return new ContactsRequest[size];
1261ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        }
1271ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1281ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        public ContactsRequest createFromParcel(Parcel source) {
12927b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov            ClassLoader classLoader = this.getClass().getClassLoader();
1301ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            ContactsRequest request = new ContactsRequest();
1311ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            request.mValid = source.readInt() != 0;
1321ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            request.mActionCode = source.readInt();
13327b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov            request.mRedirectIntent = source.readParcelable(classLoader);
1341ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            request.mTitle = source.readCharSequence();
1351ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            request.mSearchMode = source.readInt() != 0;
1361ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            request.mQueryString = source.readString();
1370a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro            request.mIncludeProfile = source.readInt() != 0;
1381ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            request.mLegacyCompatibilityMode  = source.readInt() != 0;
1391c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov            request.mDirectorySearchEnabled = source.readInt() != 0;
14027b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov            request.mContactUri = source.readParcelable(classLoader);
1411ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov            return request;
1421ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        }
1431ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    };
1441ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1451ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void writeToParcel(Parcel dest, int flags) {
1461ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeInt(mValid ? 1 : 0);
1471ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeInt(mActionCode);
1481ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeParcelable(mRedirectIntent, 0);
1491ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeCharSequence(mTitle);
1501ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeInt(mSearchMode ? 1 : 0);
1511ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeString(mQueryString);
1520a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro        dest.writeInt(mIncludeProfile ? 1 : 0);
1531ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        dest.writeInt(mLegacyCompatibilityMode ? 1 : 0);
1541c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov        dest.writeInt(mDirectorySearchEnabled ? 1 : 0);
15527b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov        dest.writeParcelable(mContactUri, 0);
1561ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1571ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1581ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public int describeContents() {
1591ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return 0;
1601ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1611ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1621ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public boolean isValid() {
1631ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mValid;
1641ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1651ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1661ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setValid(boolean flag) {
1671ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mValid = flag;
1681ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1691ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1701ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public Intent getRedirectIntent() {
1711ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mRedirectIntent;
1721ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1731ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1741ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setRedirectIntent(Intent intent) {
1751ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mRedirectIntent = intent;
1761ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1771ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1781ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setActivityTitle(CharSequence title) {
1791ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mTitle = title;
1801ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1811ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1821ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public CharSequence getActivityTitle() {
1831ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mTitle;
1841ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1851ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1861ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public int getActionCode() {
1871ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mActionCode;
1881ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1891ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1901ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setActionCode(int actionCode) {
1911ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mActionCode = actionCode;
1921ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1931ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1941ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public boolean isSearchMode() {
1951ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mSearchMode;
1961ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
1971ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
1981ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setSearchMode(boolean flag) {
1991ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mSearchMode = flag;
2001ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
2011ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
2021ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public String getQueryString() {
2031ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mQueryString;
2041ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
2051ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
2061ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setQueryString(String string) {
2071ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mQueryString = string;
2081ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
2091ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
2100a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro    public boolean shouldIncludeProfile() {
2110a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro        return mIncludeProfile;
2120a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro    }
2130a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro
2140a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro    public void setIncludeProfile(boolean includeProfile) {
2150a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro        mIncludeProfile = includeProfile;
2160a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro    }
2170a4d2258411478c7c78790cd55ba25c99f588c26Dave Santoro
2181ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public boolean isLegacyCompatibilityMode() {
2191ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        return mLegacyCompatibilityMode;
2201ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
2211ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov
2221ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    public void setLegacyCompatibilityMode(boolean flag) {
2231ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov        mLegacyCompatibilityMode = flag;
2241ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov    }
2251c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov
2261c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov    /**
2271c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov     * Determines whether this search request should include directories or
2281c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov     * is limited to local contacts only.
2291c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov     */
2301c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov    public boolean isDirectorySearchEnabled() {
2311c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov        return mDirectorySearchEnabled;
2321c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov    }
2331c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov
2341c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov    public void setDirectorySearchEnabled(boolean flag) {
2351c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov        mDirectorySearchEnabled = flag;
2361c5c8e23849ac3babb2bdec65ec63c190a5c40dfDmitri Plotnikov    }
23727b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov
23827b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    public Uri getContactUri() {
23927b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov        return mContactUri;
24027b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    }
24127b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov
24227b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    public void setContactUri(Uri contactUri) {
24327b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov        this.mContactUri = contactUri;
24427b97bca14c84b3f830c7a433e14ae5c180a32c3Dmitri Plotnikov    }
2451ce1e7cf261994e46e6fe85ed4d445241ad55f16Dmitri Plotnikov}
246