/** * @param Feature $feature */ public function addFeature(Feature $feature) { if ($feature->isEnabledByDefault()) { FeatureSettingsExtensions::enableFeatureByDefault(get_class($feature), $this->settings); } $this->features[] = $feature; }
/** * This is where subclasses declare what storage types they support together with * the initializers for those types. */ public function formalize() { $this->supports(StorageType::OUTBOX(), function (Settings $s) { FeatureSettingsExtensions::enableFeatureByDefault(InMemoryOutboxPersistenceFeature::class, $s); }); }