BotState Classe

  • java.lang.Object
    • com.microsoft.bot.builder.BotState

Implementações

public abstract class BotState
implements PropertyManager

Define um objeto de gerenciamento de estado e automatiza a leitura e gravação de propriedades de estado associadas a uma camada de armazenamento.

Cada objeto de gerenciamento de estado define um escopo para uma camada de armazenamento. As propriedades de estado são criadas dentro de um escopo de gerenciamento de estado e o Bot Framework define esses escopos: ConversationState, UserStatee PrivateConversationState. Você pode definir escopos adicionais para o bot.

Resumo do Construtor

Construtor Description
BotState(Storage withStorage, String withContextServiceKey)

Inicializa uma nova instância da classe Estado do Bot.

Resumo do método

Modificador e tipo Método e descrição

StatePropertyAccessor<T>

<T>createProperty(String name)

Cria uma propriedade de estado nomeado dentro do escopo de um Estado do Bote retorna um acessador para a propriedade .

protected

java.util.concurrent.CompletableFuture<T>

<T>getPropertyValue(TurnContext turnContext, String propertyName)

Obtém o valor de uma propriedade do cache de estado para esse Estado do Bot.

java.util.concurrent.CompletableFuture<java.lang.Void>

clearState(TurnContext turnContext)

Limpa o cache de estado para esse Estado do Bot.

java.util.concurrent.CompletableFuture<java.lang.Void>

delete(TurnContext turnContext)

Exclua qualquer estado armazenado no momento nesse escopo de estado.

protected

java.util.concurrent.CompletableFuture<java.lang.Void>

deletePropertyValue(TurnContext turnContext, String propertyName)

Exclui uma propriedade do cache de estado para esse Estado do Bot.

com.fasterxml.jackson.databind.JsonNode get(TurnContext turnContext)

Obtém uma cópia dos dados brutos armazenados em cache para esse Estado do Botno contexto de turno.

CachedBotState getCachedState(TurnContext turnContext)

Obtém a instância de estado do bot armazenado em cache que encapsula os dados brutos armazenados em cache para esse Estado do Botno contexto de turno.

abstract java.lang.String getStorageKey(TurnContext turnContext)

Quando substituído em uma classe derivada, obtém a chave a ser usada ao ler e gravar o estado de e para o armazenamento.

java.util.concurrent.CompletableFuture<java.lang.Void>

load(TurnContext turnContext)

Preenche o cache de estado para esse Estado do Botda camada de armazenamento.

java.util.concurrent.CompletableFuture<java.lang.Void>

load(TurnContext turnContext, boolean force)

Lê no objeto de estado atual e o armazena em cache no objeto de contexto para essa vez.

java.util.concurrent.CompletableFuture<java.lang.Void>

saveChanges(TurnContext turnContext)

Grava o cache de estado desse Estado do Botna camada de armazenamento.

java.util.concurrent.CompletableFuture<java.lang.Void>

saveChanges(TurnContext turnContext, boolean force)

Grava o cache de estado desse Estado do Botna camada de armazenamento.

protected

java.util.concurrent.CompletableFuture<java.lang.Void>

setPropertyValue(TurnContext turnContext, String propertyName, Object value)

Define o valor de uma propriedade no cache de estado para esse Estado do Bot.

Métodos herdados de java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

Detalhes do construtor

BotState

public BotState(Storage withStorage, String withContextServiceKey)

Inicializa uma nova instância da classe BotState.

Parameters:

withStorage - O provedor de armazenamento a ser usado.
withContextServiceKey - A chave para o cache de estado deste BotState.

Throws:

java.lang.IllegalArgumentException - Armazenamento nulo ou argumentos de chave de serviço vazios.

Detalhes do método

<T>createProperty

public StatePropertyAccessor createProperty(String name)

Cria uma propriedade de estado nomeado dentro do escopo de um BotState e retorna um acessador para a propriedade .

Parameters:

name - nome da propriedade.

Returns:

Um StatePropertyAccessor<T> para a propriedade .

Throws:

java.lang.IllegalArgumentException - Nome vazio

<T>getPropertyValue

protected CompletableFuture getPropertyValue(TurnContext turnContext, String propertyName)

Obtém o valor de uma propriedade do cache de estado para este BotState.

Parameters:

turnContext - O objeto de contexto para essa vez.
propertyName - O nome da propriedade a ser obtida.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução. Se a tarefa for bem-sucedida, o resultado conterá o valor da propriedade.

clearState

public CompletableFuture clearState(TurnContext turnContext)

Limpa o cache de estado para este BotState.

Esse método limpa o cache de estado no contexto de turno. Chame saveChanges(TurnContext turnContext, boolean force) para persistir essa alteração na camada de armazenamento.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

delete

public CompletableFuture delete(TurnContext turnContext)

Exclua qualquer estado armazenado no momento nesse escopo de estado.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

deletePropertyValue

protected CompletableFuture deletePropertyValue(TurnContext turnContext, String propertyName)

Exclui uma propriedade do cache de estado para este BotState.

Parameters:

turnContext - O objeto de contexto para essa vez.
propertyName - O nome da propriedade a ser excluída.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

get

public JsonNode get(TurnContext turnContext)

Obtém uma cópia dos dados brutos armazenados em cache para esse BotState do contexto de turno.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

Uma representação JSON do estado armazenado em cache.

getCachedState

public BotState.CachedBotState getCachedState(TurnContext turnContext)

Obtém a instância de estado do bot armazenado em cache que encapsula os dados brutos armazenados em cache para esse BotState no contexto de turno.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

A instância de estado do bot armazenado em cache.

getStorageKey

public abstract String getStorageKey(TurnContext turnContext)

Quando substituído em uma classe derivada, obtém a chave a ser usada ao ler e gravar o estado de e para o armazenamento.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

A chave de armazenamento.

Throws:

java.lang.IllegalArgumentException - TurnContext não contém todos os dados necessários.

load

public CompletableFuture load(TurnContext turnContext)

Preenche o cache de estado para esse BotState da camada de armazenamento.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

load

public CompletableFuture load(TurnContext turnContext, boolean force)

Lê no objeto de estado atual e o armazena em cache no objeto de contexto para essa vez.

Parameters:

turnContext - O objeto de contexto para essa vez.
force - true para substituir qualquer cache de estado existente; ou false para carregar o estado do armazenamento somente se o cache ainda não existir.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

saveChanges

public CompletableFuture saveChanges(TurnContext turnContext)

Grava o cache de estado deste BotState na camada de armazenamento.

Parameters:

turnContext - O objeto de contexto para essa vez.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

saveChanges

public CompletableFuture saveChanges(TurnContext turnContext, boolean force)

Grava o cache de estado deste BotState na camada de armazenamento.

Parameters:

turnContext - O objeto de contexto para essa vez.
force - true para salvar o cache de estado no armazenamento; ou false para salvar o estado no armazenamento somente se uma propriedade no cache tiver sido alterada.

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

setPropertyValue

protected CompletableFuture setPropertyValue(TurnContext turnContext, String propertyName, Object value)

Define o valor de uma propriedade no cache de estado para este BotState.

Parameters:

turnContext - O objeto de contexto para essa vez.
propertyName - O nome da propriedade a ser definida.
value - O valor a ser definido na propriedade .

Returns:

Uma tarefa que representa o trabalho enfileirado para execução.

Aplica-se a