*/
class WebDefaultNewsController extends BaseController implements Controller {
/**
- * Instance of a CommandResolver class
- */
- private $resolverInstance = null;
-
- /**
- * Private constructor
+ * Protected constructor
*
* @return void
*/
parent::__construct(__CLASS__);
// Set part description
- $this->setObjectDescription("Standart-Controller mit News-Auflistung");
+ $this->setObjectDescription("Default controller with news");
// Create unique ID number
$this->createUniqueID();
-
- // Clean up a little
- $this->removeSystemArray();
}
/**
return $controllerInstance;
}
- /**
- * Setter for a command resolver instance
- *
- * @param $resolverInstance An instance of a command resolver class
- * @return void
- */
- public final function setResolverInstance (CommandResolver $resolverInstance) {
- $this->resolverInstance = $resolverInstance;
- }
-
/**
* Handles the given request and response
*
*/
public function handleRequest (Requestable $requestInstance, Responseable $responseInstance) {
// Get the command instance from the resolver by sending a request instance to the resolver
- $commandInstance = $this->resolverInstance->resolvCommandByRequest($requestInstance);
-
- // Get the news page variable from the request instance
- $newsPage = $requestInstance->getRequestElement("news_page");
+ $commandInstance = $this->getResolverInstance()->resolvCommandByRequest($requestInstance);
// Load the news here
- $this->loadNews($newsPage);
+ $this->loadNewsByRequest($requestInstance);
+
+ // This request was valid! :-D
+ $requestInstance->requestIsValid();
// Execute the command
$commandInstance->execute($requestInstance, $responseInstance);
}
/**
- * Loads news from the connected database for later usage
+ * Loads news by a given request
*
- * @param $newsPage Page of listed news we want to read
+ * @param $requestInstance An instance of a request class
* @return void
*/
- private function loadNews ($newsPage) {
+ private function loadNewsByRequest (Requestable $requestInstance) {
+ // Generate a new news object but not carring about which concrete we have
+ $newsInstance = WebNewsFactory::createFactoryByRequest($requestInstance)->createNewsObject();
}
}