8
8
9
9
namespace Exceptionless . WebApi {
10
10
public class ExceptionlessHandleErrorAttribute : IExceptionFilter {
11
- public bool HasWrappedFilter { get { return WrappedFilter != null ; } }
11
+ private readonly ExceptionlessClient _client ;
12
+
13
+ public bool HasWrappedFilter => WrappedFilter != null ;
12
14
13
15
public IExceptionFilter WrappedFilter { get ; set ; }
14
- public bool AllowMultiple { get { return HasWrappedFilter && WrappedFilter . AllowMultiple ; } }
16
+
17
+ public bool AllowMultiple => HasWrappedFilter && WrappedFilter . AllowMultiple ;
18
+
19
+ public ExceptionlessHandleErrorAttribute ( ExceptionlessClient client = null ) {
20
+ _client = client ?? ExceptionlessClient . Default ;
21
+ }
15
22
16
23
public virtual void OnHttpException ( HttpActionExecutedContext actionExecutedContext , CancellationToken cancellationToken ) {
17
24
if ( HasWrappedFilter )
@@ -22,11 +29,11 @@ public virtual void OnHttpException(HttpActionExecutedContext actionExecutedCont
22
29
contextData . SetSubmissionMethod ( "ExceptionHttpFilter" ) ;
23
30
contextData . Add ( "HttpActionContext" , actionExecutedContext . ActionContext ) ;
24
31
25
- actionExecutedContext . Exception . ToExceptionless ( contextData ) . Submit ( ) ;
32
+ actionExecutedContext . Exception . ToExceptionless ( contextData , _client ) . Submit ( ) ;
26
33
}
27
34
28
35
public Task ExecuteExceptionFilterAsync ( HttpActionExecutedContext actionExecutedContext , CancellationToken cancellationToken ) {
29
- ExceptionlessClient . Default . Configuration . Resolver . GetLog ( ) . Trace ( "ExecuteExceptionFilterAsync executing..." ) ;
36
+ _client . Configuration . Resolver . GetLog ( ) . Trace ( "ExecuteExceptionFilterAsync executing..." ) ;
30
37
if ( actionExecutedContext == null )
31
38
throw new ArgumentNullException ( nameof ( actionExecutedContext ) ) ;
32
39
0 commit comments