AddonSession.Builder

@PublicApi
public interface AddonSession.Builder



Um builder para a classe AddonSession. Consulte os newSessionBuilder.

Resumo

Métodos públicos

abstract ListenableFuture<AddonSession>
begin(Context appContext)

Inicia uma sessão complementar.

abstract AddonSession.Builder

Adiciona a ação colaborativa à sessão do complemento com o estado inicial.

abstract AddonSession.Builder
@CanIgnoreReturnValue
withCoDoing(
    CoDoingHandler coDoingHandler,
    Optional<CoDoingState> initiatorInitialState
)

Adiciona a ação colaborativa à sessão de complementos.

abstract AddonSession.Builder

Adiciona a opção de assistir em grupo à sessão complementar.

abstract AddonSession.Builder
@CanIgnoreReturnValue
withCoWatching(
    CoWatchingHandler coWatchingHandler,
    Optional<CoWatchingState> initiatorInitialState
)

Adiciona a covisualização à sessão do complemento com o estado inicial.

abstract AddonSession.Builder

Define o CollaborationStartingState da sessão.

abstract AddonSession.Builder

Registra um listener para atualizações de metadados de outros participantes.

abstract AddonSession.Builder

Define os metadados deste participante e registra um listener para atualizações de outros participantes.

Métodos públicos

begin

abstract ListenableFuture<AddonSessionbegin(Context appContext)

Inicia uma sessão complementar. Ele só deve ser chamado quando o usuário confirmar que quer participar de uma sessão complementar.

criar ou se conectar a uma reunião em andamento. Observações:

  • Se uma reunião for criada, o usuário atual vai ser o único participante inicialmente.
  • Acesse os detalhes da reunião em getMeetingInfo na sessão retornada.
  • A finalidade do URL retornado é ser exposto ao usuário e compartilhado manualmente com o grupo de sessões do complemento pretendido.
As instâncias de co-watching e co-Doing podem ser acessadas usando getCoWatching e getCoDoing, respectivamente.

Não é recomendado chamar cancel neste futuro, mas permitir que ele seja executado até a conclusão.

Parâmetros
Context appContext

o valor getApplicationContext do aplicativo que está usando o SDK.

Retorna
ListenableFuture<AddonSession>

Um ListenableFuture que é avaliado como uma instância AddonSession do tipo apropriado se uma sessão de complemento foi iniciada. Caso contrário, será avaliado como IllegalStateException se outro AddonSession ainda estiver em execução (por exemplo, endSession não foi chamado) ou como AddonException se houver um erro inesperado.

withCoDoing

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoDoing(CoDoingHandler coDoingHandler)

Adiciona a ação colaborativa à sessão do complemento com o estado inicial.

Parâmetros
CoDoingHandler coDoingHandler

callbacks para fazer em conjunto

Retorna
AddonSession.Builder

outra instância do builder para encadeamento

Gera
java.lang.NullPointerException

se coDoingHandler for nulo

withCoDoing

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoDoing(
    CoDoingHandler coDoingHandler,
    Optional<CoDoingState> initiatorInitialState
)

Adiciona a ação colaborativa à sessão de complementos.

Parâmetros
CoDoingHandler coDoingHandler

callbacks para fazer em conjunto

Optional<CoDoingState> initiatorInitialState

o estado inicial do iniciador. Isso será ignorado se o usuário estiver participando de uma sessão existente.

Retorna
AddonSession.Builder

outra instância do builder para encadeamento

Gera
java.lang.NullPointerException

se coDoingHandler ou initiatorInitialState for nulo

withCoWatching

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoWatching(CoWatchingHandler coWatchingHandler)

Adiciona a opção de assistir em grupo à sessão complementar.

Parâmetros
CoWatchingHandler coWatchingHandler

callbacks para assistir em grupo

Retorna
AddonSession.Builder

outra instância do builder para encadeamento

Gera
java.lang.NullPointerException

se coWatchingHandler for nulo

withCoWatching

@CanIgnoreReturnValue
abstract AddonSession.Builder withCoWatching(
    CoWatchingHandler coWatchingHandler,
    Optional<CoWatchingState> initiatorInitialState
)

Adiciona a covisualização à sessão do complemento com o estado inicial.

Parâmetros
CoWatchingHandler coWatchingHandler

callbacks para assistir em grupo

Optional<CoWatchingState> initiatorInitialState

o estado inicial do iniciador. Isso será ignorado se o usuário estiver participando de uma sessão existente.

Retorna
AddonSession.Builder

outra instância do builder para encadeamento

Gera
java.lang.NullPointerException

se coWatchingHandler ou initiatorInitialState for nulo

withCollaborationStartingState

@CanIgnoreReturnValue
abstract AddonSession.Builder withCollaborationStartingState(
    CollaborationStartingState collaborationStartingState
)

Define o CollaborationStartingState da sessão.

Isso pode ser mudado mais tarde chamando updateCollaborationStartingState ou resetCollaborationStartingState.

Parâmetros
CollaborationStartingState collaborationStartingState

CollaborationStartingState de dados

Gera
java.lang.NullPointerException

se collaborationStartingState for nulo

withParticipantMetadata

@CanIgnoreReturnValue
abstract AddonSession.Builder withParticipantMetadata(ParticipantMetadataHandler handler)

Registra um listener para atualizações de metadados de outros participantes.

Os metadados do participante local vão ser definidos inicialmente como um valor vazio, mas podem ser definidos mais tarde chamando updateParticipantMetadata. Para definir o valor inicial, chame withParticipantMetadata.

Parâmetros
ParticipantMetadataHandler handler

um ParticipantMetadataHandler para receber o conjunto mais recente de metadados do participante sempre que ele for atualizado.

Gera
java.lang.NullPointerException

se handler for nulo

withParticipantMetadata

@CanIgnoreReturnValue
abstract AddonSession.Builder withParticipantMetadata(
    ParticipantMetadataHandler handler,
    byte[] metadata
)

Define os metadados deste participante e registra um listener para atualizações de outros participantes.

Esses metadados podem ser alterados posteriormente chamando updateParticipantMetadata.

Os metadados codificados têm o limite de MAX_INDIVIDUAL_PARTICIPANT_METADATA_SIZE_BYTES bytes por participante.

Parâmetros
ParticipantMetadataHandler handler

um ParticipantMetadataHandler para receber o conjunto mais recente de metadados do participante sempre que ele for atualizado.

byte[] metadata

um blob codificado de metadados que descreve metadados relevantes para o participante local