+++ /dev/null
-<?php
-/**
- * A Direct recipient
- *
- * @author Roland Haeder <webmaster@shipsimu.org>
- * @version 0.0.0
- * @copyright Copyright (c) 2007, 2008 Roland Haeder, 2009 - 2015 Hub Developer Team
- * @license GNU GPL 3.0 or any newer version
- * @link http://www.shipsimu.org
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-class DirectRecipient extends BaseRecipient implements Recipient {
- /**
- * Protected constructor
- *
- * @return void
- */
- protected function __construct () {
- // Call parent constructor
- parent::__construct(__CLASS__);
- }
-
- /**
- * Creates an instance of this class
- *
- * @return $recipientInstance An instance of a Recipient class
- */
- public final static function createDirectRecipient () {
- // Get new instance
- $recipientInstance = new DirectRecipient();
-
- // Return the prepared instance
- return $recipientInstance;
- }
-
- /**
- * Tries to resolve given recipient into session ids or Universal Node Locator
- * depending on implementation (hint: Template Method Pattern)
- *
- * @param $recipient Recipient to resolve (e.g. could be a virtual recipient or direct session id)
- * @param $listInstance An instance of a Listable class
- * @param $packageData Valid package data array
- * @return $resolved Resolved recipient or VOID if only the set list has been filled
- * @throws FrameworkException Could throw different exceptions depending on implementation
- */
- public function resolveRecipient ($recipient, Listable $listInstance, array $packageData) {
- // Debug message
- //* NOISY-DEBUG: */ self::createDebugInstance(__CLASS__)->debugOutput('DIRECT-RECIPIENT[' . __METHOD__ . ':' . __LINE__ . ']: recipient=' . $recipient);
-
- // "Explode" all recipients
- $recipients = explode(NetworkPackage::PACKAGE_RECIPIENT_SEPARATOR, $recipient);
-
- // Is maximum reached?
- assert(count($recipients) <= $this->getConfigInstance()->getConfigEntry('package_recipient_max_count'));
-
- // Try it on all
- foreach ($recipients as $recipient) {
- // Try to sole a single recipient
- $unlData = HubTools::resolveSessionId($recipient);
-
- // Add it as recipient
- $listInstance->addEntry('unl', $unlData);
- } // END - foreach
- }
-}
-
-// [EOF]
-?>