Skip to content
This repository was archived by the owner on Dec 5, 2024. It is now read-only.

Commit 4d426e9

Browse files
Merge branch 'fixes/stop-watcher-for-commit' into enhancements/repository-watcher-refactor
# Conflicts: # src/GitHub.Api/Git/RepositoryManager.cs
2 parents 8447452 + 83e09a8 commit 4d426e9

File tree

1 file changed

+19
-19
lines changed

1 file changed

+19
-19
lines changed

src/GitHub.Api/Git/RepositoryManager.cs

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,7 @@ public ITask CommitAllFiles(string message, string body)
169169
.AddAll()
170170
.Then(GitClient.Commit(message, body));
171171

172-
return HookupHandlers(task);
172+
return HookupHandlers(task, true, true);
173173
}
174174

175175
public ITask CommitFiles(List<string> files, string message, string body)
@@ -178,37 +178,37 @@ public ITask CommitFiles(List<string> files, string message, string body)
178178
.Add(files)
179179
.Then(GitClient.Commit(message, body));
180180

181-
return HookupHandlers(task);
181+
return HookupHandlers(task, true, true);
182182
}
183183

184184
public ITask Fetch(string remote)
185185
{
186186
var task = GitClient.Fetch(remote);
187-
return HookupHandlers(task, false);
187+
return HookupHandlers(task, true, false);
188188
}
189189

190190
public ITask Pull(string remote, string branch)
191191
{
192192
var task = GitClient.Pull(remote, branch);
193-
return HookupHandlers(task);
193+
return HookupHandlers(task, true, true);
194194
}
195195

196196
public ITask Push(string remote, string branch)
197197
{
198198
var task = GitClient.Push(remote, branch);
199-
return HookupHandlers(task, false);
199+
return HookupHandlers(task, true, false);
200200
}
201201

202202
public ITask Revert(string changeset)
203203
{
204204
var task = GitClient.Revert(changeset);
205-
return HookupHandlers(task);
205+
return HookupHandlers(task, true, true);
206206
}
207207

208208
public ITask RemoteAdd(string remote, string url)
209209
{
210210
var task = GitClient.RemoteAdd(remote, url);
211-
task = HookupHandlers(task, false);
211+
task = HookupHandlers(task, true, false);
212212
if (!platform.Environment.IsWindows)
213213
{
214214
task.Then(_ => {
@@ -221,7 +221,7 @@ public ITask RemoteAdd(string remote, string url)
221221
public ITask RemoteRemove(string remote)
222222
{
223223
var task = GitClient.RemoteRemove(remote);
224-
task = HookupHandlers(task, false);
224+
task = HookupHandlers(task, true, false);
225225
if (!platform.Environment.IsWindows)
226226
{
227227
task.Then(_ => {
@@ -234,37 +234,37 @@ public ITask RemoteRemove(string remote)
234234
public ITask RemoteChange(string remote, string url)
235235
{
236236
var task = GitClient.RemoteChange(remote, url);
237-
return HookupHandlers(task, false);
237+
return HookupHandlers(task, true, false);
238238
}
239239

240240
public ITask SwitchBranch(string branch)
241241
{
242242
var task = GitClient.SwitchBranch(branch);
243-
return HookupHandlers(task);
243+
return HookupHandlers(task, true, true);
244244
}
245245

246246
public ITask DeleteBranch(string branch, bool deleteUnmerged = false)
247247
{
248248
var task = GitClient.DeleteBranch(branch, deleteUnmerged);
249-
return HookupHandlers(task, false);
249+
return HookupHandlers(task, true, false);
250250
}
251251

252252
public ITask CreateBranch(string branch, string baseBranch)
253253
{
254254
var task = GitClient.CreateBranch(branch, baseBranch);
255-
return HookupHandlers(task, false);
255+
return HookupHandlers(task, true, false);
256256
}
257257

258258
public ITask LockFile(string file)
259259
{
260260
var task = GitClient.Lock(file);
261-
return HookupHandlers(task, false);
261+
return HookupHandlers(task, true, false);
262262
}
263263

264264
public ITask UnlockFile(string file, bool force)
265265
{
266266
var task = GitClient.Unlock(file, force);
267-
return HookupHandlers(task, false);
267+
return HookupHandlers(task, true, false);
268268
}
269269

270270
public void UpdateGitLog()
@@ -280,30 +280,30 @@ public void UpdateGitLog()
280280
}).Start();
281281
}
282282

283-
private ITask<T> HookupHandlers<T>(ITask<T> task, bool disableWatcher = true, bool toggleBusyFlag = true)
283+
private ITask<T> HookupHandlers<T>(ITask<T> task, bool isExclusive, bool filesystemChangesExpected)
284284
{
285285
return new ActionTask(CancellationToken.None, () => {
286-
if (toggleBusyFlag)
286+
if (isExclusive)
287287
{
288288
Logger.Trace("Starting Operation - Setting Busy Flag");
289289
IsBusy = true;
290290
}
291291

292-
if (disableWatcher)
292+
if (filesystemChangesExpected)
293293
{
294294
Logger.Trace("Starting Operation - Disable Watcher");
295295
watcher.Stop();
296296
}
297297
})
298298
.Then(task)
299299
.Finally((success, exception, result) => {
300-
if (disableWatcher)
300+
if (filesystemChangesExpected)
301301
{
302302
Logger.Trace("Ended Operation - Enable Watcher");
303303
watcher.Start();
304304
}
305305

306-
if (toggleBusyFlag)
306+
if (isExclusive)
307307
{
308308
Logger.Trace("Ended Operation - Clearing Busy Flag");
309309
IsBusy = false;

0 commit comments

Comments
 (0)