Compartilhar via


Classes básicas de dispositivo do POS para .NET (POS para documentação do SDK do .NET v1.14)

Cada dispositivo de hardware no POS para .NET é representado por uma interface abstrata, como classe CashDrawer e uma classe Básica, como CashDrawerBasic. As classes básicas derivam da interface subjacente e contêm suporte funcional básico para o dispositivo. O POS para .NET fornece suporte genérico para abrir, reivindicar e habilitar o dispositivo, as estatísticas do dispositivo e para gerenciar a entrega de eventos para o aplicativo. Além disso, cada classe Básica contém um conjunto de métodos herdados e protegidos que podem ser implementados pelo Objeto de Serviço. Este tópico fornece informações resumidas sobre classes Básicas que podem ser usadas por Objetos de Serviço que derivam da classe Básica do dispositivo, em vez de aproveitar a classe Base do dispositivo mais totalmente implementada.

Construtor

Cada classe Básica inclui um constructo que cria uma instância da classe e inicializa estatísticas para a versão do UPOS, a categoria do dispositivo e a data de instalação.

Propriedades e métodos comuns

Cada classe Básica fornece definições de propriedade e método PosCommon substituídos. Para cada uma dessas propriedades e métodos, a classe Básica manipula a validação de estado, ou seja, a verificação de que o aplicativo abriu, declarou ou habilitou o dispositivo e, em seguida, chama a implementação do POS para .NET dessa propriedade ou método. Para mais informações sobre a classe PosCommon, consulte PosCommon.

O Objeto de Serviço pode usar a classe CommonProperties para atualizar as propriedades PosCommon designadas somente leitura para o aplicativo ou para atualizar essas propriedades sem se preocupar com a validação de estado.

Métodos Dispose

Cada classe Básica inclui dois métodos Dispose implementados para uso pelo Objeto de Serviço. Para informações sobre como eles funcionam, consulte a documentação .NET Framework para a classe IDisposable.

Abrindo, declarando e habilitando dispositivos

Cada classe Básica fornece a funcionalidade principal para abrir, declarar e habilitar dispositivos. Normalmente, porém, os Objetos de Serviço desejam substituir esses métodos para adicionar seu próprio processamento personalizado.

Métodos e eventos protegidos para desenvolvedores de objetos de serviço

Cada classe Básica contém um grupo de métodos e eventos para o desenvolvedor do Objeto de Serviço.

As seguintes propriedades protegidas são definidas da seguinte maneira:

  • Propriedade CommonProperties, que retorna uma instância de CommonProperties com valores get e set para todas as propriedades PosCommon. O Objeto de Serviço pode usar CommonProperties para atualizar propriedades sem se preocupar com a validação de estado ou se a propriedade é designada somente leitura para o aplicativo.
  • Propriedade ExternallyClaimed, que os Objetos de Serviço podem recuperar para determinar se outra instância do dispositivo foi reivindicada (nesse caso, a propriedade é definida como true).
  • Propriedade ErrorCount. Quando o Objeto de Serviço consulta o valor de ErrorCount, a classe básica verifica a fila de eventos e conta o número de eventos ErrorEvent encontrados e retorna essa contagem como o valor de ErrorCount.
  • Propriedade DataCount. O POS para .NET verifica se o dispositivo foi aberto e, em seguida, retorna o número de eventos DataEvent atualmente na fila para o dispositivo.

Os seguintes métodos protegidos são definidos:

  • StateChangedEvent e delegado StateChangedEventHandler (classe EventArgs ). O Objeto de Serviço pode implementá-los para receber notificação quando a propriedade State do dispositivo for alterada.
  • Métodos protegidos por PreFireEvent para cada tipo de evento compatível com o dispositivo. Cada classe básica fornece uma implementação genérica padrão de PreFireEvent que retorna imediatamente. Se o Objeto de Serviço precisar atualizar seu estado interno antes de um evento ser enviado para o aplicativo, o Objeto de Serviço poderá substituir a implementação padrão do PreFireEvent e fornecer sua própria implementação para o tipo de evento em questão.
  • Métodos protegidos por QueueEvent para cada tipo de evento compatível com o dispositivo. O Objeto de Serviço chama QueueEvent para adicionar um evento à fila de eventos. A classe Básica verifica se o dispositivo está habilitado e adiciona o evento à fila de eventos a ser entregue ao aplicativo. Imediatamente antes da entrega, a classe Básica chama o PreFireEvent apropriado para dar ao Objeto de Serviço uma oportunidade de atualizar seu estado interno. Quando PreFireEvent retorna, a classe Básica entrega o evento ao aplicativo.
  • Métodos protegidos por QueueEventAndWait. O Objeto de Serviço chama QueueEventAndWait para adicionar um evento ErrorEvent ou DirectIOEvent à fila de eventos, da qual o Objeto de Serviço espera uma resposta do aplicativo. A classe Básica verifica se o dispositivo está habilitado e adiciona o evento à fila de eventos a ser entregue ao aplicativo quando as condições estiverem corretas. Imediatamente antes da entrega, a classe Básica chama o PreFireEvent apropriado para dar ao Objeto de Serviço uma oportunidade de atualizar seu estado interno. Quando PreFireEvent retorna, a classe Básica entrega o evento ao aplicativo.
  • O método VerifyState, que usa dois valores boolianos, mustBeClaimed e mustBeEnabled. O Objeto de Serviço pode chamar a implementação do POS para .NET desse método para executar a validação de estado necessária para o dispositivo, antes de uma chamada de método ou propriedade.
  • Método CreateStatistic. O Objeto de Serviço deve usar esses métodos para criar estatísticas personalizadas (ou seja, específicas do fabricante). O POS para .NET manipula a criação e o gerenciamento de todas as estatísticas definidas pelo UPOS.
  • Os métodos SetStatisticValue e IncrementStatistic permitem que o Objeto de Serviço atualize uma estatística específica mesmo que ela não seja definida como restaurável (ou seja, esses métodos ignoram as regras impostas pelos métodos PosCommonResetStatistic(String) e UpdateStatistic(String, Object)).
  • O método SetStatisticHandlers(String, GetStatistic, SetStatistic), que permite que os Objetos de Serviço forneçam funções de retorno de chamada externa para a recuperação e a configuração de estatísticas baseadas em hardware. Se uma propriedade get não estiver definida, a classe Básica pressupõe que a estatística é baseada em software e seu valor será mantido no arquivo XML de estatísticas. Se as propriedades get e set forem definidas, a classe Básica chamará essas funções sempre que a estatística precisar ser atualizada ou redefinida. Cabe ao Objeto de Serviço fornecer código para atualizar a estatística no hardware.
  • Método ClearInput. O POS para .NET limpa as filas de eventos do dispositivo e chama a implementação do Objeto de Serviço de ClearInputImpl.
  • Método ClearInputImpl. O Objeto de Serviço deve implementar esse método para limpar os buffers de hardware para o dispositivo.

Consulte Também

Outros recursos