def METHOD_NAME(self, context, *args):
    '''Generate a link for the CinemaRV.com site. A read of the item's web page is required to
    extract the flash video id.
    Call example: 'mnvXpath:cinemarvLinkGeneration(string(link))'
    return the url link
    '''
    webURL = args[0]
    # If this is for the download then just return what was found for the "link" element
    if 'cinemarvLinkGeneration' in self.persistence:
        if self.persistence['cinemarvLinkGeneration'] is not None:
            returnValue = self.persistence['cinemarvLinkGeneration']
            self.persistence['cinemarvLinkGeneration'] = None
            return returnValue
    else:
        self.persistence['cinemarvLinkGenerationVideoID'] = etree.XPath('//object[@id="flashObj"]//param[@name="flashVars"]/@value', namespaces=common.namespaces)
        self.persistence['cinemarvLinkGenerationParser'] = etree.HTMLParser()
    try:
        webPageElement = etree.parse(webURL, self.persistence['cinemarvLinkGenerationParser'])
    except Exception as errmsg:
        sys.stderr.write('!Warning: The web page URL(%s) could not be read, error(%s)\n' % (webURL, errmsg))
        return webURL
    if webPageElement is None:
        self.persistence['cinemarvLinkGeneration'] = webURL
        return webURL
    tmpVideoID = self.persistence['cinemarvLinkGenerationVideoID'](webPageElement)
    if not len(tmpVideoID):
        self.persistence['cinemarvLinkGeneration'] = webURL
        return webURL
    index = tmpVideoID[0].find('&')
    if index == -1:
        self.persistence['cinemarvLinkGeneration'] = webURL
        return webURL
    videocode = tmpVideoID[0][:index].replace('videoId=', '')
    self.persistence['cinemarvLinkGeneration'] = common.linkWebPage('dummycontext', 'cinemarv')+videocode
    return self.persistence['cinemarvLinkGeneration']