Example #1
0
 /**
  * Build a plan entity based on a json-decoded plan stdClass
  *
  * @param  stdClass $response The plan data
  * @return Syspay_Merchant_Entity_Plan The plan object
  */
 public static function buildFromResponse(stdClass $response)
 {
     $plan = new self();
     $plan->setId(isset($response->id) ? $response->id : null);
     $plan->setStatus(isset($response->status) ? $response->status : null);
     $plan->setName(isset($response->name) ? $response->name : null);
     $plan->setDescription(isset($response->description) ? $response->description : null);
     $plan->setCurrency(isset($response->currency) ? $response->currency : null);
     $plan->setTrialAmount(isset($response->trial_amount) ? $response->trial_amount : null);
     $plan->setTrialPeriod(isset($response->trial_period) ? $response->trial_period : null);
     $plan->setTrialPeriodUnit(isset($response->trial_period_unit) ? $response->trial_period_unit : null);
     $plan->setTrialCycles(isset($response->trial_cycles) ? $response->trial_cycles : null);
     $plan->setBillingAmount(isset($response->billing_amount) ? $response->billing_amount : null);
     $plan->setBillingPeriod(isset($response->billing_period) ? $response->billing_period : null);
     $plan->setBillingPeriodUnit(isset($response->billing_period_unit) ? $response->billing_period_unit : null);
     $plan->setBillingCycles(isset($response->billing_cycles) ? $response->billing_cycles : null);
     $plan->setInitialAmount(isset($response->initial_amount) ? $response->initial_amount : null);
     $plan->setRetryMapId(isset($response->retry_map_id) ? $response->retry_map_id : null);
     $plan->setType(isset($response->type) ? $response->type : null);
     if (isset($response->created) && !is_null($response->created)) {
         $plan->setCreated(Syspay_Merchant_Utils::tsToDateTime($response->created));
     }
     return $plan;
 }