factory/

directory
v1.0.0-dev.217 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 4, 2025 License: MIT

README

Factory

The Factory package implements the Factory design pattern for various components of the Boost framework, facilitating the creation and configuration of complex objects. This package is fundamental to the modular and extensible architecture of the framework.

Overview

Factory provides a standardized approach to instantiate objects, allowing client code to request objects without knowing the specific details of how they are created. This promotes decoupling between components and facilitates system extensibility.

Main Components

Core

The core subpackage contains factory implementations for fundamental system components, organized into categories:

  • Database: Factories for database connections and operations
  • Net: Components related to networks and communication
  • Time: Utilities related to time and scheduling
Contrib

The contrib directory contains factory implementations for integration with third-party libraries and frameworks, including:

  • gRPC: For communication between services
  • Google Cloud Platform (GCP): Integration with GCP services
  • Confluent: For working with Apache Kafka
  • Ollama: Integration with AI models
  • Spf13/Cobra: For creating command-line interfaces
Local

The local subpackage provides specific implementations for local use or development environments, facilitating testing and rapid prototyping.

How to Use

To use the Factory package in your application:

  1. Import the specific subpackage that contains the desired factory
  2. Configure the necessary parameters
  3. Use the factory to create instances of the required objects

Integration with Other Packages

The Factory integrates with other components of the Boost framework:

  • Bootstrap: For application initialization
  • Wrapper: For configuration and logging
  • Model: For data structure definitions

Extensibility

The Factory package was designed to be easily extensible. To add support for new libraries or frameworks:

  1. Create a new subpackage in contrib with the name of the library
  2. Implement the necessary factory interfaces
  3. Add appropriate tests and documentation

Contribution

Contributions to the Factory package are welcome. When contributing, make sure to follow the code standards and add appropriate tests for new functionalities.

Directories

Path Synopsis
contrib
go-resty/resty/v2/plugins/contrib/dubonzi/otelresty/v1
This package implements integration between the go-resty (https://github.com/go-resty/resty) library and OpenTelemetry.
This package implements integration between the go-resty (https://github.com/go-resty/resty) library and OpenTelemetry.
go.mongodb.org/mongo-driver/v1/plugins/contrib/go.opentelemetry.io/contrib/v0
This package implements integration between the official go mongodb driver (https://github.com/mongodb/mongo-go-driver) and OpenTelemetry.
This package implements integration between the official go mongodb driver (https://github.com/mongodb/mongo-go-driver) and OpenTelemetry.
go.mongodb.org/mongo-driver/v2/plugins/contrib/go.opentelemetry.io/contrib/v0
This package implements integration between the official go mongodb driver (https://github.com/mongodb/mongo-go-driver) and OpenTelemetry.
This package implements integration between the official go mongodb driver (https://github.com/mongodb/mongo-go-driver) and OpenTelemetry.
labstack/echo/v4/plugins/contrib/go.opentelemetry.io/contrib/v0
This package implements integration between echo (https://github.com/labstack/echo) and OpenTelemetry.
This package implements integration between echo (https://github.com/labstack/echo) and OpenTelemetry.
core
local

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL