Flexbase
  • Flexbase
  • Introduction
  • #JoyofCoding with Flexbase
  • Core Concepts
    • Flexbase
    • Flexstudio
      • Commands & Events
  • Thinking in Flexbase
    • Features and Modules
    • Designing APIs using Flexbase Control Flow
  • Sample Application
  • Solution Structure
    • Getting Started
      • Application
        • Introduction to Solution
        • Demo - Solution Generation
        • Solution Structure Overview
        • Architecture Overview
        • Clean architecture layer
        • Common Configurations
      • Features
        • Understanding Feature
        • Use Case
        • First Feature - Add Customer
        • Second Feature - Update Customer
        • Third Feature - Delete Customer
        • Query Features
  • Input Output Models
  • Messages
  • Domain
  • Pre Bus
  • Post Bus
  • Subscribers
  • Bus Gamma
  • Persistence
  • Hosting
  • Startup Code - WebAPI
  • Startup Code - Background Job
  • Endpoint - AppSettings
  • Bridge
  • Basic CRUD - Insert & Update
  • Introduction
  • View Generated API Definition in Swagger
  • Walkthrough Generated Code Insert
  • Walkthrough Generated Code Query GetById
  • Domain Model
  • Migration
  • AppSettings
  • Bus : How Basic Routing Config Works
  • INSERT : Input API Model
  • INSERT : Attribute Validation
  • INSERT : Plugin Validation
  • INSERT : Mapper
  • INSERT : Controller
  • INSERT : Services
  • INSERT : PostBus Handler
  • INSERT : PostBus Subscriber
  • INSERT : Demo In Action
  • QUERY : Output API Model
  • QUERY : Build and Fetch Pattern
  • QUERY : Demo In Action
  • Basic CRUD 2
    • Introduction
    • View Generated API Definition In Swagger
  • Walkthrough Generated Code Update
  • Walkthrough Generated Code Delete
  • Walkthrough Generated Code GetList
  • Walkthrough Generated Code Get Paged List
  • Update In Action
  • Delete In Action
  • GetList In Action
  • GetPagedList In Action
  • Konarch
Powered by GitBook
On this page

Bus Gamma

Flexbase Solution Structure

PreviousSubscribersNextPersistence

Last updated 4 years ago

The first one in the infrastructure layer that we will look at is the Bus. The bus has been configured by default as BusGamma which is an implementation of NserviceBus.

The first thing that needs your attention is the Flex GammaServiceBusBridge, which is inherited from Flex BusGamma, and IFlexServiceBusBridge. This lets you use the bus in a decoupled way. If you notice here, it uses the EndpointConfiguration of NServiceBus.

We have by default three Endpoint configuration for you. One is the LearningBusConfiguration, that implements and inherits from FlexBusGammaDefaultEndpointConfiguration, which in turn is inherited from the EndpointConfiguration. Here the persistence is learning persistence and learning transport as provided by NServiceBus.

FlexBusGammaDefaultEndpointConfiguration will configure some of the default settings for you to use FlexBase objects by default.

Then we have AzureBusConfiguration. We have by default configured azure storage queue and azure storage persistence.

Then we have OnPremiseBusConfiguration also which uses SQLServer as a persistence and RabbitMQ as a transport.

You can go deeper into NserviceBus and other configuration information at a later stage.

The BusGammaServiceBus is configured at the StartUp configurations, which is being used as BusGammaServiceBusBridge by the IFlexServiceBusBridge to initialize the container with the bus.

You're free to configure as per your needs and requirements.

We will get more in-depth about the buses in later sections.