Add StatusHints to Conference object.

+ Consolidated ParcelableConference constructors; only one is used.

Bug: 20181703
Change-Id: Iad49f10404e1c1eedc4ef68525bde0f10a8dfc97
This commit is contained in:
Andrew Lee
2015-04-14 13:38:12 -07:00
parent 6b91ebf58c
commit edc625f52e
4 changed files with 47 additions and 17 deletions

View File

@@ -49,6 +49,7 @@ public abstract class Conference implements IConferenceable {
public void onDestroyed(Conference conference) {}
public void onConnectionCapabilitiesChanged(
Conference conference, int connectionCapabilities) {}
public void onStatusHintsChanged(Conference conference, StatusHints statusHints) {}
}
private final Set<Listener> mListeners = new CopyOnWriteArraySet<>();
@@ -66,6 +67,7 @@ public abstract class Conference implements IConferenceable {
private int mConnectionCapabilities;
private String mDisconnectMessage;
private long mConnectTimeMillis = CONNECT_TIME_NOT_SPECIFIED;
private StatusHints mStatusHints;
private final Connection.Listener mConnectionDeathListener = new Connection.Listener() {
@Override
@@ -484,4 +486,23 @@ public abstract class Conference implements IConferenceable {
}
mConferenceableConnections.clear();
}
/**
* Sets the label and icon status to display in the InCall UI.
*
* @param statusHints The status label and icon to set.
*/
public final void setStatusHints(StatusHints statusHints) {
mStatusHints = statusHints;
for (Listener l : mListeners) {
l.onStatusHintsChanged(this, statusHints);
}
}
/**
* @return The status hints for this conference.
*/
public final StatusHints getStatusHints() {
return mStatusHints;
}
}