set topic as a property setter

This is weird to read a property but to have to call a function to set
it.