@internal @mustCallSuper Future<bool> onPublish() async { if (_published) { // already published return false; } logger.fine('$objectId.publish()'); _published = true; return true; }