public function getMetadata($key = null)
{
if (null === $key) {
return stream_get_meta_data($this->resource);
}
$metadata = stream_get_meta_data($this->resource);
if (!array_key_exists($key, $metadata)) {
return null;
}
return $metadata[$key];
}