code: FileStatusExtended getFileInfoExtended(String src, INode targetNode,
        String leaseHolder)
        throws IOException {
      readLock();
      try {
        if (targetNode == null) {
          return null;
        }
        FileStatus stat = createFileStatus(src, targetNode);
        long hardlinkId = (targetNode instanceof INodeHardLinkFile) ? ((INodeHardLinkFile) targetNode)
            .getHardLinkID() : -1;
        return new FileStatusExtended(stat, ((INodeFile) targetNode).getBlocks(),
            leaseHolder, hardlinkId);
      } finally {
        readUnlock();
      }
    }
docs: Get the extended file info for a specific file.
  
  @param src
  The string representation of the path to the file
  @param targetNode
  the INode for the corresponding file
  @param leaseHolder
  the lease holder for the file
  @return object containing information regarding the file or null if file
  not found
  @throws IOException
  if permission to access file is denied by the system