<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def checkUpload(self, file_obj, full_path = '/', overwrite = False):
 """Check whether it is possible to upload a file. :param file_obj: A file-like object to check whether possible to upload. You can pass a string as a file_obj or a real file object. :param str full_path: The full path to upload the file to, *including the file name*. If the destination directory does not yet exist, it will be created. :param overwrite: Whether to overwrite an existing file at the given path. (Default ``False``.) :return: ``True`` if possible to upload or ``False`` if impossible to upload. """

        try:
            file_obj = file_obj.name
        except:
            file_obj = file_obj # do nothing

        file_size = os.stat(file_obj).st_size
        now = datetime.datetime.now().isoformat()

        data = {'uploadsize': file_size,
                'overwrite': 'T' if overwrite else 'F',
                'getlastmodified': now,
                'dstresource': full_path,
                'userid': self.user_id,
                'useridx': self.useridx,
                }

        s, metadata = self.POST('checkUpload', data)

        if not s:
            print metadata

        return s