public static function factory($data) { if (is_a($data, "Phidias\\Api\\AccessControl")) { return $data; } $retval = new AccessControl(); if ($data === "full") { return $retval->allowFull(); } if (!is_array($data)) { return $retval; } if (isset($data["allow-origin"])) { $retval->allowOrigin($data["allow-origin"]); } if (isset($data["allow-credentials"])) { $retval->allowCredentials($data["allow-credentials"]); } if (isset($data["allow-headers"])) { $retval->allowHeaders((array) $data["allow-headers"]); } if (isset($data["allow-methods"])) { $retval->allowMethods((array) $data["allow-methods"]); } if (isset($data["expose-headers"])) { $retval->exposeHeaders((array) $data["expose-headers"]); } return $retval; }