using guava's event bus