public function acceptValue(APILimitationValue $limitationValue)
{
if (!$limitationValue instanceof APIParentUserGroupLimitation) {
throw new InvalidArgumentType('$limitationValue', 'APIParentUserGroupLimitation', $limitationValue);
} elseif (!is_array($limitationValue->limitationValues)) {
throw new InvalidArgumentType('$limitationValue->limitationValues', 'array', $limitationValue->limitationValues);
}
foreach ($limitationValue->limitationValues as $key => $value) {
// Accept a true value for b/c with 5.0
if ($value === true) {
$limitationValue->limitationValues[$key] = 1;
} elseif (is_string($value) && ctype_digit($value)) {
// Cast integers passed as string to int
$limitationValue->limitationValues[$key] = (int) $value;
} elseif (!is_int($value)) {
throw new InvalidArgumentType("\$limitationValue->limitationValues[{$key}]", 'int', $value);
}
}
}