/** * @param KalturaSystemPartnerLimitType $type * @param Partner $partner * @return KalturaSystemPartnerLimit */ public static function fromPartner($type, Partner $partner) { $limit = new KalturaSystemPartnerLimit(); $limit->type = $type; switch ($type) { case KalturaSystemPartnerLimitType::ACCESS_CONTROLS: $limit->max = $partner->getAccessControls(); break; case KalturaSystemPartnerLimitType::LIVE_STREAM_INPUTS: $limit->max = $partner->getMaxLiveStreamInputs(); break; case KalturaSystemPartnerLimitType::LIVE_STREAM_OUTPUTS: $limit->max = $partner->getMaxLiveStreamOutputs(); break; case KalturaSystemPartnerLimitType::USER_LOGIN_ATTEMPTS: $limit->max = $partner->getMaxLoginAttempts(); break; } return $limit; }
/** * @param KalturaSystemPartnerLimitType $type * @param Partner $partner * @return KalturaSystemPartnerLimit */ public static function fromPartner($type, Partner $partner) { $limit = new KalturaSystemPartnerOveragedLimit(); $limit->type = $type; switch ($type) { case KalturaSystemPartnerLimitType::ENTRIES: $limit->max = $partner->getEntriesQuota(); $limit->overagePrice = $partner->getEntriesOveragePrice(); $limit->overageUnit = $partner->getEntriesOverageUnit(); break; case KalturaSystemPartnerLimitType::MONTHLY_STREAM_ENTRIES: $limit->max = $partner->getStreamEntriesQuota(); $limit->overagePrice = $partner->getStreamEntriesOveragePrice(); $limit->overageUnit = $partner->getStreamEntriesOverageUnit(); break; case KalturaSystemPartnerLimitType::MONTHLY_BANDWIDTH: $limit->max = $partner->getBandwidthQuota(); $limit->overagePrice = $partner->getBandwidthOveragePrice(); $limit->overageUnit = $partner->getBandwidthOverageUnit(); break; case KalturaSystemPartnerLimitType::PUBLISHERS: $limit->max = $partner->getPublishersQuota(); $limit->overagePrice = $partner->getPublishersOveragePrice(); $limit->overageUnit = $partner->getPublishersOverageUnit(); break; case KalturaSystemPartnerLimitType::LOGIN_USERS: $limit->max = $partner->getLoginUsersQuota(); $limit->overagePrice = $partner->getLoginUsersOveragePrice(); $limit->overageUnit = $partner->getLoginUsersOverageUnit(); break; case KalturaSystemPartnerLimitType::ADMIN_LOGIN_USERS: $limit->max = $partner->getAdminLoginUsersQuota(); $limit->overagePrice = $partner->getAdminLoginUsersOveragePrice(); $limit->overageUnit = $partner->getAdminLoginUsersOverageUnit(); break; case KalturaSystemPartnerLimitType::USER_LOGIN_ATTEMPTS: $limit->max = $partner->getMaxLoginAttempts(); $limit->overagePrice = $partner->getMaxLoginAttemptsOveragePrice(); $limit->overageUnit = $partner->getMaxLoginAttemptsOverageUnit(); break; case KalturaSystemPartnerLimitType::BULK_SIZE: $limit->max = $partner->getMaxBulkSize(); $limit->overagePrice = $partner->getMaxBulkSizeOveragePrice(); $limit->overageUnit = $partner->getMaxBulkSizeOverageUnit(); break; case KalturaSystemPartnerLimitType::MONTHLY_STORAGE: $limit->max = $partner->getMonthlyStorage(); $limit->overagePrice = $partner->getMonthlyStorageOveragePrice(); $limit->overageUnit = $partner->getMonthlyStorageOverageUnit(); break; case KalturaSystemPartnerLimitType::MONTHLY_STORAGE_AND_BANDWIDTH: $limit->max = $partner->getMonthlyStorageAndBandwidth(); $limit->overagePrice = $partner->getMonthlyStorageAndBandwidthOveragePrice(); $limit->overageUnit = $partner->getMonthlyStorageAndBandwidthOverageUnit(); break; case KalturaSystemPartnerLimitType::END_USERS: $limit->max = $partner->getEndUsers(); $limit->overagePrice = $partner->getEndUsersOveragePrice(); $limit->overageUnit = $partner->getEndUsersOverageUnit(); break; default: return parent::fromPartner($type, $partner); } return $limit; }