Exemple #1
0
 def save(self, *args, **kwargs):
     """
     Ensure we save the name and region in the standard form.
     """
     self.name = standardize_name(self.name)
     self.region = self.region.upper()
     super(InvalidSummonerQuery, self).save(*args, **kwargs)
Exemple #2
0
 def save(self, *args, **kwargs):
     """
     Ensure we save the name and region in the standard form.
     """
     self.name = standardize_name(self.name)
     self.region = self.region.upper()
     super(InvalidSummonerQuery, self).save(*args, **kwargs)
Exemple #3
0
    def create_summoner_from_match(self, region, attrs):
        region = region.upper()

        return self.create(summoner_id=attrs['summonerId'],
                           profile_icon_id=attrs['profileIcon'],
                           name=attrs['summonerName'],
                           std_name=standardize_name(attrs['summonerName']),
                           region=region.upper())
Exemple #4
0
 def update_from_match(self, attrs):
     """
     Updates this summoner's fields based on what is available from a match response.
     """
     self.profile_icon_id = attrs['profileIcon']
     self.name = attrs['summonerName']
     self.std_name = standardize_name(attrs['summonerName'])
     self.save()
Exemple #5
0
    def create_summoner_from_match(self, region, attrs):
        region = region.upper()

        return self.create(summoner_id=attrs['summonerId'],
                           profile_icon_id=attrs['profileIcon'],
                           name=attrs['summonerName'],
                           std_name=standardize_name(attrs['summonerName']),
                           region=region.upper())
Exemple #6
0
 def update_from_match(self, attrs):
     """
     Updates this summoner's fields based on what is available from a match response.
     """
     self.profile_icon_id = attrs['profileIcon']
     self.name = attrs['summonerName']
     self.std_name = standardize_name(attrs['summonerName'])
     self.save()
Exemple #7
0
    def create_summoner(self, region, attrs):
        region = region.upper()

        return self.create(summoner_id=attrs['id'],
                           name=attrs['name'],
                           std_name=standardize_name(attrs['name']),
                           profile_icon_id=attrs['profileIconId'],
                           revision_date=attrs['revisionDate'],
                           summoner_level=attrs['summonerLevel'],
                           region=region)
Exemple #8
0
    def create_summoner(self, region, attrs):
        region = region.upper()

        return self.create(summoner_id=attrs['id'],
                           name=attrs['name'],
                           std_name=standardize_name(attrs['name']),
                           profile_icon_id=attrs['profileIconId'],
                           revision_date=attrs['revisionDate'],
                           summoner_level=attrs['summonerLevel'],
                           region=region)
Exemple #9
0
 def update(self, region, attrs):
     """
     Update this summoner's fields completely, as would occur when directly
     querying this summoner from Riot's API.
     """
     self.summoner_id = attrs['id']
     self.name = attrs['name']
     self.std_name = standardize_name(attrs['name'])
     self.profile_icon_id = attrs['profileIconId']
     self.revision_date = attrs['revisionDate']
     self.summoner_level = attrs['summonerLevel']
     self.region = region.upper()        # Unnecessary to touch region?
     self.save()
Exemple #10
0
 def update(self, region, attrs):
     """
     Update this summoner's fields completely, as would occur when directly
     querying this summoner from Riot's API.
     """
     self.summoner_id = attrs['id']
     self.name = attrs['name']
     self.std_name = standardize_name(attrs['name'])
     self.profile_icon_id = attrs['profileIconId']
     self.revision_date = attrs['revisionDate']
     self.summoner_level = attrs['summonerLevel']
     self.region = region.upper()  # Unnecessary to touch region?
     self.save()
Exemple #11
0
    def contains(self, name, region):
        """
        Returns True if the name-region combination matches an InvalidSummonerQuery object
        that hasn't expired, otherwise False.

        If a matching ISQ record is found, but has expired, then it is deleted.
        """
        name = standardize_name(name)
        region = region.upper()
        query = self.filter(name=name, region=region)

        if query.exists():
            if query.get().is_expired():
                query.get().delete()
                return False
            else:
                return True
        else:
            return False
Exemple #12
0
    def contains(self, name, region):
        """
        Returns True if the name-region combination matches an InvalidSummonerQuery object
        that hasn't expired, otherwise False.

        If a matching ISQ record is found, but has expired, then it is deleted.
        """
        name = standardize_name(name)
        region = region.upper()
        query = self.filter(name=name, region=region)

        if query.exists():
            if query.get().is_expired():
                query.get().delete()
                return False
            else:
                return True
        else:
            return False
Exemple #13
0
def get_pk_from_region_and_summoner(request):
    """
    Returns a Summoner PK given a region and summoner name.
    """
    query = json.loads(request.body.decode('utf-8'))
    print(repr(query))

    if query_is_valid(query):
        summoner = Summoner.objects.filter(region=query['region'],
                                           std_name=standardize_name(query['name']))

        if summoner.exists():
            data = summoner.values('id', 'region', 'name')[0]
        else:
            data = SUMMONER_NOT_FOUND_PK

        return JsonResponse(data)
    else:
        return HttpResponseBadRequest('Invalid request')
Exemple #14
0
    def __init__(self, name=None, summoner_id=None, region=None):
        # These attributes are only used to get the summoner instance
        # and should not be referenced after __init__ completes.
        # TODO: change from object scope to method scope?
        self.std_name = standardize_name(name) if name else None
        self.summoner_id = summoner_id
        self.region = region.upper()
        self.summoner = None

        logger.info('Summoner init started, name: {}, ID: {}, region: {}'.format(
            self.std_name, self.summoner_id, self.region))

        # TODO: Should this be caught at a lower level, and then we can
        # try/except here and include exc_info in log?
        if self.region not in REGIONS:
            logger.error('Invalid region: {}; must be one of {}'
                         .format(self.region, REGIONS))
            raise ValueError('Invalid region: {}; must be one of {}'
                             .format(self.region, REGIONS))

        if not (self.summoner_id or self.std_name):
            logger.error('Expecting summoner_id or name to be present.')
            raise ValueError('Expecting summoner_id or name to be present.')
Exemple #15
0
    def __init__(self, name=None, summoner_id=None, region=None):
        # These attributes are only used to get the summoner instance
        # and should not be referenced after __init__ completes.
        # TODO: change from object scope to method scope?
        self.std_name = standardize_name(name) if name else None
        self.summoner_id = summoner_id
        self.region = region.upper()
        self.summoner = None

        logger.info(
            'Summoner init started, name: {}, ID: {}, region: {}'.format(
                self.std_name, self.summoner_id, self.region))

        # TODO: Should this be caught at a lower level, and then we can
        # try/except here and include exc_info in log?
        if self.region not in REGIONS:
            logger.error('Invalid region: {}; must be one of {}'.format(
                self.region, REGIONS))
            raise ValueError('Invalid region: {}; must be one of {}'.format(
                self.region, REGIONS))

        if not (self.summoner_id or self.std_name):
            logger.error('Expecting summoner_id or name to be present.')
            raise ValueError('Expecting summoner_id or name to be present.')