##// END OF EJS Templates
fixed unpredictable Safe.Dispose behaviour
fixed unpredictable Safe.Dispose behaviour

File last commit:

r203:4d9830a9bbb8 v2
r238:bdfdba6b645b v2
Show More
SuccessPromise.cs
99 lines | 2.2 KiB | text/x-csharp | CSharpLexer
cin
RC: cancellation support for promises + tests
r145 using System;
namespace Implab {
public class SuccessPromise : IPromise {
#region IPromise implementation
public IPromise On(Action success, Action<Exception> error, Action<Exception> cancel) {
if (success != null) {
try {
success();
cin
Added 'Fail' method to RunnableComponent which allows component to move from...
r203 // Analysis disable once EmptyGeneralCatchClause
} catch {
cin
RC: cancellation support for promises + tests
r145 }
}
return this;
}
public IPromise On(Action success, Action<Exception> error) {
if (success != null) {
try {
success();
cin
Added 'Fail' method to RunnableComponent which allows component to move from...
r203 // Analysis disable once EmptyGeneralCatchClause
} catch {
cin
RC: cancellation support for promises + tests
r145 }
}
return this;
}
public IPromise On(Action success) {
if (success != null) {
try {
success();
// Analysis disable once EmptyGeneralCatchClause
} catch {
}
}
return this;
}
public IPromise On(Action handler, PromiseEventType events) {
if (handler != null && events.HasFlag(PromiseEventType.Success)) {
try {
handler();
// Analysis disable once EmptyGeneralCatchClause
} catch {
}
}
return this;
}
public IPromise<T> Cast<T>() {
throw new InvalidCastException();
}
public void Join() {
}
public void Join(int timeout) {
}
public Type PromiseType {
get {
return typeof(void);
}
}
public bool IsResolved {
get {
return true;
}
}
public bool IsCancelled {
get {
return false;
}
}
public Exception Error {
get {
return null;
}
}
#endregion
#region ICancellable implementation
public void Cancel() {
}
public void Cancel(Exception reason) {
}
#endregion
}
}