FRPを使ったアプリを作っていて思ったのですが、StreamはDDDでどう表現すれば良いのでしょうか?
「GitHubから通知を受け取ってMacの通知を送る」ということをやりたいのですが

// stream
let stream = GitHubStream()
stream
    .generateNotificationsStreamAtInterval(10 as NSTimeInterval, since: NSDate())
    .filter { ($0 as Notification).reason == .Mention }
    .filter { ($0 as Notification).subject.isComment() }
    .flattenMap { (notification) in
        let notification = notification as Notification
        return stream.generateCommentStream(
            notification.repository.owner.login,
            repoName: notification.repository.name,
            commentId: notification.subject.commentId!
        )
    }.map { (comment) in
        let comment = comment as Comment
        return UserNotification(
            title: "Hoy",
            subtitle: nil,
            informativeText: comment.body,
            contentImage: NSImage(contentsOfURL: NSURL(string: comment.user.avatarUrl)!),
            identifier: nil,
            openUrl: comment.htmlUrl
        )
    }
    .subscribeNext { (userNotification) in
        let userNotification = userNotification as UserNotification
        userNotification.notify()
    }

ドメイン層なしにこんな感じのコードになっています。
GitHubStreamとUserNotificationはインフラ層になると思うのですが、インフラ層からリアルタイムに流れてくるデータをどのようにドメイン層で扱えば良いのでしょうか。

よろしくお願いいたします。