TPDFlibLogger

Tipos de dados, gerenciamento de documentos

Descrição

TPDFlibLogger é a classe de logger estruturado anexada a uma instância TPDFlib através da propriedade Logger. Quando atribuído, recebe records Debug, Info, Warn e Error, cada um com um código numérico da taxonomia existente de LastErrorCode e uma mensagem legível. O logger é de posse do chamador e pode ser compartilhado entre várias

instâncias TPDFlib. É nil por padrão, então o caminho sem logger tem custo zero

Sintaxe

Delphi

TPDFlibLogger = Class
  Public
    Constructor Create; Virtual;
    Destructor Destroy; Override;
    Procedure Log(Level: TPDFlibLogLevel; Code: Integer; Const Msg: WideString); Overload;
    Procedure Log(Level: TPDFlibLogLevel; Code: Integer; Const Msg: WideString;
      Const ExtraFieldsText: WideString); Overload;
    Procedure Debug(Code: Integer; Const Msg: WideString);
    Procedure Info(Code: Integer; Const Msg: WideString);
    Procedure Warn(Code: Integer; Const Msg: WideString);
    Procedure Error_(Code: Integer; Const Msg: WideString);
    Property Level: TPDFlibLogLevel Read FLevel Write FLevel;
    Property OnLog: TPDFlibLogEvent Read FOnLog Write FOnLog;
    Property FileName: WideString Read FFileName Write SetFileName;
  End;

Parâmetros

LevelA severidade mínima a emitir; records abaixo deste limite são descartados silenciosamente
OnLogUm callback do host invocado para cada record emitido, recebendo o nível, o código e a mensagem
FileNameQuando definido, os records também são gravados neste arquivo por um sink thread-safe TStreamWriter; limpe-o para parar o log em arquivo

Observações

Os métodos de conveniência Debug, Info, Warn e Error_ chamam Log com o nível correspondente

Gravações em arquivo são serializadas com uma seção crítica, então uma única instância de logger é segura para uso a partir de worker threads

PDFlibErrorMessage(Code) traduz um código numérico em uma mensagem legível e pode ser chamado independentemente do logger

Veja também

Logger, OnOperationProgress, LastErrorCode