Selective Sync filtering modified to allow uploading only of new root-level folders
authorpkanavos <pkanavos@gmail.com>
Thu, 24 May 2012 18:36:12 +0000 (21:36 +0300)
committerpkanavos <pkanavos@gmail.com>
Thu, 24 May 2012 18:36:12 +0000 (21:36 +0300)
trunk/Pithos.Core/Agents/FileAgent.cs
trunk/Pithos.Core/Agents/Uploader.cs
trunk/Pithos.Core/PithosMonitor.cs
trunk/Pithos.Network/CloudFilesClient.cs
trunk/Pithos.sln

index dbbacb4..df3f327 100644 (file)
@@ -335,9 +335,13 @@ namespace Pithos.Core.Agents
             if (IgnorePaths(filePath)) return true;
 
 
-            //If selective sync is enabled, propagate folder events
-            if (Selectives.IsSelectiveEnabled(AccountInfo.AccountKey) && Directory.Exists(filePath))
-                return false;
+            //If selective sync is enabled, 
+            if (Selectives.IsSelectiveEnabled(AccountInfo.AccountKey) 
+                //propagate folder events 
+                && Directory.Exists(filePath)
+                //from the container root folder only. Note, in the first level below the account root path are the containers
+                && FoundBelowRoot(filePath, RootPath, 2))
+                    return false;
             //Ignore if selective synchronization is defined, 
             //And the target file is not below any of the selective paths
             return !Selectives.IsSelected(AccountInfo, filePath);
index 5e2f158..9a36adc 100644 (file)
@@ -141,7 +141,8 @@ namespace Pithos.Core.Agents
                                 {\r
                                     //Add the folder to the Selected URls\r
                                     var selections = Selectives.SelectiveUris[accountInfo.AccountKey];\r
-                                    selections.Add(cloudFile.Uri);\r
+                                    var selectiveUri = new Uri(client.RootAddressUri, cloudFile.Uri);\r
+                                    selections.Add(selectiveUri);\r
                                     Selectives.Save(accountInfo);\r
                                 }\r
                             }\r
index 49bd13c..7dbb947 100644 (file)
@@ -241,7 +241,9 @@ namespace Pithos.Core
             IndexLocalFiles();
             //Extract the URIs from the string collection
             var settings = Settings.Accounts.First(s => s.AccountKey == _accountInfo.AccountKey );
-            var selectiveUrls=settings.SelectiveFolders.Cast<string>().Select(url => new Uri(url)).ToArray();
+                            
+            var selectiveUrls=settings.SelectiveFolders.Cast<string>().Select(url => new Uri(url,UriKind.RelativeOrAbsolute))
+                .Where(uri=>uri.IsAbsoluteUri).ToArray();
 
             SetSelectivePaths(selectiveUrls,null,null);
             
index 2f5fed0..1e83328 100644 (file)
@@ -99,7 +99,7 @@ namespace Pithos.Network
         public Uri StorageUrl { get; set; }
 
 
-        protected Uri RootAddressUri { get; set; }
+        public Uri RootAddressUri { get; set; }
 
        /* private WebProxy _proxy;
         public WebProxy Proxy
index 0aea32e..7a456ce 100644 (file)
@@ -97,6 +97,7 @@ Global
                {240B432F-1030-4623-BCC3-FF351D6C1B63}.Release|x64.ActiveCfg = Release|x64
                {240B432F-1030-4623-BCC3-FF351D6C1B63}.Release|x64.Build.0 = Release|x64
                {240B432F-1030-4623-BCC3-FF351D6C1B63}.Release|x86.ActiveCfg = Release|Any CPU
+               {240B432F-1030-4623-BCC3-FF351D6C1B63}.Release|x86.Build.0 = Release|Any CPU
                {240B432F-1030-4623-BCC3-FF351D6C1B63}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {240B432F-1030-4623-BCC3-FF351D6C1B63}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
                {240B432F-1030-4623-BCC3-FF351D6C1B63}.Test|Mixed Platforms.Build.0 = Test|Any CPU
@@ -126,8 +127,10 @@ Global
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|Any CPU.Build.0 = Release|Any CPU
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|x64.ActiveCfg = Release|x64
+               {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|x64.ActiveCfg = Release|Any CPU
+               {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|x64.Build.0 = Release|Any CPU
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|x86.ActiveCfg = Release|Any CPU
+               {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Release|x86.Build.0 = Release|Any CPU
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
                {2CFE2DF1-20AE-47E2-B1BB-36B974600BE1}.Test|Mixed Platforms.Build.0 = Test|Any CPU
@@ -160,9 +163,10 @@ Global
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|Any CPU.Build.0 = Release|Any CPU
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|x64.ActiveCfg = Release|x64
-               {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|x64.Build.0 = Release|x64
+               {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|x64.ActiveCfg = Release|Any CPU
+               {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|x64.Build.0 = Release|Any CPU
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|x86.ActiveCfg = Release|Any CPU
+               {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Release|x86.Build.0 = Release|Any CPU
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Test|Any CPU.Build.0 = Test|Any CPU
                {7EEFF32F-CCF8-436A-9E0B-F40434C09AF4}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -197,9 +201,10 @@ Global
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|Any CPU.Build.0 = Release|Any CPU
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|x64.ActiveCfg = Release|x64
-               {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|x64.Build.0 = Release|x64
+               {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|x64.ActiveCfg = Release|Any CPU
+               {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|x64.Build.0 = Release|Any CPU
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|x86.ActiveCfg = Release|Any CPU
+               {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Release|x86.Build.0 = Release|Any CPU
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Test|Any CPU.Build.0 = Test|Any CPU
                {822F885B-83E8-4A9A-B02E-0FEAE444D960}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -234,9 +239,10 @@ Global
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|Any CPU.Build.0 = Release|Any CPU
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|x64.ActiveCfg = Release|x64
-               {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|x64.Build.0 = Release|x64
+               {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|x64.ActiveCfg = Release|Any CPU
+               {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|x64.Build.0 = Release|Any CPU
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|x86.ActiveCfg = Release|Any CPU
+               {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Release|x86.Build.0 = Release|Any CPU
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Test|Any CPU.Build.0 = Test|Any CPU
                {C45218F8-09E7-4F57-85BC-5D8D2AC736A3}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -271,9 +277,10 @@ Global
                {142AF135-DF30-4563-B0AC-B604235AE874}.Release|Any CPU.Build.0 = Release|Any CPU
                {142AF135-DF30-4563-B0AC-B604235AE874}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {142AF135-DF30-4563-B0AC-B604235AE874}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x64.ActiveCfg = Release|x64
-               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x64.Build.0 = Release|x64
-               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x86.ActiveCfg = Release|Any CPU
+               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x64.ActiveCfg = Release|x86
+               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x64.Build.0 = Release|x86
+               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x86.ActiveCfg = Release|x86
+               {142AF135-DF30-4563-B0AC-B604235AE874}.Release|x86.Build.0 = Release|x86
                {142AF135-DF30-4563-B0AC-B604235AE874}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {142AF135-DF30-4563-B0AC-B604235AE874}.Test|Any CPU.Build.0 = Test|Any CPU
                {142AF135-DF30-4563-B0AC-B604235AE874}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -308,9 +315,10 @@ Global
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|Any CPU.Build.0 = Release|Any CPU
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|x64.ActiveCfg = Release|x64
-               {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|x64.Build.0 = Release|x64
+               {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|x64.ActiveCfg = Release|Any CPU
+               {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|x64.Build.0 = Release|Any CPU
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|x86.ActiveCfg = Release|Any CPU
+               {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Release|x86.Build.0 = Release|Any CPU
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Test|Any CPU.Build.0 = Test|Any CPU
                {E027200B-C26A-4877-BFD9-1A18CF5DF2F4}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -345,9 +353,10 @@ Global
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|Any CPU.Build.0 = Release|Any CPU
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|x64.ActiveCfg = Release|x64
-               {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|x64.Build.0 = Release|x64
+               {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|x64.ActiveCfg = Release|Any CPU
+               {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|x64.Build.0 = Release|Any CPU
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|x86.ActiveCfg = Release|Any CPU
+               {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Release|x86.Build.0 = Release|Any CPU
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Test|Any CPU.Build.0 = Test|Any CPU
                {C8E2BC8B-C7F1-4222-855C-4B04A57FFDFD}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -382,9 +391,10 @@ Global
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|Any CPU.Build.0 = Release|Any CPU
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|x64.ActiveCfg = Release|x64
-               {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|x64.Build.0 = Release|x64
+               {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|x64.ActiveCfg = Release|Any CPU
+               {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|x64.Build.0 = Release|Any CPU
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|x86.ActiveCfg = Release|Any CPU
+               {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Release|x86.Build.0 = Release|Any CPU
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Test|Any CPU.Build.0 = Test|Any CPU
                {F9AF3E97-BCB7-46B7-8014-7FC858AEE9BA}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -419,9 +429,10 @@ Global
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Any CPU.Build.0 = Release|Any CPU
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|x64.ActiveCfg = Release|x64
-               {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|x64.Build.0 = Release|x64
+               {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|x64.ActiveCfg = Release|Any CPU
+               {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|x64.Build.0 = Release|Any CPU
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|x86.ActiveCfg = Release|Any CPU
+               {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Release|x86.Build.0 = Release|Any CPU
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Test|Any CPU.ActiveCfg = Test|Any CPU
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Test|Any CPU.Build.0 = Test|Any CPU
                {A9AE40FF-1A21-414A-9FE7-3BE13644CC6D}.Test|Mixed Platforms.ActiveCfg = Test|Any CPU
@@ -456,8 +467,8 @@ Global
                {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|Any CPU.ActiveCfg = Release|x86
                {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|Mixed Platforms.ActiveCfg = Release|x86
                {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|Mixed Platforms.Build.0 = Release|x86
-               {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|x64.ActiveCfg = Release|x64
-               {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|x64.Build.0 = Release|x64
+               {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|x64.ActiveCfg = Release|x86
+               {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|x64.Build.0 = Release|x86
                {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|x86.ActiveCfg = Release|x86
                {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Release|x86.Build.0 = Release|x86
                {4D9406A3-50ED-4672-BB97-A0B3EA4946FE}.Test|Any CPU.ActiveCfg = Release|x86
@@ -494,9 +505,10 @@ Global
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|Any CPU.Build.0 = Release|Any CPU
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|Mixed Platforms.Build.0 = Release|Any CPU
-               {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|x64.ActiveCfg = Release|x64
-               {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|x64.Build.0 = Release|x64
+               {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|x64.ActiveCfg = Release|Any CPU
+               {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|x64.Build.0 = Release|Any CPU
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|x86.ActiveCfg = Release|Any CPU
+               {7AC63864-7638-41C4-969C-D3197EF2BED9}.Release|x86.Build.0 = Release|Any CPU
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Test|Any CPU.ActiveCfg = Release|Any CPU
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Test|Any CPU.Build.0 = Release|Any CPU
                {7AC63864-7638-41C4-969C-D3197EF2BED9}.Test|Mixed Platforms.ActiveCfg = Release|Any CPU
@@ -529,7 +541,9 @@ Global
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Release|Mixed Platforms.Build.0 = Release|Any CPU
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Release|x64.ActiveCfg = Release|Any CPU
+               {74635A21-2BAD-4522-AB95-E3E5703CD301}.Release|x64.Build.0 = Release|Any CPU
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Release|x86.ActiveCfg = Release|Any CPU
+               {74635A21-2BAD-4522-AB95-E3E5703CD301}.Release|x86.Build.0 = Release|Any CPU
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Test|Any CPU.ActiveCfg = Release|Any CPU
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Test|Any CPU.Build.0 = Release|Any CPU
                {74635A21-2BAD-4522-AB95-E3E5703CD301}.Test|Mixed Platforms.ActiveCfg = Release|Any CPU
@@ -559,7 +573,9 @@ Global
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Release|Mixed Platforms.Build.0 = Release|Any CPU
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Release|x64.ActiveCfg = Release|Any CPU
+               {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Release|x64.Build.0 = Release|Any CPU
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Release|x86.ActiveCfg = Release|Any CPU
+               {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Release|x86.Build.0 = Release|Any CPU
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Test|Any CPU.ActiveCfg = Release|Any CPU
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Test|Any CPU.Build.0 = Release|Any CPU
                {7B5BFE77-FC4D-43B3-84A0-9CB457238951}.Test|Mixed Platforms.ActiveCfg = Release|Any CPU
@@ -589,7 +605,9 @@ Global
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Release|x64.ActiveCfg = Release|Any CPU
+               {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Release|x64.Build.0 = Release|Any CPU
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Release|x86.ActiveCfg = Release|Any CPU
+               {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Release|x86.Build.0 = Release|Any CPU
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Test|Any CPU.ActiveCfg = Release|Any CPU
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Test|Any CPU.Build.0 = Release|Any CPU
                {881F7260-CA40-40FD-AEEC-860B346DC2DC}.Test|Mixed Platforms.ActiveCfg = Release|Any CPU