Revision 48686774

b/trunk/Pithos.Client.WPF/Properties/AssemblyInfo.cs
94 94
// by using the '*' as shown below:
95 95
// [assembly: AssemblyVersion("1.0.*")]
96 96
[assembly: AssemblyVersion("0.7.0.0")]
97
[assembly: AssemblyFileVersionAttribute("0.7.20301.2122")]
97
[assembly: AssemblyFileVersionAttribute("0.7.20302.2120")]
b/trunk/Pithos.Core.Test/Pithos.Core.Test.csproj
204 204
  <ItemGroup>
205 205
    <Compile Include="EnumerableExtensionsTest.cs" />
206 206
    <Compile Include="ExtensionTests.cs" />
207
    <Compile Include="FileSystemWatcherAdapterTest.cs" />
207 208
    <Compile Include="NetworkAgentTest.cs" />
208 209
    <Compile Include="PithosWorkflowTest.cs" />
209 210
    <Compile Include="Properties\AssemblyInfo.cs" />
b/trunk/Pithos.Core/Agents/FileSystemWatcherAdapter.cs
47 47
namespace Pithos.Core.Agents
48 48
{
49 49
    using System;
50
    using System.Collections.Generic;
51
    using System.Linq;
52
    using System.Text;
53 50

  
54 51
    /// <summary>
55
    /// TODO: Update summary.
52
    /// Wraps a FileSystemWatcher and raises Move and child object events 
56 53
    /// </summary>
57 54
    public class FileSystemWatcherAdapter
58 55
    {
......
76 73
        }
77 74

  
78 75
        private string _cachedDeletedFullPath;
79
        private const int PropagateDelay = 10;        
80

  
81
        private static void OnTimeout(object state)
82
        {
83
            throw new NotImplementedException();
84
        }
76
        private const int PropagateDelay = 10;
85 77

  
86 78
        private void OnDeleted(object sender, FileSystemEventArgs e)
87 79
        {
......
115 107
            TaskEx.Delay(PropagateDelay).ContinueWith(t =>
116 108
                                                           {
117 109
                                                               var myPath = e.FullPath;
118
                                                               if (this._cachedDeletedFullPath==myPath)
110
                                                               if (_cachedDeletedFullPath==myPath)
119 111
                                                                    PropagateCachedDeleted(sender);
120 112
                                                           });
121 113
        }
......
162 154
                PropagateCachedDeleted(sender);
163 155
                //and propagate the actual event
164 156
                var actualEvent = e.ChangeType == WatcherChangeTypes.Created ? Created : Changed;
157

  
165 158
                if (actualEvent != null)
159
                {
166 160
                    actualEvent(sender, e);
161
                    //For Folders, raise Created events for all children
162
                    RaiseCreatedForChildren(sender,e);
163
                }
167 164
            }
168 165
            finally
169 166
            {
......
173 170

  
174 171
        }
175 172

  
173
        private void RaiseCreatedForChildren(object sender, FileSystemEventArgs e)
174
        {
175
            Contract.Requires(sender!=null);
176
            Contract.Requires(e!=null);
177

  
178
            if (e.ChangeType != WatcherChangeTypes.Created)
179
                return;
180
            var dir= new DirectoryInfo(e.FullPath);
181
            //Skip if this is not a folder
182
            if (!dir.Exists)
183
                return;
184
            foreach (var info in dir.EnumerateFileSystemInfos("*",SearchOption.AllDirectories))
185
            {
186
                var path = Path.GetDirectoryName(info.FullName);
187
                Created(sender,new FileSystemEventArgs(WatcherChangeTypes.Created,path,info.Name));
188
            }            
189
        }
190

  
176 191
        private bool HandleMoved(object sender, FileSystemEventArgs e)
177 192
        {
178 193
            if (sender == null)
b/trunk/Pithos.Setup.x64/Pithos.Setup.x64.vdproj
1310 1310
        {
1311 1311
        "Name" = "8:Microsoft Visual Studio"
1312 1312
        "ProductName" = "8:Pithos"
1313
        "ProductCode" = "8:{013ABFEC-E6FB-4C5E-930F-736A4730268A}"
1314
        "PackageCode" = "8:{C7D65245-240C-42FA-9E46-2AAFB3351131}"
1313
        "ProductCode" = "8:{871B6E5B-9773-43A7-B128-29CC044ED231}"
1314
        "PackageCode" = "8:{92373269-1FD4-4034-84D7-54D1E333A7E0}"
1315 1315
        "UpgradeCode" = "8:{205365D1-28AA-4322-A46C-FCB37502C6EF}"
1316 1316
        "AspNetVersion" = "8:4.0.30319.0"
1317 1317
        "RestartWWWService" = "11:FALSE"
1318 1318
        "RemovePreviousVersions" = "11:TRUE"
1319 1319
        "DetectNewerInstalledVersion" = "11:TRUE"
1320 1320
        "InstallAllUsers" = "11:FALSE"
1321
        "ProductVersion" = "8:0.7.20229"
1321
        "ProductVersion" = "8:0.7.20301"
1322 1322
        "Manufacturer" = "8:GRNET"
1323 1323
        "ARPHELPTELEPHONE" = "8:"
1324 1324
        "ARPHELPLINK" = "8:http://code.grnet.gr/projects/pithos-ms-client"
b/trunk/Pithos.Setup.x86/Pithos.Setup.x86.vdproj
1310 1310
        {
1311 1311
        "Name" = "8:Microsoft Visual Studio"
1312 1312
        "ProductName" = "8:Pithos"
1313
        "ProductCode" = "8:{CDF5C181-8F2F-4135-9861-89F031E4B435}"
1314
        "PackageCode" = "8:{CD80CD47-92C9-4445-A777-4110130323B8}"
1313
        "ProductCode" = "8:{89D5E193-BDED-4391-9258-E5CAB4EE38A1}"
1314
        "PackageCode" = "8:{1D7F64B1-0744-4B85-884E-474AFFABA160}"
1315 1315
        "UpgradeCode" = "8:{205365D1-28AA-4322-A46C-FCB37502C6EF}"
1316 1316
        "AspNetVersion" = "8:4.0.30319.0"
1317 1317
        "RestartWWWService" = "11:FALSE"
1318 1318
        "RemovePreviousVersions" = "11:TRUE"
1319 1319
        "DetectNewerInstalledVersion" = "11:TRUE"
1320 1320
        "InstallAllUsers" = "11:FALSE"
1321
        "ProductVersion" = "8:0.7.20229"
1321
        "ProductVersion" = "8:0.7.20301"
1322 1322
        "Manufacturer" = "8:GRNET"
1323 1323
        "ARPHELPTELEPHONE" = "8:"
1324 1324
        "ARPHELPLINK" = "8:http://code.grnet.gr/projects/pithos-ms-client"

Also available in: Unified diff