public function ready()
	{
		if( $this->ready )
		{
			return $this;
		}

		$this->raw = @ file_get_contents($this->pathname);
		if( !$this->raw )
		{
			throw new AccessFileException($this->pathname,"Cannot ready resource '{$this->name}'");
		}

		try {
			$data = Json::parse($this->raw, true);
			if( ! is_array($data) )
			{
				throw new \InvalidArgumentException("Resource data is not array");
			}
		}
		catch( \InvalidArgumentException $e ) {
			throw new ReadFileException($this->pathname,"Cannot read resource '{$this->name}', json parser error: " . $e->getCode());
		}

		if( isset($data['type']) && is_string($data['type']) )
		{
			$this->type = $data['type'];
		}

		$this->ready = true;
		$this->items = $data;

		return $this;
	}