CommandBus 0.0.7

CommandBus 0.0.7

测试测试
语言语言 SwiftSwift
许可证 MIT
发布最新版本2015年10月
SPM支持 SPM

Lucas Ortis 维护。



  • Lucas Ortis

CommandBus

一个使用 Swift 编写的轻量级 Command Bus 实现

CommandBus?

Command Bus 的想法是创建代表您应用程序要执行的操作的命令对象。然后,您将其投入总线,并确保命令对象到达它需要去的地方。

因此,命令进入 -> 总线将其委托给处理程序 -> 然后,处理程序实际上执行工作。命令本质上代表了对您的应用程序层的调用。

更多信息请参阅这里

安装

用法

  • 首先,您需要创建一个 json 映射文件,以便将您的命令与其处理程序关联起来。
{
    "{CommandNameA}": "{CommandHandlerNameA}",
    "{CommandNameB}": "{CommandHandlerNameB}",
    "{CommandNameC}": "{CommandHandlerNameC}"
}
  • 然后,您可以创建您的命令并将它注入到总线上。
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        /*** Register to the Command event ***/
        NSNotificationCenter.defaultCenter().addObserver(self, selector: "onCommandHandled:", name:"COMMAND_DONE", object: nil)

        /*** Create the CommandBus ***/
        let commandBus: CommandBus = CommandBus(configurationFileName: "configuration")!

        /*** Create your own Command ***/
        let customCommand: CustomCommand = CustomCommand()

        /*** Send your command to the CommandBus with your event name ***/
        commandBus.handle(command: customCommand, commandHandledEvent: "COMMAND_DONE")
    }

    func onCommandHandled(notification: NSNotification) {
        /*** This method is called when the CommandHandler have done ***/
        print("Command Handled: \(notification.object!)")
    }
}

您还可以查看示例项目

作者

Ekhoo

许可证

CommandBus 在 MIT 许可下提供。有关更多信息,请参阅 LICENSE 文件。