code: protected Trash getUserTrash(final String user) throws IOException {
      if (UserGroupInformation.getCurrentUser().getShortUserName().equals(user)) {
        return this;
      }
      try {
        return this.trashCache.get(user, new Callable<Trash>() {
          @Override
          public Trash call() throws Exception {
            return createNewTrashForUser(ProxiedTrash.this.fs, ProxiedTrash.this.properties, user);
          }
        });
      } catch (ExecutionException ee) {
        throw new IOException("Failed to get trash for user " + user);
      }
    }
docs: Get {@link org.apache.gobblin.data.management.trash.Trash} instance for the specified user.
  @param user user for whom {@link org.apache.gobblin.data.management.trash.Trash} should be generated.
  @return {@link org.apache.gobblin.data.management.trash.Trash} as generated by proxied user.
  @throws IOException