Revision c2876228 snf-cyclades-app/synnefo/db/models.py
b/snf-cyclades-app/synnefo/db/models.py | ||
---|---|---|
702 | 702 |
return '%s@%s' % (self.machine.name, self.network.name) |
703 | 703 |
|
704 | 704 |
|
705 |
class FloatingIP(models.Model): |
|
706 |
userid = models.CharField("UUID of the owner", max_length=128, |
|
707 |
null=False, db_index=True) |
|
708 |
ipv4 = models.IPAddressField(null=False, unique=True, db_index=True) |
|
709 |
network = models.ForeignKey(Network, related_name="floating_ips", |
|
710 |
null=False) |
|
711 |
machine = models.ForeignKey(VirtualMachine, related_name="floating_ips", |
|
712 |
null=True) |
|
713 |
created = models.DateTimeField(auto_now_add=True) |
|
714 |
deleted = models.BooleanField(default=False, null=False) |
|
715 |
serial = models.ForeignKey(QuotaHolderSerial, |
|
716 |
related_name="floating_ips", null=True) |
|
717 |
|
|
718 |
objects = ForUpdateManager() |
|
719 |
|
|
720 |
def __unicode__(self): |
|
721 |
return "<%s@%s>" % (self.ipv4, self.network.id) |
|
722 |
|
|
723 |
def in_use(self): |
|
724 |
if self.machine is None: |
|
725 |
return False |
|
726 |
else: |
|
727 |
return (not self.machine.deleted) |
|
728 |
|
|
729 |
|
|
705 | 730 |
class PoolTable(models.Model): |
706 | 731 |
available_map = models.TextField(default="", null=False) |
707 | 732 |
reserved_map = models.TextField(default="", null=False) |
Also available in: Unified diff