Module: Startback

Includes:
Errors
Defined in:
lib/startback.rb,
lib/startback/event.rb,
lib/startback/model.rb,
lib/startback/errors.rb,
lib/startback/context.rb,
lib/startback/support.rb,
lib/startback/version.rb,
lib/startback/web/api.rb,
lib/startback/services.rb,
lib/startback/event/bus.rb,
lib/startback/operation.rb,
lib/startback/audit/span.rb,
lib/startback/web/shield.rb,
lib/startback/event/agent.rb,
lib/startback/support/env.rb,
lib/startback/audit/shared.rb,
lib/startback/audit/tracer.rb,
lib/startback/event/engine.rb,
lib/startback/caching/store.rb,
lib/startback/support/hooks.rb,
lib/startback/support/world.rb,
lib/startback/web/catch_all.rb,
lib/startback/caching/logger.rb,
lib/startback/support/logger.rb,
lib/startback/web/middleware.rb,
lib/startback/web/prometheus.rb,
lib/startback/audit/middleware.rb,
lib/startback/audit/prometheus.rb,
lib/startback/caching/no_store.rb,
lib/startback/support/redactor.rb,
lib/startback/web/auto_caching.rb,
lib/startback/web/cors_headers.rb,
lib/startback/web/health_check.rb,
lib/startback/audit/ext/context.rb,
lib/startback/audit/null_tracer.rb,
lib/startback/caching/listeners.rb,
lib/startback/context/h_factory.rb,
lib/startback/event/ext/context.rb,
lib/startback/audit/trace_logger.rb,
lib/startback/caching/prometheus.rb,
lib/startback/context/middleware.rb,
lib/startback/support/robustness.rb,
lib/startback/event/ext/operation.rb,
lib/startback/support/data_object.rb,
lib/startback/support/fake_logger.rb,
lib/startback/caching/entity_cache.rb,
lib/startback/event/bus/bunny/async.rb,
lib/startback/event/bus/memory/sync.rb,
lib/startback/support/log_formatter.rb,
lib/startback/audit/operation_tracer.rb,
lib/startback/event/bus/memory/async.rb,
lib/startback/support/operation_runner.rb,
lib/startback/operation/error_operation.rb,
lib/startback/operation/multi_operation.rb,
lib/startback/support/transaction_policy.rb,
lib/startback/support/transaction_manager.rb

Overview

Provides a reusable backend framework for backend components written in ruby.

The framework installs conventions regarding:

  • The exposition of web service APIs (Framework::Api, on top of Sinatra)

  • Operations (Framework::Operation)

  • Error handling (Framework::Errors) and their handling in web APIs (based on Rack::Robustness)

  • General code support (Framework::Support modules & classes).

Please refer to the documentation of those main abstractions for details.

Defined Under Namespace

Modules: Audit, Caching, Errors, Support, Version, Web Classes: Context, Event, Model, Operation, Services

Constant Summary collapse

LOGGER =

Logger instance to use for the application

::Startback::Support::Logger.new
VERSION =
"#{Version::MAJOR}.#{Version::MINOR}.#{Version::TINY}"

Class Method Summary collapse

Methods included from Errors

bad_request_error!, conflict_error!, expectation_failed_error!, forbidden_error!, gone_error!, internal_server_error!, locked_error!, method_not_allowed_error!, not_acceptable_error!, not_found_error!, not_implemented_error!, precondition_failed_error!, precondition_required_error!, server_error!, unauthorized_error!, unsupported_media_type_error!, user_error!

Class Method Details

._!(path) ⇒ Object

Simply checks that a path exists of raise an error



25
26
27
28
29
# File 'lib/startback.rb', line 25

def self._!(path)
  Path(path).tap do |p|
    raise "Missing #{p.basename}." unless p.exists?
  end
end