--- a/OSSEval/entity/models.py
+++ b/OSSEval/entity/models.py
@@ -1,10 +1,24 @@
from django.db import models
+from OSSEval.utils import xmlMinidom
class Entity(models.Model):
name = models.CharField(max_length=200)
actual_entity_class = models.CharField(max_length=200) #the class that implements the actual entity instance
- actual_entity_search_class = models.CharField(max_length=200)
actual_entity_app = models.CharField(max_length=200) #the app where the above classes are
+ def from_xml(self, xmldoc, insert = True):
+ if not insert:
+ self.id = xmldoc.getElementsByTagName('Id')[0].firstChild.data
+ self.name = xmlMinidom.getString(xmldoc, 'Name')
+ self.actual_entity_class = xmlMinidom.getString(xmldoc, 'ActualEntityClass')
+ self.actual_entity_app = xmlMinidom.getString(xmldoc, 'ActualEntityApp')
+ # I save so I get the ID (if insert == True)
+ self.save()
+ def to_xml(self):
+ str_xml = "<Id>" + str(self.id) + "</Id>"
+ str_xml += "<Name>" + self.name + "</Name>"
+ str_xml += "<ActualEntityClass>" + self.actual_entity_class + "</ActualEntityClass>"
+ str_xml += "<ActualEntityApp>" + self.actual_entity_app + "</ActualEntityApp>"
+ return "<Entity>" + str_xml + "</Entity>"
def __unicode__(self):
return self.name