function run() { $mediator = Scalr_Integration_ZohoCrm_Mediator::getDefaultMediator(); if (!$mediator) { throw new Scalr_Integration_Exception("No default mediator configured"); } switch ($this->operation) { case self::OP_CREATE_CLIENT: $client = Client::Load($this->params["clientId"]); $mediator->addClient($client); break; case self::OP_UPDATE_CLIENT: $client = Client::Load($this->params["clientId"]); $mediator->updateClient($client, $this->params["skipRelations"]); break; case self::OP_DELETE_CLIENT: $mediator->deleteClient($this->params["deletedClient"]); break; case self::OP_ADD_PAYMENT: $client = Client::Load($this->params["clientId"]); $mediator->addPayment($client, $this->params["invoiceId"]); break; default: throw new Scalr_Integration_Exception("No handler for operation '{$this->operation}'"); } }
/** * @param Scalr_Integration_ZohoCrm_Mediator $defaultMediator * @return void */ static function setDefaultMediator($defaultMediator) { self::$defaultMediator = $defaultMediator; }