resource->getRouteKey(); } /** * Get the route key for the resource. * * @return string */ public function getRouteKeyName() { return $this->resource->getRouteKeyName(); } /** * Retrieve the model for a bound value. * * @param mixed $value * @return void * @throws \Exception */ public function resolveRouteBinding($value) { throw new Exception('Resources may not be implicitly resolved from route bindings.'); } /** * Determine if the given attribute exists. * * @param mixed $offset * @return bool */ public function offsetExists($offset) { return array_key_exists($offset, $this->resource); } /** * Get the value for a given offset. * * @param mixed $offset * @return mixed */ public function offsetGet($offset) { return $this->resource[$offset]; } /** * Set the value for a given offset. * * @param mixed $offset * @param mixed $value * @return void */ public function offsetSet($offset, $value) { $this->resource[$offset] = $value; } /** * Unset the value for a given offset. * * @param mixed $offset * @return void */ public function offsetUnset($offset) { unset($this->resource[$offset]); } /** * Determine if an attribute exists on the resource. * * @param string $key * @return bool */ public function __isset($key) { return isset($this->resource->{$key}); } /** * Unset an attribute on the resource. * * @param string $key * @return void */ public function __unset($key) { unset($this->resource->{$key}); } /** * Dynamically get properties from the underlying resource. * * @param string $key * @return mixed */ public function __get($key) { return $this->resource->{$key}; } /** * Dynamically pass method calls to the underlying resource. * * @param string $method * @param array $parameters * @return mixed */ public function __call($method, $parameters) { return $this->resource->{$method}(...$parameters); } }