domainbus refactoring