public function __construct(Listing $listing, IListingDescriptionControlFactory $listingDescriptionControlFactory, ItemFacade $itemFacade) { $listing->checkEntityState(); $this->listing = $listing; $this->listingDescriptionControlFactory = $listingDescriptionControlFactory; $this->itemFacade = $itemFacade; }
public function __construct(Listing $listing, IItemsTableControlFactory $itemsTableControlFactory, ListingFacade $listingFacade, ItemFacade $itemFacade, User $user) { $listing->checkEntityState(); $this->listing = $listing; $this->itemsTableControlFactory = $itemsTableControlFactory; $this->listingFacade = $listingFacade; $this->itemFacade = $itemFacade; $this->user = $user; }
/** * @param Listing $listing */ public function setListing(Listing $listing) { $listing->checkEntityState(); $listingDaysInMonth = $listing->getNumberOfDaysInMonth(); if (isset($this->day) and $this->day > $listingDaysInMonth) { throw new InvalidArgumentException('Day of ListingItem exceed last day in Listing period.'); } $this->assignEntityToProperty($listing, 'listing'); }
/** * @param Listing $listing * @return ListingItemDecorator[] */ public function generateEntireTable(Listing $listing) { $listing->checkEntityState(); $collectionOfDecorators = $this->createListingItemDecoratorsCollection($listing->listingItems); return $this->itemService->generateListingItemDecoratorsForEntireTable($collectionOfDecorators, $listing->getPeriod()); }