diff options
| author | Andrew Lee <anwlee@google.com> | 2015-04-29 14:38:11 -0700 |
|---|---|---|
| committer | Andrew Lee <anwlee@google.com> | 2015-04-30 17:21:10 -0700 |
| commit | 2378ea76d4c4b160c2f0f6ffcd556776b7112d8d (patch) | |
| tree | 11772efbca218628aa0464b4a786719d59863874 /telecomm | |
| parent | 5b8b0df7bfcbeb8a6ac165fcbcad57aa2b597004 (diff) | |
| download | frameworks_base-2378ea76d4c4b160c2f0f6ffcd556776b7112d8d.zip frameworks_base-2378ea76d4c4b160c2f0f6ffcd556776b7112d8d.tar.gz frameworks_base-2378ea76d4c4b160c2f0f6ffcd556776b7112d8d.tar.bz2 | |
Add Properties to Call.Details.
Moved some capabilities to properties which seemed appropriate.
Bug: 20160395
Change-Id: Iacef4365822e5c3e50f0c41a501bf295c22055f1
Diffstat (limited to 'telecomm')
| -rw-r--r-- | telecomm/java/android/telecom/Call.java | 114 | ||||
| -rw-r--r-- | telecomm/java/android/telecom/CallProperties.java | 25 |
2 files changed, 80 insertions, 59 deletions
diff --git a/telecomm/java/android/telecom/Call.java b/telecomm/java/android/telecom/Call.java index 9273939..fee6495 100644 --- a/telecomm/java/android/telecom/Call.java +++ b/telecomm/java/android/telecom/Call.java @@ -132,7 +132,7 @@ public final class Call { /** * @hide */ - public static final int CAPABILITY_UNUSED = 0x00000010; + public static final int CAPABILITY_UNUSED_1 = 0x00000010; /** Call supports responding via text option. */ public static final int CAPABILITY_RESPOND_VIA_TEXT = 0x00000020; @@ -189,46 +189,55 @@ public final class Call { public static final int CAPABILITY_DISCONNECT_FROM_CONFERENCE = 0x00002000; /** - * Whether the call is a generic conference, where we do not know the precise state of - * participants in the conference (eg. on CDMA). + * Speed up audio setup for MT call. + * @hide */ - public static final int CAPABILITY_GENERIC_CONFERENCE = 0x00004000; + public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 0x00040000; /** - * Call is using high definition audio. + * Call can be upgraded to a video call. + * @hide */ - public static final int CAPABILITY_HIGH_DEF_AUDIO = 0x00008000; + public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 0x00080000; /** - * Call is using WIFI. + * For video calls, indicates whether the outgoing video for the call can be paused using + * the {@link android.telecom.VideoProfile.VideoState#PAUSED} VideoState. */ - public static final int CAPABILITY_WIFI = 0x00010000; + public static final int CAPABILITY_CAN_PAUSE_VIDEO = 0x00100000; + + //****************************************************************************************** + // Next CAPABILITY value: 0x00004000 + //****************************************************************************************** /** - * Indicates that the current device callback number should be shown. + * Whether the call is currently a conference. */ - public static final int CAPABILITY_SHOW_CALLBACK_NUMBER = 0x00020000; + public static final int PROPERTY_CONFERENCE = 0x00000001; /** - * Speed up audio setup for MT call. - * @hide + * Whether the call is a generic conference, where we do not know the precise state of + * participants in the conference (eg. on CDMA). */ - public static final int CAPABILITY_SPEED_UP_MT_AUDIO = 0x00040000; + public static final int PROPERTY_GENERIC_CONFERENCE = 0x00000002; /** - * Call can be upgraded to a video call. - * @hide + * Whether the call is made while the device is in emergency callback mode. */ - public static final int CAPABILITY_CAN_UPGRADE_TO_VIDEO = 0x00080000; + public static final int PROPERTY_EMERGENCY_CALLBACK_MODE = 0x00000004; /** - * For video calls, indicates whether the outgoing video for the call can be paused using - * the {@link android.telecom.VideoProfile.VideoState#PAUSED} VideoState. + * Connection is using WIFI. */ - public static final int CAPABILITY_CAN_PAUSE_VIDEO = 0x00100000; + public static final int PROPERTY_WIFI = 0x00000008; + + /** + * Call is using high definition audio. + */ + public static final int PROPERTY_HIGH_DEF_AUDIO = 0x00000010; //****************************************************************************************** - // Next CAPABILITY value: 0x00200000 + // Next PROPERTY value: 0x00000020 //****************************************************************************************** private final Uri mHandle; @@ -314,18 +323,6 @@ public final class Call { if (can(capabilities, CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL)) { builder.append(" CAPABILITY_SUPPORTS_VT_REMOTE_BIDIRECTIONAL"); } - if (can(capabilities, CAPABILITY_HIGH_DEF_AUDIO)) { - builder.append(" CAPABILITY_HIGH_DEF_AUDIO"); - } - if (can(capabilities, CAPABILITY_WIFI)) { - builder.append(" CAPABILITY_WIFI"); - } - if (can(capabilities, CAPABILITY_GENERIC_CONFERENCE)) { - builder.append(" CAPABILITY_GENERIC_CONFERENCE"); - } - if (can(capabilities, CAPABILITY_SHOW_CALLBACK_NUMBER)) { - builder.append(" CAPABILITY_SHOW_CALLBACK_NUMBER"); - } if (can(capabilities, CAPABILITY_SPEED_UP_MT_AUDIO)) { builder.append(" CAPABILITY_SPEED_UP_MT_AUDIO"); } @@ -340,6 +337,55 @@ public final class Call { } /** + * Whether the supplied properties includes the specified property. + * + * @param properties A bit field of properties. + * @param property The property to check properties for. + * @return Whether the specified property is supported. + */ + public static boolean hasProperty(int properties, int property) { + return (properties & property) != 0; + } + + /** + * Whether the properties of this {@code Details} includes the specified property. + * + * @param property The property to check properties for. + * @return Whether the specified property is supported. + */ + public boolean hasProperty(int property) { + return hasProperty(mCallProperties, property); + } + + /** + * Render a set of property bits ({@code PROPERTY_*}) as a human readable string. + * + * @param properties A property bit field. + * @return A human readable string representation. + */ + public static String propertiesToString(int properties) { + StringBuilder builder = new StringBuilder(); + builder.append("[Properties:"); + if (hasProperty(properties, PROPERTY_CONFERENCE)) { + builder.append(" PROPERTY_CONFERENCE"); + } + if (hasProperty(properties, PROPERTY_GENERIC_CONFERENCE)) { + builder.append(" PROPERTY_GENERIC_CONFERENCE"); + } + if (hasProperty(properties, PROPERTY_WIFI)) { + builder.append(" PROPERTY_WIFI"); + } + if (hasProperty(properties, PROPERTY_HIGH_DEF_AUDIO)) { + builder.append(" PROPERTY_HIGH_DEF_AUDIO"); + } + if (hasProperty(properties, PROPERTY_EMERGENCY_CALLBACK_MODE)) { + builder.append(" EMERGENCY_CALLBACK_MODE"); + } + builder.append("]"); + return builder.toString(); + } + + /** * @return The handle (e.g., phone number) to which the {@code Call} is currently * connected. */ @@ -387,8 +433,8 @@ public final class Call { } /** - * @return A bitmask of the properties of the {@code Call}, as defined in - * {@link CallProperties}. + * @return A bitmask of the properties of the {@code Call}, as defined by the various + * {@code PROPERTY_*} constants in this class. */ public int getCallProperties() { return mCallProperties; diff --git a/telecomm/java/android/telecom/CallProperties.java b/telecomm/java/android/telecom/CallProperties.java deleted file mode 100644 index 1721a392e..0000000 --- a/telecomm/java/android/telecom/CallProperties.java +++ /dev/null @@ -1,25 +0,0 @@ -/* - * Copyright (C) 2014 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License - */ - -package android.telecom; - -/** - * Defines properties of a phone call which may be affected by changes to the call. - */ -public class CallProperties { - /** Call is currently in a conference call. */ - public static final int CONFERENCE = 0x00000001; -} |
