Class BacktraceDatabase

java.lang.Object
backtraceio.library.BacktraceDatabase
All Implemented Interfaces:
Database

public class BacktraceDatabase extends Object implements Database
Backtrace Database
  • Constructor Details

    • BacktraceDatabase

      public BacktraceDatabase()
      Create disabled instance of BacktraceDatabase
    • BacktraceDatabase

      public BacktraceDatabase(android.content.Context context, String path)
      Create new Backtrace database instance
      Parameters:
      path - Path to database directory
    • BacktraceDatabase

      public BacktraceDatabase(android.content.Context context, BacktraceDatabaseSettings databaseSettings)
      Create Backtrace database instance
      Parameters:
      databaseSettings - Backtrace database settings
  • Method Details

    • addAttribute

      public void addAttribute(String name, String value)
      Add attributes to native reports
      Parameters:
      name - attribute name
      value - attribute value
    • setupNativeIntegration

      public Boolean setupNativeIntegration(BacktraceBase client, BacktraceCredentials credentials)
      Setup native crash handler
      Specified by:
      setupNativeIntegration in interface Database
      Parameters:
      client - Backtrace client
      credentials - Backtrace credentials
    • setupNativeIntegration

      public Boolean setupNativeIntegration(BacktraceBase client, BacktraceCredentials credentials, boolean enableClientSideUnwinding)
      Setup native crash handler
      Specified by:
      setupNativeIntegration in interface Database
      Parameters:
      client - Backtrace client
      credentials - Backtrace credentials
      enableClientSideUnwinding - Enable client side unwinding
    • useNativeCommunication

      public void useNativeCommunication(NativeCommunication nativeCommunication)
      Overrides default native communication bridge
    • setupNativeIntegration

      public Boolean setupNativeIntegration(BacktraceBase client, BacktraceCredentials credentials, boolean enableClientSideUnwinding, UnwindingMode unwindingMode)
      Setup native crash handler
      Specified by:
      setupNativeIntegration in interface Database
      Parameters:
      client - Backtrace client
      credentials - Backtrace credentials
      enableClientSideUnwinding - Enable client side unwinding
      unwindingMode - Unwinding mode to use for client side unwinding
    • disableNativeIntegration

      public void disableNativeIntegration()
      Disable native integration
      Specified by:
      disableNativeIntegration in interface Database
    • getBreadcrumbs

      public Breadcrumbs getBreadcrumbs()
      Description copied from interface: Database
      Get the breadcrumbs implementation
      Specified by:
      getBreadcrumbs in interface Database
      Returns:
      the breadcrumbs implementation for this Database, if any
    • addNativeAttribute

      public Boolean addNativeAttribute(String key, Object value)
      Description copied from interface: Database
      If the native integration is enabled and a value is a primitive type, adds a new attribute to the native integration.
      Specified by:
      addNativeAttribute in interface Database
      Parameters:
      key - attribute key
      value - attribute value
      Returns:
      true, if attribute was added to the native report. Otherwise false.
    • start

      public void start()
      Description copied from interface: Database
      Start all database tasks - data storage, timers, file loading
      Specified by:
      start in interface Database
    • getSettings

      public BacktraceDatabaseSettings getSettings()
      Get settings
      Specified by:
      getSettings in interface Database
      Returns:
      current database settings
    • flush

      public void flush()
      Description copied from interface: Database
      Send all reports stored in BacktraceDatabase and clean database
      Specified by:
      flush in interface Database
    • setApi

      public void setApi(Api backtraceApi)
      Specified by:
      setApi in interface Database
    • clear

      public void clear()
      Description copied from interface: Database
      Remove all existing reports in BacktraceDatabase
      Specified by:
      clear in interface Database
    • validConsistency

      public boolean validConsistency()
      Description copied from interface: Database
      Check all database consistency requirements
      Specified by:
      validConsistency in interface Database
      Returns:
      is database has valid consistency requirements
    • add

      public BacktraceDatabaseRecord add(BacktraceReport backtraceReport, Map<String,Object> attributes)
      Description copied from interface: Database
      Add new report to Database
      Specified by:
      add in interface Database
      Returns:
    • add

      public BacktraceDatabaseRecord add(BacktraceReport backtraceReport, Map<String,Object> attributes, boolean isProguardEnabled)
      Description copied from interface: Database
      Add new report to Database
      Specified by:
      add in interface Database
      Returns:
    • get

      Specified by:
      get in interface Database
      Returns:
    • delete

      public void delete(BacktraceDatabaseRecord record)
      Specified by:
      delete in interface Database
    • count

      public int count()
    • getDatabaseSize

      public long getDatabaseSize()
      Description copied from interface: Database
      Get database size
      Specified by:
      getDatabaseSize in interface Database
      Returns: