*
* @author Roland Haeder <webmaster@ship-simu.org>
* @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 Hub Developer Team
+ * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
* @license GNU GPL 3.0 or any newer version
* @link http://www.ship-simu.org
*
protected function __construct () {
// Call parent constructor
parent::__construct(__CLASS__);
+
+ // Set listener type
+ $this->setListenerType('hub');
}
/**
* @param $listenerInstance A Listener instance
* @return $decoratorInstance An instance a prepared listener decorator class
*/
- public final static function createHubUdpListenerDecorator (Listenable $listenerInstance) {
+ public static final function createHubUdpListenerDecorator (Listenable $listenerInstance) {
// Get new instance
$decoratorInstance = new HubUdpListenerDecorator();
*
* @return void
*/
- public function initListener() {
+ public function initListener () {
$this->partialStub('WARNING: This method should not be called.');
}
*
* @return void
*/
- public function doListen() {
+ public function doListen () {
// Handle generic UDP package first
$this->getListenerInstance()->doListen();
// Handle hub UDP package
$this->partialStub('Need to handle hub UDP package.');
}
+
+ /**
+ * Checks whether the listener would accept the given package data array
+ *
+ * @param $packageData Raw package data
+ * @return $accepts Whether this listener does accept
+ */
+ public function ifListenerAcceptsPackageData (array $packageData) {
+ // Get a tags instance
+ $tagsInstance = PackageTagsFactory::createPackageTagsInstance();
+
+ // So is the package accepted with this listener?
+ $accepts = $tagsInstance->ifPackageDataIsAcceptedByListener($packageData, $this);
+
+ // Return the result
+ return $accepts;
+ }
}
// [EOF]