/**
  * Opens file or URL.
  *
  * This method is called immediately after the wrapper is initialized (f.e.
  * by fopen() and file_get_contents()).
  *
  * $options can hold one of the following values OR'd together:
  *  STREAM_USE_PATH
  *    If path is relative, search for the resource using the include_path.
  *  STREAM_REPORT_ERRORS
  *    If this flag is set, you are responsible for raising errors using
  *    trigger_error() during opening of the stream. If this flag is not set,
  *    you should not raise any errors.
  *
  * @param string $path Specifies the URL that was passed to the original function.
  * @param string $mode The mode used to open the file, as detailed for fopen().
  * @param integer $options Holds additional flags set by the streams API.
  * @param string &$opened_path path If the path is opened successfully, and STREAM_USE_PATH is set in options, opened_path should be set to the full path of the file/resource that was actually opened.
  * @return boolean TRUE on success or FALSE on failure.
  */
 public function stream_open($path, $mode, $options, &$opened_path)
 {
     $this->createStreamWrapper($path);
     return $this->streamWrapper->open($path, $mode, $options, $opened_path);
 }