Consider exchanging `ContentTreeService::publishLocation()` with `LocationManager::createOrUpdate()`. This will also give the user access to the struct callbacks.