cmdr 1.0.1 copy "cmdr: ^1.0.1" to clipboard
cmdr: ^1.0.1 copied to clipboard

Dart package that provides a lightweight implementation of the Mediator pattern tailored for Command Query Responsibility Segregation (CQRS) applications.

cdmr(Commander ) #

cmdr is a Dart package that provides a lightweight implementation of the Mediator pattern tailored for Command Query Responsibility Segregation (CQRS) applications.

Installation Add cmdr to your pubspec.yaml file:

Installation #

To use cmdr in your Dart project, add it to your pubspec.yaml file:

dependencies:
  cmdr: ^1.0.0

then run:

   dart pub get

Usage/Examples #

Importing the package #

import 'package:cmdr/cmdr.dart';

Creating a Mediator #

var mediator = Mediator();

Registering Handlers #

class MyCommandHandler CommandHandler<MyQuery,dynamic>  {
  Future<void> handle(MyCommand command) async {
    // Command handling logic
  }
}

class MyQueryHandler extends QueryHandler<MyQuery,dynamic> {
  Future<Result> handle(MyQuery query) async {
    // Query handling logic
  }
}

var commandHandler = MyCommandHandler();
var queryHandler = MyQueryHandler();

mediator.registerHandler(MyCommand, commandHandler);
mediator.registerHandler(MyQuery, queryHandler);

Sendind Requests #

var command = MyCommand();
var query = MyQuery();

await mediator.send(command);
var result = await mediator.send(query);

API Reference #

Mediator

Registers a handler for a specific type of command or query.

 void registerHandler(Type type, dynamic handler)

type: The type of command or query.

handler: The handler responsible for handling commands or queries of the specified type.

send

Sends a command or query to the registered handler.

Future<dynamic> send(dynamic request)

request: The command or query to be sent to the handler.

Examples #

For more detailed examples, please refer to the example directory.

Contributing #

If you encounter any issues or have suggestions for improvements, feel free to open an issue or submit a pull request in the GitHub repository.

License #

MIT

3
likes
150
points
53
downloads

Publisher

verified publisherildeberto.com

Weekly Downloads

Dart package that provides a lightweight implementation of the Mediator pattern tailored for Command Query Responsibility Segregation (CQRS) applications.

Homepage
Repository (GitHub)
View/report issues

Topics

#cqrs #mediator #mediatr #command #query

Documentation

API reference

License

MIT (license)

More

Packages that depend on cmdr