/** * Register a new option descriptor for use by TubePress. * * @param tubepress_spi_options_OptionDescriptor $optionDescriptor The new option descriptor. * * @return void */ private function _registerOptionDescriptor(tubepress_spi_options_OptionDescriptor $optionDescriptor) { $name = $optionDescriptor->getName(); if (isset($this->_nameToOptionDescriptorMap[$name])) { if ($this->_shouldLog) { $this->_logger->warn($optionDescriptor->getName() . ' is already registered as an option descriptor'); } return; } $optionRegistrationEvent = new tubepress_spi_event_EventBase($optionDescriptor); $eventDispatcher = tubepress_impl_patterns_sl_ServiceLocator::getEventDispatcher(); $eventDispatcher->dispatch(tubepress_api_const_event_EventNames::OPTIONS_DESCRIPTOR_REGISTRATION, $optionRegistrationEvent); $this->_nameToOptionDescriptorMap[$name] = $optionDescriptor; }
private function _noChangeBetweenIncomingAndCurrent($filteredValue, tubepress_spi_options_OptionDescriptor $descriptor) { $boolean = $descriptor->isBoolean(); $currentValue = $this->fetch($descriptor->getName()); if ($boolean) { return (bool) $filteredValue === (bool) $currentValue; } return $currentValue == $filteredValue; }