Revision b500da65 flowspec/models.py

b/flowspec/models.py
4 4
from django.db import models
5 5
from django.conf import settings
6 6
from django.contrib.auth.models import User
7
from django.db.models.query import QuerySet
7 8
from utils import proxy as PR
8 9
from ipaddr import *
9 10
import datetime
......
102 103
        ordering = ['action', 'action_value']
103 104
        unique_together = ("action", "action_value")
104 105

  
106
class QuerySetManager(models.Manager):
107
    def get_query_set(self):
108
        return self.model.QuerySet(self.model)
109

  
105 110
class Route(models.Model):
106 111
    name = models.SlugField(max_length=128)
107 112
    applier = models.ForeignKey(User, blank=True, null=True)
......
127 132
    response = models.CharField(max_length=512, blank=True, null=True)
128 133
    comments = models.TextField(null=True, blank=True, verbose_name="Comments")
129 134

  
135
    objects = QuerySetManager()
130 136
    
137
    class QuerySet(QuerySet):
138
        def add_route_set(self):
139
            route_list = []
140
            route_names = ''
141
            for route in self:
142
                peer = route.applier.get_profile().peer.domain_name
143
                route_list.append(route)
144
                route_names = "%s, %s" %(route.name, route_names)
145
            send_message("[%s] Adding rules: %s. Please wait..." %(route.applier.username, route_names.rstrip(',')), peer)
146
            response = add_set.delay(route_list)
147
            logger.info("Got add job id: %s" %response)
148
        
131 149
    def __unicode__(self):
132 150
        return self.name
133 151
    

Also available in: Unified diff