Changed the retry function in PithosClient to use the TPL
[pithos-ms-client] / trunk / Pithos.Core / FileState.cs
index f0239cc..f751f81 100644 (file)
@@ -21,8 +21,16 @@ namespace Pithos.Core
     [ActiveRecord]
     public class FileState:ActiveRecordLinqBase<FileState>
     {
+        private string _filePath;
+        private IList<FileTag> _tags=new List<FileTag>();
+
+
         [PrimaryKey]
-        public string FilePath { get; set; }
+        public string FilePath
+        {
+            get { return _filePath; }
+            set { _filePath = value.ToLower(); }
+        }
 
         [Property]
         public FileOverlayStatus OverlayStatus { get; set; }
@@ -32,5 +40,29 @@ namespace Pithos.Core
 
         [Property]
         public string Checksum { get; set; }
+
+        [HasMany(Cascade=ManyRelationCascadeEnum.AllDeleteOrphan,Lazy=true)]
+        public IList<FileTag> Tags
+        {
+            get { return _tags; }   
+            set { _tags=value;}
+        }
+       
+    }
+
+    [ActiveRecord]
+    public class FileTag : ActiveRecordLinqBase<FileTag>
+    {
+        [PrimaryKey]
+        public string FilePath { get; set; }
+
+        [Property]
+        public string Value { get; set; }
+
+        [BelongsTo("FilePath")]
+        public FileState FileState { get; set; }
+
     }
+
+
 }