code: @Override
    public Path getHadoopPath(URI gcsPath) {
      logger.atFine().log("GHFS.getHadoopPath: %s", gcsPath);
  
      // Handle root. Delegate to getGcsPath on "gs:/" to resolve the appropriate gs://<bucket> URI.
      if (gcsPath.equals(getGcsPath(getFileSystemRoot()))) {
        return getFileSystemRoot();
      }
  
      StorageResourceId resourceId = pathCodec.validatePathAndGetId(gcsPath, true);
  
      // Unlike the global-rooted GHFS, gs:// has no meaning in the bucket-rooted world.
      checkArgument(!resourceId.isRoot(), "Missing authority in gcsPath '%s'", gcsPath);
      checkArgument(
          resourceId.getBucketName().equals(rootBucket),
          "Authority of URI '%s' doesn't match root bucket '%s'",
          resourceId.getBucketName(), rootBucket);
  
      Path hadoopPath = new Path(getScheme() + "://" + rootBucket + '/' + resourceId.getObjectName());
      logger.atFine().log("GHFS.getHadoopPath: %s -> %s", gcsPath, hadoopPath);
      return hadoopPath;
    }
docs: Validates GCS Path belongs to this file system. The bucket must
  match the root bucket provided at initialization time.