Topic storeTopic(TopicModel model, ClientState clientState, Directives directives) {
   setDefaults(model);
   dms.storage.createTopic(model);
   associateWithTopicType(model.getId(), model.getTypeUri());
   //
   AttachedTopic topic = new AttachedTopic(model, dms);
   topic.storeValue(clientState, directives);
   //
   return topic;
 }
 /** Low-level method. Used for bootstrapping. */
 void _createTopic(TopicModel model) {
   // Note: low-level (storage) call used here ### explain
   dms.storage.createTopic(model);
   dms.storage.setTopicValue(model.getId(), model.getSimpleValue());
 }