def METHOD_NAME(self, configuration):
    repo_url_template = configuration.get_repository_details()['URL']
    # pull in the package id
    repo_url_template = repo_url_template.format(package_id = self.package_id, package_version = self.package_version)
    if configuration.get_repository_details().get('UrlTransformationFunction', None):
        transformer = configuration.get_repository_details()['UrlTransformationFunction']
    else:
        transformer = lambda input_string: input_string
    # pull in any additional elements through repository_args
    for index, additional_argument in enumerate(self.repository_args):
        repo_url_template = repo_url_template.replace('[' + str(index) + ']', transformer(self.repository_args[index]))
    # possibly need to url encode here.
    return repo_url_template