@Override
    public RecoverableFsDataOutputStream open(Path path) throws IOException {
        LOGGER.trace("Opening output stream for path {}", path);
        Preconditions.checkNotNull(path);

        GSBlobIdentifier finalBlobIdentifier = BlobUtils.parseUri(path.toUri());
        return new GSRecoverableFsDataOutputStream(storage, options, finalBlobIdentifier);
    }
@Test(expected = IllegalArgumentException.class)
    public void testOpenWithEmptyObjectName() throws IOException {
        Path path = new Path("gs://foo/");
        writer.open(path);
    }