X-Git-Url: https://git.mxchange.org/?p=shipsimu.git;a=blobdiff_plain;f=application%2Fship-simu%2Fmain%2Fclass_Merchant.php;h=52982537df6dca49986c1617474392cf06e21f2e;hp=40d2207bf4254604b1dc3bfd1c1b02db1ce352f9;hb=abb8bf6be9f5238f8a4552707bcb190f0dbf0b7a;hpb=2a157996efd680b87b0a84cc95b91619ea6e81d9 diff --git a/application/ship-simu/main/class_Merchant.php b/application/ship-simu/main/class_Merchant.php index 40d2207..5298253 100644 --- a/application/ship-simu/main/class_Merchant.php +++ b/application/ship-simu/main/class_Merchant.php @@ -4,9 +4,9 @@ * * @author Roland Haeder * @version 0.0.0 - * @copyright Copyright(c) 2007, 2008 Roland Haeder, this is free software + * @copyright Copyright (c) 2007, 2008 Roland Haeder, this is free software * @license GNU GPL 3.0 or any newer version - * @link http://www.ship-simu.org + * @link http://www.ship-simu.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 @@ -19,7 +19,7 @@ * 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 . + * along with this program. If not, see . */ class Merchant extends BaseFrameworkSystem { // Name des Haendlers @@ -32,30 +32,16 @@ class Merchant extends BaseFrameworkSystem { private $harborInstance = null; // Konstruktor - private function __construct () { + protected function __construct () { // Call parent constructor - parent::constructor(__CLASS__); - - // Debug message - if (((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) && (defined('DEBUG_CONSTRUCT'))) { - $this->getDebugInstance()->output(sprintf("[%s:%d] Konstruktor erreicht.
\n", - __CLASS__, - __LINE__ - )); - } - - // Set description - $this->setPartDescr("Händler"); - - // Generate unique ID number - $this->createUniqueID(); + parent::__construct(__CLASS__); // Clean up a little $this->removeSystemArray(); } // Haendler mit Namen erzeugen - public static function createMerchant ($merchantName, Harbor $harborInstance) { + public final static function createMerchant ($merchantName, Harbor $harborInstance) { // String absichern $merchantName = (string) $merchantName; @@ -64,7 +50,7 @@ class Merchant extends BaseFrameworkSystem { // Debug message if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) { - $merchantInstance->getDebugInstance()->output(sprintf("[%s:%d] Ein Händler %s wird angelegt und soll sich am %s niederlassen.
\n", + $merchantInstance->debugOutput(sprintf("[%s:%d] Ein Händler %s wird angelegt und soll sich am %s niederlassen.", __CLASS__, __LINE__, $merchantName, @@ -87,120 +73,38 @@ class Merchant extends BaseFrameworkSystem { // Initialize pricing list private function createPriceList () { - if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Der Händler %s erhält eine leere Preisliste.
\n", - __CLASS__, - __LINE__, - $this->getMerchantName() - )); - $this->priceList = new FrameworkArrayObject(); + $this->priceList = new FrameworkArrayObject("FakedPriceList"); } // Setter for merchant name public final function setMerchantName ($merchantName) { - // Secure string - $merchantName = (string) $merchantName; - // Debug message - if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Der Händlername %s ist nun bekannt.
\n", - __CLASS__, - __LINE__, - $merchantName - )); - $this->merchantName = $merchantName; + $this->merchantName = (string) $merchantName; } // Getter for merchant name public final function getMerchantName () { - if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Der Händlername %s wird verlangt.
\n", - __CLASS__, - __LINE__, - $this->merchantName - )); return $this->merchantName; } // Setter for harbor instance public final function setHarborInstance (Harbor $harborInstance) { - if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Der Händler %s lässt sich am %s nieder.
\n", - __CLASS__, - __LINE__, - $this->getMerchantName(), - $harborInstance->getHarborName() - )); $this->harborInstance = $harborInstance; } // Getter for harbor instance public final function getHarborInstance () { - if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Der Händler %s hat sich am %s niedergelassen.
\n", - __CLASS__, - __LINE__, - $this->getMerchantName(), - $harborInstance->getHarborName() - )); return $this->harborInstance; } // Add new item to merchant's price list - public function addItemToPriceList (ItemIsTradeable $itemInstance, $price) { - // Secure pricing - $price = (float) $price; - - // Debug message - if ((defined('DEBUG_MERCHANT')) || (defined('DEBUG_ALL'))) $this->getDebugInstance()->output(sprintf("[%s:%d] Der Händler %s kann nun das Schiffsteil %s "%s" zu %s verkaufen.
\n", - __CLASS__, - __LINE__, - $this->getMerchantName(), - $itemInstance->__toString(), - $itemInstance->getPartDescr(), - $this->formatCurrency($price) - )); - - // Construct pricing item and add it to the list - $this->priceList->append(array( - 'item' => $itemInstance, - 'price' => $price - )); - - // Remove price attribute - $itemInstance->removePrice(); + public function addItemToPriceList (TradeableItem $itemInstance, $price) { + $this->makeDeprecated(); } // Get a price from the merchant's list - public final function getPriceFromList (ItemIsTradeable $itemInstance) { - $price = 0; - - // Iterate throw whole list - for ($iter = $this->priceList->getIterator(); $iter->valid(); $iter->next()) { - // Get current item - $item = $iter->current(); - - // Does this item match? The unique ID may not work... - if ($item['item']->itemMatches($itemInstance)) { - // Extract price and stop searching - $price = $item['price']; - break; - } - } - - // Was the item found? - if ($price === 0) { - // Throw exception - throw new ItemNotInPriceListException($itemInstance, self::EXCEPTION_ITEM_NOT_IN_PRICE_LIST); - } - - // Return price - return $price; - } - - /** - * Stub! - */ - public function saveObjectToDatabase () { - $this->getDebugInstance()->output(sprintf("[%s:] Stub %s erreicht.", - $this->__toString(), - __FUNCTION__ - )); + public final function getPriceFromList (TradeableItem $itemInstance) { + $this->makeDeprecated(); } }