/** * @param Partner $partner */ public function apply(Partner $partner) { if ($this->isNull('max')) { $this->max = null; } if ($this->isNull('overagePrice')) { $this->overagePrice = null; } if ($this->isNull('overageUnit')) { $this->overageUnit = null; } switch ($this->type) { case KalturaSystemPartnerLimitType::ENTRIES: $partner->setEntriesQuota($this->max); $partner->setEntriesOveragePrice($this->overagePrice); $partner->setEntriesOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::MONTHLY_STREAM_ENTRIES: $partner->setStreamEntriesQuota($this->max); $partner->setStreamEntriesOveragePrice($this->overagePrice); $partner->setStreamEntriesOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::MONTHLY_BANDWIDTH: $partner->setBandwidthQuota($this->max); $partner->setBandwidthOveragePrice($this->overagePrice); $partner->setBandwidthOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::PUBLISHERS: $partner->setPublishersQuota($this->max); $partner->setPublishersOveragePrice($this->overagePrice); $partner->setPublishersOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::LOGIN_USERS: $partner->setLoginUsersQuota($this->max); $partner->setLoginUsersOveragePrice($this->overagePrice); $partner->setLoginUsersOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::ADMIN_LOGIN_USERS: $partner->setAdminLoginUsersQuota($this->max); $partner->setAdminLoginUsersOveragePrice($this->overagePrice); $partner->setAdminLoginUsersOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::BULK_SIZE: $partner->setMaxBulkSize($this->max); $partner->setMaxBulkSizeOveragePrice($this->overagePrice); $partner->setMaxBulkSizeOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::MONTHLY_STORAGE: $partner->setMonthlyStorage($this->max); $partner->setMonthlyStorageOveragePrice($this->overagePrice); $partner->setMonthlyStorageOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::MONTHLY_STORAGE_AND_BANDWIDTH: $partner->setMonthlyStorageAndBandwidth($this->max); $partner->setMonthlyStorageAndBandwidthOveragePrice($this->overagePrice); $partner->setMonthlyStorageAndBandwidthOverageUnit($this->overageUnit); break; case KalturaSystemPartnerLimitType::END_USERS: $partner->setEndUsers($this->max); $partner->setEndUsersOveragePrice($this->overagePrice); $partner->setEndUsersOverageUnit($this->overageUnit); break; } parent::apply($partner); }