Change experiments.FileType.regex to a text field so it can be arbitrarily long.
[htsworkflow.git] / htsworkflow / frontend / experiments / models.py
index 508abc71d770d3dfd53d9d0350cd09262e8b3e13..2da1fcf120228a2e46312a355066ddf1488aaba7 100644 (file)
@@ -3,6 +3,7 @@ import glob
 import logging
 import os
 import re
+import sre_constants
 import types
 import uuid
 
@@ -455,6 +456,12 @@ class FileType(models.Model):
         #return u"<FileType: %s>" % (self.name,)
         return self.name
 
+    def regex_is_valid(self):
+        try:
+            regex = re.compile(self.regex)
+        except sre_constants.error as e:
+            return False
+        return re.compile(self.regex) is not None
 
 def str_uuid():
     """Helper function to set default UUID in DataFile"""