Interface IOLogTracer

All Superinterfaces:
Identified
All Known Implementing Classes:
AbstractIOLogTracer, AsyncIOLogTracer, DBLogTracer, FileLogTracer

public interface IOLogTracer extends Identified
Intrafaccia per le classi che dovranno loggare le richieste/risposte delle chiamate ai web services.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Aggiunge un filtro che verrà eseguito prima del salvataggio dei log di input/output/error.
    boolean
    returns true if the tracer has all the necessary information and can proceed with saving the log.
    void
    method used to clean any variables once the log has been saved
     
     
     
    getReference(String serviceName)
    Get the reference that can be used later to retrieve the log.
    void
    onError(Object error)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'errore sul file di log.
    void
    onError(Object error, Date registrationTime)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'errore sul file di log.
    void
    onInput(String serviceName, String serviceUrl, Object input)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'input sul file di log.
    void
    onInput(String serviceName, String serviceUrl, Object input, Date registrationTime)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'input sul file di log.
    void
    onInput(String serviceName, String serviceUrl, String headers, Object input, Date registrationTime)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'input sul file di log.
    void
    onOutput(Object output)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'output sul file di log.
    void
    onOutput(Object output, Date registrationTime)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'output sul file di log.
    void
    onOutput(Object output, Date registrationTime, String headers)
    Metodo di utilità che semplifica le operazioni di setup e scrittura dell'output sul file di log.
    default void
    onResult(boolean hasError, String message, Date registrationTime)
    Set the status of the log using the boolean passed and call the right method
    void
    Rimuove un determinato filtro, evitando che questo contribuisca alla modifica del messaggio prima del logging
    void
    Memorizza le informazioni inviate/ricevute in modo persistente.
    void
    setDuration(long l)
    Utilizzato per impostare la durata complessiva della richiesta.
    void
    setEnd(long end)
    Utilizzato per impostare l'istante in cui la richiesta è stata elaborata.
    void
     
    void
    setMethod(String method)
    Imposta il metodo d chiamata di un servizio.
    void
     
    void
    Imposta gli headers della richiesta.
    void
    Imposta gli headers della risposta.
    void
    setService(String name, String url)
    Imposta il nome e l'url del servizio, inizializzando il nome del log nel caso sia abilitata la funzionalità di logging.
    void
    setStart(long start)
    Utilizzato per impostare l'istante in cui l'elaborazione della richiesta ha inizio.
    void
    setStatus(int s)
    Viene utilizzato per impostare lo stato del tracer; solitamente questo metodo viene invocato più volte in modo da mantenere allineato lo stato con l'avanzamento della richiesta.
    void
    setStatusCode(int code)
    Imposta il codice di risposta relativo ad una chiamata ad un WS

    Methods inherited from interface overit.geocall.util.Identified

    getIdentity, setIdentity
  • Field Details

  • Method Details

    • onResult

      default void onResult(boolean hasError, String message, Date registrationTime)
      Set the status of the log using the boolean passed and call the right method
      Parameters:
      hasError - to set the status ERROR or COMPLETE and invoke the right method
      message - message to save
      registrationTime - registration time
    • save

      void save()
      Memorizza le informazioni inviate/ricevute in modo persistente.
    • onInput

      void onInput(String serviceName, String serviceUrl, Object input)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'input sul file di log.
      Parameters:
      serviceName - nome del servizio, utilizzato per il setup delle directory
      serviceUrl - url del servizio inserito all'interno del masterfile
      input - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'input verrà serializzato attraverso il serializzatore JackMapper.
    • onInput

      void onInput(String serviceName, String serviceUrl, Object input, Date registrationTime)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'input sul file di log.
      Parameters:
      serviceName - nome del servizio, utilizzato per il setup delle directory
      serviceUrl - url del servizio inserito all'interno del masterfile
      input - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'input verrà serializzato attraverso il serializzatore JackMapper.
      registrationTime - istante di registrazione del log.
    • onInput

      void onInput(String serviceName, String serviceUrl, String headers, Object input, Date registrationTime)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'input sul file di log.
      Parameters:
      serviceName - nome del servizio, utilizzato per il setup delle directory
      serviceUrl - url del servizio inserito all'interno del masterfile
      headers - headers della risposta della richiesta.
      input - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'input verrà serializzato attraverso il serializzatore JackMapper.
      registrationTime - istante di registrazione del log.
    • onOutput

      void onOutput(Object output)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'output sul file di log.
      Parameters:
      output - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'output verrà serializzato attraverso il serializzatore JackMapper.
    • onOutput

      void onOutput(Object output, Date registrationTime)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'output sul file di log.
      Parameters:
      output - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'output verrà serializzato attraverso il serializzatore JackMapper.
      registrationTime - istante di registrazione del log.
    • onOutput

      void onOutput(Object output, Date registrationTime, String headers)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'output sul file di log.
      Parameters:
      output - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'output verrà serializzato attraverso il serializzatore JackMapper.
      registrationTime - istante di registrazione del log.
      headers - headers della risposta.
    • onError

      void onError(Object error)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'errore sul file di log.
      Parameters:
      error - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'errore verrà serializzato attraverso il serializzatore JackMapper.
    • onError

      void onError(Object error, Date registrationTime)
      Metodo di utilità che semplifica le operazioni di setup e scrittura dell'errore sul file di log.
      Parameters:
      error - vengono gestite istanze di oggetti appartenenti alle seguenti classi: XMLTree, SOAPMessage, JsonElement e
      invalid reference
      byte[]
      , Throwable. Per tutte le altre classi l'errore verrà serializzato attraverso il serializzatore JackMapper.
      registrationTime - istante di registrazione del log.
    • getOutputStreamInput

      OutputStream getOutputStreamInput()
      Returns:
      lo stream su cui scrivere il contenuto della richiesta.
    • getOutputStreamOutput

      OutputStream getOutputStreamOutput()
      Returns:
      lo stream su cui scrivere il contenuto della risposta nel caso la richiesta sia stata processata con successo.
    • getOutputStreamError

      OutputStream getOutputStreamError()
      Returns:
      lo stream su cui scrivere il contenuto della risposta nel caso di errori.
    • setStart

      void setStart(long start)
      Utilizzato per impostare l'istante in cui l'elaborazione della richiesta ha inizio. Questo metodo dev'essere invocato IMMEDIATAMENTE PRIMA del invio della richiesta al WS.
      Parameters:
      start - timestamp di inizio chiamata
    • setEnd

      void setEnd(long end)
      Utilizzato per impostare l'istante in cui la richiesta è stata elaborata. Questo metodo dev'essere invocato SOLO una volta che la richiesta è stata ricevuta ed elaborata.
      Parameters:
      end - timestamp di fine chiamata
    • setDuration

      void setDuration(long l)
      Utilizzato per impostare la durata complessiva della richiesta. Questo metodo dev'essere invocato SOLO una volta che la richiesta è stata ricevuta ed elaborata.
      Parameters:
      l - millisecondi trascorsi dal momento di invio all'effettiva ricezione.
    • setService

      void setService(String name, String url)
      Imposta il nome e l'url del servizio, inizializzando il nome del log nel caso sia abilitata la funzionalità di logging. Questo metodo dev'essere invocato prima di iniziare la scrittura del log.
      Parameters:
      name - nome del servizio
      url - url del servizio
    • setRequestHeaders

      void setRequestHeaders(String headers)
      Imposta gli headers della richiesta.
      Parameters:
      headers - headers della richiesta.
    • setResponseHeaders

      void setResponseHeaders(String headers)
      Imposta gli headers della risposta.
      Parameters:
      headers - headers della risposta.
    • setStatus

      void setStatus(int s)
      Viene utilizzato per impostare lo stato del tracer; solitamente questo metodo viene invocato più volte in modo da mantenere allineato lo stato con l'avanzamento della richiesta.
      Parameters:
      s - si possono specificare i seguenti valori:
    • setInputAttachments

      void setInputAttachments(int count)
      Parameters:
      count - il numero di allegati inviati
    • setOutputAttachments

      void setOutputAttachments(int count)
      Parameters:
      count - il numero di allegati ricevuti
    • addFilter

      void addFilter(IOLogFilter filter)
      Aggiunge un filtro che verrà eseguito prima del salvataggio dei log di input/output/error.
      Parameters:
      filter - Il filtro da aggiungere
    • removeFilter

      void removeFilter(IOLogFilter filter)
      Rimuove un determinato filtro, evitando che questo contribuisca alla modifica del messaggio prima del logging
      Parameters:
      filter - Il filtro da rimuovere
    • getReference

      Object getReference(String serviceName)
      Get the reference that can be used later to retrieve the log. If the DB log has been activated, this method will return a Long number indicating the ID of the database record. If the FS log has been activated, this method will return an array of string whose contains 4 elements:
      1. path of the master document
      2. path of the Input raw document
      3. path of the Outputput raw document (in case of successfully response)
      4. path of the Error raw document (in case of unsuccessfully response)
      Parameters:
      serviceName - string containing the name of the service. If you have an instance of Message you can extract the service's name in this way:
      message.getExchange().get(Message.WSDL_INTERFACE).toString()
      Returns:
      The reference that can be used later to retrieve the log
    • completed

      boolean completed()
      returns true if the tracer has all the necessary information and can proceed with saving the log. false otherwise
      Returns:
      true if the tracer has all the necessary information and can proceed with saving the log. false otherwise
    • flush

      void flush()
      method used to clean any variables once the log has been saved
    • setMethod

      void setMethod(String method)
      Imposta il metodo d chiamata di un servizio.
      Parameters:
      method - verbo con cui viene chiamato il servizio
    • setStatusCode

      void setStatusCode(int code)
      Imposta il codice di risposta relativo ad una chiamata ad un WS
      Parameters:
      code - codice di risposta