blob: fe83e5ca8d008ad2afc782e7e9acaa4ceb7b6cb3 [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package io.v.android.apps.syncslides.model;
/**
* Someone taking part in a presentation.
*
* An instance of this corresponds to one instance of a user running
* syncslides.
*/
public interface Participant {
// Name of the user participating, intended to be visible to others. This
// can be a colloquial name as opposed to a 'real' name or email address
// extracted from a device or blessing.
String getUserName();
// Deck the user may be presenting.
Deck getDeck();
// Name of a service with participant information.
String getServiceName();
// Initially get or refresh data from the endPoint.
// Return true if call succeeds, false otherwise.
boolean refreshData();
// For debugging.
String toString();
// For storage in Sets.
boolean equals(Object obj);
// For storage in Sets.
int hashCode();
/**
* Keys for Bundle fields.
*/
class B {
public static final String PARTICIPANT_ROLE = "participant_role";
public static final String PARTICIPANT_SHOULD_ADV = "participant_is_advertising";
public static final String PARTICIPANT_SYNCED = "participant_synced";
}
}