--- /dev/null
+import os
+from django.db import models
+from core.models import PlCoreBase
+from core.models import Site
+from core.models import Deployment
+
+# Create your models here.
+
+class Network(PlCoreBase):
+ name = models.CharField(max_length=32)
+ subnet = models.CharField(max_length=32)
+ ports = models.CharField(max_length=1024)
+ labels = models.CharField(max_length=1024)
+ slice = models.ForeignKey(Slice, related_name="networks")
+ guaranteedBandwidth = models.IntField()
+ permittedSlices = models.ManyToManyField(Slice, blank=True, related_name="permittedNetworks")
+ boundSlices = models.ManyToManyField(Slice, blank=True, related_name="boundNetworks")
+
+ def __unicode__(self): return u'%s' % (self.name)
+
+class Router(PlCoreBase):
+ name = models.CharField(max_length=32)
+ networks = models.ManyToManyField(Network, blank=True, related_name="routers")
+
+ def __unicode__(self): return u'%s' % (self.name)o
+
+class ParameterType(PlCoreBase):
+ name = models.SlugField(help_text="The name of this tag", max_length=128)
+
+ def __unicode__(self): return u'%s' % (self.name)
+
+class Parameter(PlCoreBase):
+ parameterType = models.ForeignKey(ParameterType, related_name="parameters", help_text="The name of the parameter")
+ value = models.CharField(help_text="The value of this parameter", max_length=1024)
+
+ # The required fields to do a ObjectType lookup, and object_id assignment
+ content_type = models.ForeignKey(ContentType)
+ object_id = models.PositiveIntegerField()
+ content_object = generic.GenericForeignKey('content_type', 'object_id')
+
+ def __unicode__(self):
+ return self.tagType.name
+
+