<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _getUniqueName(self, fileName, jobStoreID=None, sourceFunctionName="x"):
 """ Create unique file name within a jobStore directory or tmp directory. :param fileName: A file name, which can be a full path as only the basename will be used. :param jobStoreID: If given, the path returned will be in the jobStore directory. Otherwise, the tmp directory will be used. :param sourceFunctionName: This name is the name of the function that generated this file. Defaults to x if that name was not a normal name. Used for tracking files. :return: The full path with a unique file name. """

        fd, absPath = self._getTempFile(jobStoreID)
        os.close(fd)
        os.unlink(absPath)
        # remove the .tmp extension and add the file name
        (noExt,ext) = os.path.splitext(absPath)
        uniquePath = noExt + '-' + sourceFunctionName + '-' + os.path.basename(fileName)
        if os.path.exists(absPath):
            return absPath  # give up, just return temp name to avoid conflicts
        return uniquePath