1. I think it's better to make this class method
2. Does it makes sense to move it into `GroupDocs::Storage`?