Class ObjectStepLogger

java.lang.Object
io.getlime.security.powerauth.lib.cmd.logging.ObjectStepLogger
All Implemented Interfaces:
StepLogger

public class ObjectStepLogger
extends java.lang.Object
implements StepLogger
Object-based step logger useful for tests.
Author:
Roman Strobl, roman.strobl@wultra.com
  • Constructor Summary

    Constructors
    Constructor Description
    ObjectStepLogger()
    Default constructor with no logging.
    ObjectStepLogger​(java.io.OutputStream out)
    Constructor with output stream.
  • Method Summary

    Modifier and Type Method Description
    void close()
    Closes the logger output, writes code to close the array and opened object
    java.util.List<StepError> getErrors()
    Get step errors.
    StepError getFirstError​(java.lang.String id)
    Get first StepError with given name.
    StepError getFirstErrorByName​(java.lang.String errorName)
    Get first StepError with given name.
    StepItem getFirstItem​(java.lang.String id)
    Get first StepItem with given ID.
    StepItem getFirstItemByName​(java.lang.String itemName)
    Get first StepItem with given name.
    java.util.List<StepItem> getItems()
    Get step items.
    StepRequest getRequest()
    Get request.
    StepResponse getResponse()
    Get response.
    StepResult getResult()
    Get step result.
    void start()
    Start the object streaming, outputs start of the result object:
    void writeDoneFailed​(java.lang.String id)
    Write error about a failed execution.
    void writeDoneOK​(java.lang.String id)
    Write information about a successful completion.
    void writeError​(java.lang.String id, java.lang.Exception exception)
    Write information about an error.
    void writeError​(java.lang.String id, java.lang.String errorMessage)
    Write information about an error.
    void writeError​(java.lang.String id, java.lang.String name, java.lang.String errorMessage)
    Write information about an error.
    void writeError​(java.lang.String id, java.lang.String name, java.lang.String errorMessage, java.lang.Exception exception)
    Write information about an error.
    void writeItem​(java.lang.String id, java.lang.String name, java.lang.String description, java.lang.String status, java.lang.Object object)
    Writes an object representing the step of the execution.
    void writeServerCall​(java.lang.String id, java.lang.String uri, java.lang.String method, java.lang.Object requestObject, java.util.Map<java.lang.String,​?> headers)
    Write the information about the server call.
    void writeServerCallConnectionError​(java.lang.String id, java.lang.Exception e)
    Write information about service call network connection error.
    void writeServerCallError​(java.lang.String id, int statusCode, java.lang.Object responseObject, java.util.Map<java.lang.String,​?> headers)
    Write information about the service call error.
    void writeServerCallOK​(java.lang.String id, java.lang.Object responseObject, java.util.Map<java.lang.String,​?> headers)
    Write information about the successful server request.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ObjectStepLogger

      public ObjectStepLogger()
      Default constructor with no logging.
    • ObjectStepLogger

      public ObjectStepLogger​(java.io.OutputStream out)
      Constructor with output stream.
      Parameters:
      out - Output stream for logging.
  • Method Details

    • start

      public void start()
      Description copied from interface: StepLogger
      Start the object streaming, outputs start of the result object:
      Specified by:
      start in interface StepLogger
    • writeItem

      public void writeItem​(java.lang.String id, java.lang.String name, java.lang.String description, java.lang.String status, java.lang.Object object)
      Writes an object representing the step of the execution.
      Specified by:
      writeItem in interface StepLogger
      Parameters:
      id - Step ID.
      name - Step name.
      description - Step detailed description.
      status - Step status result.
      object - Custom object associated with the step.
    • writeServerCall

      public void writeServerCall​(java.lang.String id, java.lang.String uri, java.lang.String method, java.lang.Object requestObject, java.util.Map<java.lang.String,​?> headers)
      Write the information about the server call. Uses "writeItem" method under the hood.
      Specified by:
      writeServerCall in interface StepLogger
      Parameters:
      id - Step ID.
      uri - URI that will be called.
      method - HTTP method of the call.
      requestObject - Request object, in case of the POST, PUT, DELETE method.
      headers - HTTP request headers.
    • writeServerCallOK

      public void writeServerCallOK​(java.lang.String id, java.lang.Object responseObject, java.util.Map<java.lang.String,​?> headers)
      Write information about the successful server request. Uses "writeItem" method under the hood.
      Specified by:
      writeServerCallOK in interface StepLogger
      Parameters:
      id - Step ID.
      responseObject - HTTP response object.
      headers - HTTP response headers.
    • writeServerCallError

      public void writeServerCallError​(java.lang.String id, int statusCode, java.lang.Object responseObject, java.util.Map<java.lang.String,​?> headers)
      Write information about the service call error.
      Specified by:
      writeServerCallError in interface StepLogger
      Parameters:
      id - Step ID.
      statusCode - HTTP response status code.
      responseObject - HTTP response object.
      headers - HTTP response headers.
    • close

      public void close()
      Description copied from interface: StepLogger
      Closes the logger output, writes code to close the array and opened object
      Specified by:
      close in interface StepLogger
    • writeServerCallConnectionError

      public void writeServerCallConnectionError​(java.lang.String id, java.lang.Exception e)
      Write information about service call network connection error.
      Specified by:
      writeServerCallConnectionError in interface StepLogger
      Parameters:
      id - Step ID.
      e - Exception that caused the error.
    • writeError

      public void writeError​(java.lang.String id, java.lang.String errorMessage)
      Write information about an error.
      Specified by:
      writeError in interface StepLogger
      Parameters:
      id - Step ID.
      errorMessage - Error message.
    • writeError

      public void writeError​(java.lang.String id, java.lang.Exception exception)
      Write information about an error.
      Specified by:
      writeError in interface StepLogger
      Parameters:
      id - Step ID.
      exception - Exception that caused the error.
    • writeError

      public void writeError​(java.lang.String id, java.lang.String name, java.lang.String errorMessage)
      Write information about an error.
      Specified by:
      writeError in interface StepLogger
      Parameters:
      id - Step ID.
      name - Error item name.
      errorMessage - Error message.
    • writeError

      public void writeError​(java.lang.String id, java.lang.String name, java.lang.String errorMessage, java.lang.Exception exception)
      Write information about an error.
      Specified by:
      writeError in interface StepLogger
      Parameters:
      id - Step ID.
      name - Error item name.
      errorMessage - Error message.
      exception - Exception that caused the error.
    • writeDoneOK

      public void writeDoneOK​(java.lang.String id)
      Write information about a successful completion.
      Specified by:
      writeDoneOK in interface StepLogger
      Parameters:
      id - Step ID.
    • writeDoneFailed

      public void writeDoneFailed​(java.lang.String id)
      Write error about a failed execution.
      Specified by:
      writeDoneFailed in interface StepLogger
      Parameters:
      id - Step ID.
    • getItems

      public java.util.List<StepItem> getItems()
      Get step items.
      Returns:
      Step items.
    • getFirstItem

      public StepItem getFirstItem​(java.lang.String id)
      Get first StepItem with given ID.
      Parameters:
      id - Item ID.
      Returns:
      First StepItem with given id or null if logger doesn't contain such item.
    • getFirstItemByName

      public StepItem getFirstItemByName​(java.lang.String itemName)
      Get first StepItem with given name.
      Parameters:
      itemName - Item name.
      Returns:
      First StepItem with given name or null if logger doesn't contain such item.
    • getErrors

      public java.util.List<StepError> getErrors()
      Get step errors.
      Returns:
      Step errors.
    • getFirstError

      public StepError getFirstError​(java.lang.String id)
      Get first StepError with given name.
      Parameters:
      id - Error ID.
      Returns:
      First StepError with given ID or null if logger doesn't contain such error.
    • getFirstErrorByName

      public StepError getFirstErrorByName​(java.lang.String errorName)
      Get first StepError with given name.
      Parameters:
      errorName - Error name.
      Returns:
      First StepError with given name or null if logger doesn't contain such error.
    • getRequest

      public StepRequest getRequest()
      Get request.
      Returns:
      Request.
    • getResponse

      public StepResponse getResponse()
      Get response.
      Returns:
      Response.
    • getResult

      public StepResult getResult()
      Get step result.
      Returns:
      Step result.