public function createScalingRuleAction($farmRoleId)
{
$farmRole = $this->getFarmRole($farmRoleId, null, true);
$object = $this->request->getJsonBody();
if (!is_object($object)) {
throw new ApiErrorException(400, ErrorMessage::ERR_INVALID_STRUCTURE, "Invalid body");
}
/* @var $scalingRuleAdapter ScalingRuleAdapter */
$scalingRuleAdapter = $this->adapter($object);
//Pre validates the request object
$scalingRuleAdapter->validateObject($object, Request::METHOD_POST);
/* @var $scalingRule FarmRoleScalingMetric */
$scalingRule = $scalingRuleAdapter->toEntity($object);
$scalingRule->farmRoleId = $farmRoleId;
$scalingRuleAdapter->validateEntity($scalingRule);
$scalingRule->save();
//Responds with 201 Created status
$this->response->setStatus(201);
return $this->result(FarmRoleAdapter::getScalingConfiguration($farmRole));
}