← Back to team overview

oship-dev team mailing list archive

[Branch ~oship-dev/oship/devel] Rev 521: Implemented Resource Description Item class

 

------------------------------------------------------------
revno: 521
committer: Eduardo César <>
branch nick: local
timestamp: Sat 2010-12-11 21:40:08 -0200
message:
  Implemented Resource Description Item class
modified:
  src/oship/openehr/rm/common/resource/__init__.py


--
lp:oship
https://code.launchpad.net/~oship-dev/oship/devel

Your team OSHIP Development Team is subscribed to branch lp:oship.
To unsubscribe from this branch go to https://code.launchpad.net/~oship-dev/oship/devel/+edit-subscription
=== modified file 'src/oship/openehr/rm/common/resource/__init__.py'
--- src/oship/openehr/rm/common/resource/__init__.py	2010-12-11 22:48:41 +0000
+++ src/oship/openehr/rm/common/resource/__init__.py	2010-12-11 23:40:08 +0000
@@ -62,8 +62,43 @@
     RESOURCE_DESCRIPTION_ITEM needs to be copied and translated into the new
     language. """
 
-    pass
-
+    grok.implements(IResourceDescriptionItem)
+
+    def __init__(self, language, purpose, keywords, use, misuse, copyright, original_resource_uri, other_details):
+        self.language = language
+        self.purpose = purpose
+        self.keywords = keywords
+        self.use = use
+        self.misuse = misuse
+        self.copyright = copyright
+        self.original_resource_uri = original_resource_uri
+        self.other_details = other_details
+
+        self.language_valid()
+        self.purpose_valid()
+        self.use_valid()
+        self.misuse_valid()
+        self.copyright_valid()
+
+    def language_valid(self): #TODO - Codeset
+        if self.language is None:
+            raise ValueError(u'language /= Void and then code_set(Code_set_id_languages).has_code(language)')
+
+    def purpose_valid(self):
+        if self.purpose is None or len(self.purpose.strip()) == 0:
+            raise ValueError(u'purpose /= Void and then not purpose.is_empty')
+
+    def use_valid(self):
+        if self.use is not None and len(self.use.strip()) == 0:
+            raise ValueError(u'use /= Void implies not use.is_empty')
+
+    def misuse_valid(self):
+        if self.misuse is not None and len(self.misuse.strip()) == 0:
+            raise ValueError(u'misuse /= Void implies not misuse.is_empty')
+
+    def copyright_valid(self):
+        if self.copyright is not None and len(self.copyright.strip()) == 0:
+            raise ValueError(u'copyright /= Void implies not copyright.is_empty')
 
 class ResourceDescription(grok.Model):
     u"""Defines the descriptive meta-data of a resource."""