< Summary

Class:Microsoft.Azure.ApplicationInsights.Query.Events
Assembly:Microsoft.Azure.ApplicationInsights.Query
File(s):C:\Git\azure-sdk-for-net\sdk\applicationinsights\Microsoft.Azure.ApplicationInsights.Query\src\Customized\Events.cs
C:\Git\azure-sdk-for-net\sdk\applicationinsights\Microsoft.Azure.ApplicationInsights.Query\src\Generated\Events.cs
Covered lines:379
Uncovered lines:162
Coverable lines:541
Total lines:1846
Line coverage:70% (379 of 541)
Covered branches:46
Total branches:130
Branch coverage:35.3% (46 of 130)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
GetTraceEventsWithHttpMessagesAsync()-100%100%
GetTraceEventWithHttpMessagesAsync()-100%100%
GetCustomEventsWithHttpMessagesAsync()-100%100%
GetCustomEventWithHttpMessagesAsync()-100%100%
GetPageViewEventsWithHttpMessagesAsync()-100%100%
GetPageViewEventWithHttpMessagesAsync()-100%100%
GetBrowserTimingEventsWithHttpMessagesAsync()-100%100%
GetBrowserTimingEventWithHttpMessagesAsync()-100%100%
GetRequestEventsWithHttpMessagesAsync()-100%100%
GetRequestEventWithHttpMessagesAsync()-100%100%
GetDependencyEventsWithHttpMessagesAsync()-100%100%
GetDependencyEventWithHttpMessagesAsync()-100%100%
GetExceptionEventsWithHttpMessagesAsync()-100%100%
GetExceptionEventWithHttpMessagesAsync()-100%100%
GetAvailabilityResultEventsWithHttpMessagesAsync()-100%100%
GetAvailabilityResultEventWithHttpMessagesAsync()-100%100%
GetPerformanceCounterEventsWithHttpMessagesAsync()-100%100%
GetPerformanceCounterEventWithHttpMessagesAsync()-100%100%
GetCustomMetricEventsWithHttpMessagesAsync()-100%100%
GetCustomMetricEventWithHttpMessagesAsync()-100%100%
.ctor(...)-80%50%
get_Client()-100%100%
GetByTypeWithHttpMessagesAsync()-48.57%48.21%
GetWithHttpMessagesAsync()-52.44%45%
GetOdataMetadataWithHttpMessagesAsync()-0%0%

File(s)

C:\Git\azure-sdk-for-net\sdk\applicationinsights\Microsoft.Azure.ApplicationInsights.Query\src\Customized\Events.cs

#LineLine coverage
 1using Microsoft.Azure.ApplicationInsights.Query;
 2using Microsoft.Azure.ApplicationInsights.Query.Models;
 3using Microsoft.Rest;
 4using System.Collections.Generic;
 5using System.Linq;
 6using System.Net.Http;
 7using System.Threading;
 8using System.Threading.Tasks;
 9
 10namespace Microsoft.Azure.ApplicationInsights.Query
 11{
 12    public partial class Events : IServiceOperations<ApplicationInsightsDataClient>, IEvents
 13    {
 14
 15        #region Event Extensions
 16
 17        /// <summary>
 18        /// Execute OData query for trace events
 19        /// </summary>
 20        /// <remarks>
 21        /// Executes an OData query for trace events
 22        /// </remarks>
 23        /// <param name='timespan'>
 24        /// Optional. The timespan over which to retrieve events. This is an
 25        /// ISO8601 time period value.  This timespan is applied in addition to
 26        /// any that are specified in the Odata expression.
 27        /// </param>
 28        /// <param name='filter'>
 29        /// An expression used to filter the returned events
 30        /// </param>
 31        /// <param name='search'>
 32        /// A free-text search expression to match for whether a particular
 33        /// event should be returned
 34        /// </param>
 35        /// <param name='orderby'>
 36        /// A comma-separated list of properties with \"asc\" (the default) or
 37        /// \"desc\" to control the order of returned events
 38        /// </param>
 39        /// <param name='select'>
 40        /// Limits the properties to just those requested on each returned
 41        /// event
 42        /// </param>
 43        /// <param name='skip'>
 44        /// The number of items to skip over before returning events
 45        /// </param>
 46        /// <param name='top'>
 47        /// The number of events to return
 48        /// </param>
 49        /// <param name='format'>
 50        /// Format for the returned events
 51        /// </param>
 52        /// <param name='count'>
 53        /// Request a count of matching items included with the returned events
 54        /// </param>
 55        /// <param name='apply'>
 56        /// An expression used for aggregation over returned events
 57        /// </param>
 58        /// <param name='customHeaders'>
 59        /// The headers that will be added to request.
 60        /// </param>
 61        /// <param name='cancellationToken'>
 62        /// The cancellation token.
 63        /// </param>
 64        public async Task<HttpOperationResponse<EventsResults<EventsTraceResult>>> GetTraceEventsWithHttpMessagesAsync(
 65            string appId, string timespan = default(string), string filter = default(string), string search = default(st
 66            string orderby = default(string), string select = default(string), int? skip = default(int?),
 67            int? top = default(int?), string format = default(string), bool? count = default(bool?),
 68            string apply = default(string), Dictionary<string, List<string>> customHeaders = null,
 69            CancellationToken cancellationToken = default(CancellationToken))
 70        {
 271            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.Traces, timespan, filter, search, ord
 272                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 273            var realBody = realResult.Body;
 274            return new HttpOperationResponse<EventsResults<EventsTraceResult>>
 275            {
 276                Request = realResult.Request,
 277                Response = realResult.Response,
 278                Body = new EventsResults<EventsTraceResult>
 279                {
 280                    Aimessages = realBody.Aimessages,
 281                    Value = realBody.Value.OfType<EventsTraceResult>().ToList(),
 282                }
 283            };
 284        }
 85
 86        /// <summary>
 87        /// Get a trace event
 88        /// </summary>
 89        /// <remarks>
 90        /// Gets the data for a single trace event
 91        /// </remarks>
 92        /// <param name='appId'>
 93        /// ID of the application. This is Application ID from the API Access settings
 94        /// blade in the Azure portal.
 95        /// </param>
 96        /// <param name='eventId'>
 97        /// ID of event.
 98        /// </param>
 99        /// <param name='timespan'>
 100        /// Optional. The timespan over which to retrieve events. This is an
 101        /// ISO8601 time period value.  This timespan is applied in addition to
 102        /// any that are specified in the Odata expression.
 103        /// </param>
 104        /// <param name='customHeaders'>
 105        /// The headers that will be added to request.
 106        /// </param>
 107        /// <param name='cancellationToken'>
 108        /// The cancellation token.
 109        /// </param>
 110        public async Task<HttpOperationResponse<EventsResults<EventsTraceResult>>> GetTraceEventWithHttpMessagesAsync(
 111            string appId, string eventId = default(string), string timespan = default(string),
 112            Dictionary<string, List<string>> customHeaders = null,
 113            CancellationToken cancellationToken = default(CancellationToken))
 114        {
 2115            var realResult = await GetWithHttpMessagesAsync(appId, EventType.Traces, eventId, timespan, customHeaders,
 2116                cancellationToken).ConfigureAwait(false);
 2117            var realBody = realResult.Body;
 2118            return new HttpOperationResponse<EventsResults<EventsTraceResult>>
 2119            {
 2120                Request = realResult.Request,
 2121                Response = realResult.Response,
 2122                Body = new EventsResults<EventsTraceResult>
 2123                {
 2124                    Aimessages = realBody.Aimessages,
 2125                    Value = realBody.Value.OfType<EventsTraceResult>().ToList(),
 2126                }
 2127            };
 2128        }
 129
 130        /// <summary>
 131        /// Execute OData query for custom events
 132        /// </summary>
 133        /// <remarks>
 134        /// Executes an OData query for custom events
 135        /// </remarks>
 136        /// <param name='appId'>
 137        /// ID of the application. This is Application ID from the API Access settings
 138        /// blade in the Azure portal.
 139        /// </param>
 140        /// <param name='timespan'>
 141        /// Optional. The timespan over which to retrieve events. This is an
 142        /// ISO8601 time period value.  This timespan is applied in addition to
 143        /// any that are specified in the Odata expression.
 144        /// </param>
 145        /// <param name='filter'>
 146        /// An expression used to filter the returned events
 147        /// </param>
 148        /// <param name='search'>
 149        /// A free-text search expression to match for whether a particular
 150        /// event should be returned
 151        /// </param>
 152        /// <param name='orderby'>
 153        /// A comma-separated list of properties with \"asc\" (the default) or
 154        /// \"desc\" to control the order of returned events
 155        /// </param>
 156        /// <param name='select'>
 157        /// Limits the properties to just those requested on each returned
 158        /// event
 159        /// </param>
 160        /// <param name='skip'>
 161        /// The number of items to skip over before returning events
 162        /// </param>
 163        /// <param name='top'>
 164        /// The number of events to return
 165        /// </param>
 166        /// <param name='format'>
 167        /// Format for the returned events
 168        /// </param>
 169        /// <param name='count'>
 170        /// Request a count of matching items included with the returned events
 171        /// </param>
 172        /// <param name='apply'>
 173        /// An expression used for aggregation over returned events
 174        /// </param>
 175        /// <param name='customHeaders'>
 176        /// The headers that will be added to request.
 177        /// </param>
 178        /// <param name='cancellationToken'>
 179        /// The cancellation token.
 180        /// </param>
 181        public async Task<HttpOperationResponse<EventsResults<EventsCustomEventResult>>>
 182            GetCustomEventsWithHttpMessagesAsync(string appId, string timespan = default(string), string filter = defaul
 183                string search = default(string), string orderby = default(string), string select = default(string),
 184                int? skip = default(int?), int? top = default(int?), string format = default(string),
 185                bool? count = default(bool?), string apply = default(string),
 186                Dictionary<string, List<string>> customHeaders = null,
 187                CancellationToken cancellationToken = default(CancellationToken))
 188        {
 2189            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.CustomEvents, timespan, filter, searc
 2190                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2191            var realBody = realResult.Body;
 2192            return new HttpOperationResponse<EventsResults<EventsCustomEventResult>>
 2193            {
 2194                Request = realResult.Request,
 2195                Response = realResult.Response,
 2196                Body = new EventsResults<EventsCustomEventResult>
 2197                {
 2198                    Aimessages = realBody.Aimessages,
 2199                    Value = realBody.Value.OfType<EventsCustomEventResult>().ToList(),
 2200                }
 2201            };
 2202        }
 203
 204        /// <summary>
 205        /// Get a custom event
 206        /// </summary>
 207        /// <remarks>
 208        /// Gets the data for a single custom event
 209        /// </remarks>
 210        /// <param name='appId'>
 211        /// ID of the application. This is Application ID from the API Access settings
 212        /// blade in the Azure portal.
 213        /// </param>
 214        /// <param name='eventId'>
 215        /// ID of event.
 216        /// </param>
 217        /// <param name='timespan'>
 218        /// Optional. The timespan over which to retrieve events. This is an
 219        /// ISO8601 time period value.  This timespan is applied in addition to
 220        /// any that are specified in the Odata expression.
 221        /// </param>
 222        /// <param name='customHeaders'>
 223        /// The headers that will be added to request.
 224        /// </param>
 225        /// <param name='cancellationToken'>
 226        /// The cancellation token.
 227        /// </param>
 228        public async Task<HttpOperationResponse<EventsResults<EventsCustomEventResult>>>
 229            GetCustomEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan = defaul
 230                Dictionary<string, List<string>> customHeaders = null,
 231                CancellationToken cancellationToken = default(CancellationToken))
 232        {
 2233            var realResult = await GetWithHttpMessagesAsync(appId, EventType.CustomEvents, eventId, timespan, customHead
 2234                cancellationToken).ConfigureAwait(false);
 2235            var realBody = realResult.Body;
 2236            return new HttpOperationResponse<EventsResults<EventsCustomEventResult>>
 2237            {
 2238                Request = realResult.Request,
 2239                Response = realResult.Response,
 2240                Body = new EventsResults<EventsCustomEventResult>
 2241                {
 2242                    Aimessages = realBody.Aimessages,
 2243                    Value = realBody.Value.OfType<EventsCustomEventResult>().ToList(),
 2244                }
 2245            };
 2246        }
 247
 248        /// <summary>
 249        /// Execute OData query for page view events
 250        /// </summary>
 251        /// <remarks>
 252        /// Executes an OData query for page view events
 253        /// </remarks>
 254        /// <param name='appId'>
 255        /// ID of the application. This is Application ID from the API Access settings
 256        /// blade in the Azure portal.
 257        /// </param>
 258        /// <param name='timespan'>
 259        /// Optional. The timespan over which to retrieve events. This is an
 260        /// ISO8601 time period value.  This timespan is applied in addition to
 261        /// any that are specified in the Odata expression.
 262        /// </param>
 263        /// <param name='filter'>
 264        /// An expression used to filter the returned events
 265        /// </param>
 266        /// <param name='search'>
 267        /// A free-text search expression to match for whether a particular
 268        /// event should be returned
 269        /// </param>
 270        /// <param name='orderby'>
 271        /// A comma-separated list of properties with \"asc\" (the default) or
 272        /// \"desc\" to control the order of returned events
 273        /// </param>
 274        /// <param name='select'>
 275        /// Limits the properties to just those requested on each returned
 276        /// event
 277        /// </param>
 278        /// <param name='skip'>
 279        /// The number of items to skip over before returning events
 280        /// </param>
 281        /// <param name='top'>
 282        /// The number of events to return
 283        /// </param>
 284        /// <param name='format'>
 285        /// Format for the returned events
 286        /// </param>
 287        /// <param name='count'>
 288        /// Request a count of matching items included with the returned events
 289        /// </param>
 290        /// <param name='apply'>
 291        /// An expression used for aggregation over returned events
 292        /// </param>
 293        /// <param name='customHeaders'>
 294        /// The headers that will be added to request.
 295        /// </param>
 296        /// <param name='cancellationToken'>
 297        /// The cancellation token.
 298        /// </param>
 299        public async Task<HttpOperationResponse<EventsResults<EventsPageViewResult>>>
 300            GetPageViewEventsWithHttpMessagesAsync(string appId, string timespan = default(string), string filter = defa
 301                string search = default(string), string orderby = default(string), string select = default(string),
 302                int? skip = default(int?), int? top = default(int?), string format = default(string),
 303                bool? count = default(bool?), string apply = default(string),
 304                Dictionary<string, List<string>> customHeaders = null,
 305                CancellationToken cancellationToken = default(CancellationToken))
 306        {
 2307            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.PageViews, timespan, filter, search, 
 2308                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2309            var realBody = realResult.Body;
 2310            return new HttpOperationResponse<EventsResults<EventsPageViewResult>>
 2311            {
 2312                Request = realResult.Request,
 2313                Response = realResult.Response,
 2314                Body = new EventsResults<EventsPageViewResult>
 2315                {
 2316                    Aimessages = realBody.Aimessages,
 2317                    Value = realBody.Value.OfType<EventsPageViewResult>().ToList(),
 2318                }
 2319            };
 2320        }
 321
 322        /// <summary>
 323        /// Get a page view event
 324        /// </summary>
 325        /// <remarks>
 326        /// Gets the data for a single page view event
 327        /// </remarks>
 328        /// <param name='appId'>
 329        /// ID of the application. This is Application ID from the API Access settings
 330        /// blade in the Azure portal.
 331        /// </param>
 332        /// <param name='eventId'>
 333        /// ID of event.
 334        /// </param>
 335        /// <param name='timespan'>
 336        /// Optional. The timespan over which to retrieve events. This is an
 337        /// ISO8601 time period value.  This timespan is applied in addition to
 338        /// any that are specified in the Odata expression.
 339        /// </param>
 340        /// <param name='customHeaders'>
 341        /// The headers that will be added to request.
 342        /// </param>
 343        /// <param name='cancellationToken'>
 344        /// The cancellation token.
 345        /// </param>
 346        public async Task<HttpOperationResponse<EventsResults<EventsPageViewResult>>>
 347            GetPageViewEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan = defa
 348                Dictionary<string, List<string>> customHeaders = null,
 349                CancellationToken cancellationToken = default(CancellationToken))
 350        {
 2351            var realResult = await GetWithHttpMessagesAsync(appId, EventType.PageViews, eventId, timespan, customHeaders
 2352                cancellationToken).ConfigureAwait(false);
 2353            var realBody = realResult.Body;
 2354            return new HttpOperationResponse<EventsResults<EventsPageViewResult>>
 2355            {
 2356                Request = realResult.Request,
 2357                Response = realResult.Response,
 2358                Body = new EventsResults<EventsPageViewResult>
 2359                {
 2360                    Aimessages = realBody.Aimessages,
 2361                    Value = realBody.Value.OfType<EventsPageViewResult>().ToList(),
 2362                }
 2363            };
 2364        }
 365
 366        /// <summary>
 367        /// Execute OData query for browser timing events
 368        /// </summary>
 369        /// <remarks>
 370        /// Executes an OData query for browser timing events
 371        /// </remarks>
 372        /// <param name='appId'>
 373        /// ID of the application. This is Application ID from the API Access settings
 374        /// blade in the Azure portal.
 375        /// </param>
 376        /// <param name='timespan'>
 377        /// Optional. The timespan over which to retrieve events. This is an
 378        /// ISO8601 time period value.  This timespan is applied in addition to
 379        /// any that are specified in the Odata expression.
 380        /// </param>
 381        /// <param name='filter'>
 382        /// An expression used to filter the returned events
 383        /// </param>
 384        /// <param name='search'>
 385        /// A free-text search expression to match for whether a particular
 386        /// event should be returned
 387        /// </param>
 388        /// <param name='orderby'>
 389        /// A comma-separated list of properties with \"asc\" (the default) or
 390        /// \"desc\" to control the order of returned events
 391        /// </param>
 392        /// <param name='select'>
 393        /// Limits the properties to just those requested on each returned
 394        /// event
 395        /// </param>
 396        /// <param name='skip'>
 397        /// The number of items to skip over before returning events
 398        /// </param>
 399        /// <param name='top'>
 400        /// The number of events to return
 401        /// </param>
 402        /// <param name='format'>
 403        /// Format for the returned events
 404        /// </param>
 405        /// <param name='count'>
 406        /// Request a count of matching items included with the returned events
 407        /// </param>
 408        /// <param name='apply'>
 409        /// An expression used for aggregation over returned events
 410        /// </param>
 411        /// <param name='customHeaders'>
 412        /// The headers that will be added to request.
 413        /// </param>
 414        /// <param name='cancellationToken'>
 415        /// The cancellation token.
 416        /// </param>
 417        public async Task<HttpOperationResponse<EventsResults<EventsBrowserTimingResult>>>
 418            GetBrowserTimingEventsWithHttpMessagesAsync(string appId, string timespan = default(string),
 419                string filter = default(string), string search = default(string), string orderby = default(string),
 420                string select = default(string), int? skip = default(int?), int? top = default(int?),
 421                string format = default(string), bool? count = default(bool?), string apply = default(string),
 422                Dictionary<string, List<string>> customHeaders = null,
 423                CancellationToken cancellationToken = default(CancellationToken))
 424        {
 2425            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.BrowserTimings, timespan, filter, sea
 2426                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2427            var realBody = realResult.Body;
 2428            return new HttpOperationResponse<EventsResults<EventsBrowserTimingResult>>
 2429            {
 2430                Request = realResult.Request,
 2431                Response = realResult.Response,
 2432                Body = new EventsResults<EventsBrowserTimingResult>
 2433                {
 2434                    Aimessages = realBody.Aimessages,
 2435                    Value = realBody.Value.OfType<EventsBrowserTimingResult>().ToList(),
 2436                }
 2437            };
 2438        }
 439
 440        /// <summary>
 441        /// Get a browser timing event
 442        /// </summary>
 443        /// <remarks>
 444        /// Gets the data for a single browser timing event
 445        /// </remarks>
 446        /// <param name='appId'>
 447        /// ID of the application. This is Application ID from the API Access settings
 448        /// blade in the Azure portal.
 449        /// </param>
 450        /// <param name='eventId'>
 451        /// ID of event.
 452        /// </param>
 453        /// <param name='timespan'>
 454        /// Optional. The timespan over which to retrieve events. This is an
 455        /// ISO8601 time period value.  This timespan is applied in addition to
 456        /// any that are specified in the Odata expression.
 457        /// </param>
 458        /// <param name='customHeaders'>
 459        /// The headers that will be added to request.
 460        /// </param>
 461        /// <param name='cancellationToken'>
 462        /// The cancellation token.
 463        /// </param>
 464        public async Task<HttpOperationResponse<EventsResults<EventsBrowserTimingResult>>>
 465            GetBrowserTimingEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan =
 466                Dictionary<string, List<string>> customHeaders = null,
 467                CancellationToken cancellationToken = default(CancellationToken))
 468        {
 2469            var realResult = await GetWithHttpMessagesAsync(appId, EventType.BrowserTimings, eventId, timespan, customHe
 2470                cancellationToken).ConfigureAwait(false);
 2471            var realBody = realResult.Body;
 2472            return new HttpOperationResponse<EventsResults<EventsBrowserTimingResult>>
 2473            {
 2474                Request = realResult.Request,
 2475                Response = realResult.Response,
 2476                Body = new EventsResults<EventsBrowserTimingResult>
 2477                {
 2478                    Aimessages = realBody.Aimessages,
 2479                    Value = realBody.Value.OfType<EventsBrowserTimingResult>().ToList(),
 2480                }
 2481            };
 2482        }
 483
 484        /// <summary>
 485        /// Execute OData query for request events
 486        /// </summary>
 487        /// <remarks>
 488        /// Executes an OData query for request events
 489        /// </remarks>
 490        /// <param name='appId'>
 491        /// ID of the application. This is Application ID from the API Access settings
 492        /// blade in the Azure portal.
 493        /// </param>
 494        /// <param name='timespan'>
 495        /// Optional. The timespan over which to retrieve events. This is an
 496        /// ISO8601 time period value.  This timespan is applied in addition to
 497        /// any that are specified in the Odata expression.
 498        /// </param>
 499        /// <param name='filter'>
 500        /// An expression used to filter the returned events
 501        /// </param>
 502        /// <param name='search'>
 503        /// A free-text search expression to match for whether a particular
 504        /// event should be returned
 505        /// </param>
 506        /// <param name='orderby'>
 507        /// A comma-separated list of properties with \"asc\" (the default) or
 508        /// \"desc\" to control the order of returned events
 509        /// </param>
 510        /// <param name='select'>
 511        /// Limits the properties to just those requested on each returned
 512        /// event
 513        /// </param>
 514        /// <param name='skip'>
 515        /// The number of items to skip over before returning events
 516        /// </param>
 517        /// <param name='top'>
 518        /// The number of events to return
 519        /// </param>
 520        /// <param name='format'>
 521        /// Format for the returned events
 522        /// </param>
 523        /// <param name='count'>
 524        /// Request a count of matching items included with the returned events
 525        /// </param>
 526        /// <param name='apply'>
 527        /// An expression used for aggregation over returned events
 528        /// </param>
 529        /// <param name='customHeaders'>
 530        /// The headers that will be added to request.
 531        /// </param>
 532        /// <param name='cancellationToken'>
 533        /// The cancellation token.
 534        /// </param>
 535        public async Task<HttpOperationResponse<EventsResults<EventsRequestResult>>>
 536            GetRequestEventsWithHttpMessagesAsync(string appId, string timespan = default(string), string filter = defau
 537                string search = default(string), string orderby = default(string), string select = default(string),
 538                int? skip = default(int?), int? top = default(int?), string format = default(string),
 539                bool? count = default(bool?), string apply = default(string),
 540                Dictionary<string, List<string>> customHeaders = null,
 541                CancellationToken cancellationToken = default(CancellationToken))
 542        {
 2543            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.Requests, timespan, filter, search, o
 2544                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2545            var realBody = realResult.Body;
 2546            return new HttpOperationResponse<EventsResults<EventsRequestResult>>
 2547            {
 2548                Request = realResult.Request,
 2549                Response = realResult.Response,
 2550                Body = new EventsResults<EventsRequestResult>
 2551                {
 2552                    Aimessages = realBody.Aimessages,
 2553                    Value = realBody.Value.OfType<EventsRequestResult>().ToList(),
 2554                }
 2555            };
 2556        }
 557
 558        /// <summary>
 559        /// Get a request event
 560        /// </summary>
 561        /// <remarks>
 562        /// Gets the data for a single request event
 563        /// </remarks>
 564        /// <param name='appId'>
 565        /// ID of the application. This is Application ID from the API Access settings
 566        /// blade in the Azure portal.
 567        /// </param>
 568        /// <param name='eventId'>
 569        /// ID of event.
 570        /// </param>
 571        /// <param name='timespan'>
 572        /// Optional. The timespan over which to retrieve events. This is an
 573        /// ISO8601 time period value.  This timespan is applied in addition to
 574        /// any that are specified in the Odata expression.
 575        /// </param>
 576        /// <param name='customHeaders'>
 577        /// The headers that will be added to request.
 578        /// </param>
 579        /// <param name='cancellationToken'>
 580        /// The cancellation token.
 581        /// </param>
 582        public async Task<HttpOperationResponse<EventsResults<EventsRequestResult>>>
 583            GetRequestEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan = defau
 584                Dictionary<string, List<string>> customHeaders = null,
 585                CancellationToken cancellationToken = default(CancellationToken))
 586        {
 2587            var realResult = await GetWithHttpMessagesAsync(appId, EventType.Requests, eventId, timespan, customHeaders,
 2588                cancellationToken).ConfigureAwait(false);
 2589            var realBody = realResult.Body;
 2590            return new HttpOperationResponse<EventsResults<EventsRequestResult>>
 2591            {
 2592                Request = realResult.Request,
 2593                Response = realResult.Response,
 2594                Body = new EventsResults<EventsRequestResult>
 2595                {
 2596                    Aimessages = realBody.Aimessages,
 2597                    Value = realBody.Value.OfType<EventsRequestResult>().ToList(),
 2598                }
 2599            };
 2600        }
 601
 602        /// <summary>
 603        /// Execute OData query for dependency events
 604        /// </summary>
 605        /// <remarks>
 606        /// Executes an OData query for dependency events
 607        /// </remarks>
 608        /// <param name='appId'>
 609        /// ID of the application. This is Application ID from the API Access settings
 610        /// blade in the Azure portal.
 611        /// </param>
 612        /// <param name='timespan'>
 613        /// Optional. The timespan over which to retrieve events. This is an
 614        /// ISO8601 time period value.  This timespan is applied in addition to
 615        /// any that are specified in the Odata expression.
 616        /// </param>
 617        /// <param name='filter'>
 618        /// An expression used to filter the returned events
 619        /// </param>
 620        /// <param name='search'>
 621        /// A free-text search expression to match for whether a particular
 622        /// event should be returned
 623        /// </param>
 624        /// <param name='orderby'>
 625        /// A comma-separated list of properties with \"asc\" (the default) or
 626        /// \"desc\" to control the order of returned events
 627        /// </param>
 628        /// <param name='select'>
 629        /// Limits the properties to just those requested on each returned
 630        /// event
 631        /// </param>
 632        /// <param name='skip'>
 633        /// The number of items to skip over before returning events
 634        /// </param>
 635        /// <param name='top'>
 636        /// The number of events to return
 637        /// </param>
 638        /// <param name='format'>
 639        /// Format for the returned events
 640        /// </param>
 641        /// <param name='count'>
 642        /// Request a count of matching items included with the returned events
 643        /// </param>
 644        /// <param name='apply'>
 645        /// An expression used for aggregation over returned events
 646        /// </param>
 647        /// <param name='customHeaders'>
 648        /// The headers that will be added to request.
 649        /// </param>
 650        /// <param name='cancellationToken'>
 651        /// The cancellation token.
 652        /// </param>
 653        public async Task<HttpOperationResponse<EventsResults<EventsDependencyResult>>>
 654            GetDependencyEventsWithHttpMessagesAsync(string appId, string timespan = default(string), string filter = de
 655                string search = default(string), string orderby = default(string), string select = default(string),
 656                int? skip = default(int?), int? top = default(int?), string format = default(string),
 657                bool? count = default(bool?), string apply = default(string),
 658                Dictionary<string, List<string>> customHeaders = null,
 659                CancellationToken cancellationToken = default(CancellationToken))
 660        {
 2661            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.Dependencies, timespan, filter, searc
 2662                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2663            var realBody = realResult.Body;
 2664            return new HttpOperationResponse<EventsResults<EventsDependencyResult>>
 2665            {
 2666                Request = realResult.Request,
 2667                Response = realResult.Response,
 2668                Body = new EventsResults<EventsDependencyResult>
 2669                {
 2670                    Aimessages = realBody.Aimessages,
 2671                    Value = realBody.Value.OfType<EventsDependencyResult>().ToList(),
 2672                }
 2673            };
 2674        }
 675
 676        /// <summary>
 677        /// Get a dependency event
 678        /// </summary>
 679        /// <remarks>
 680        /// Gets the data for a single dependency event
 681        /// </remarks>
 682        /// <param name='appId'>
 683        /// ID of the application. This is Application ID from the API Access settings
 684        /// blade in the Azure portal.
 685        /// </param>
 686        /// <param name='eventId'>
 687        /// ID of event.
 688        /// </param>
 689        /// <param name='timespan'>
 690        /// Optional. The timespan over which to retrieve events. This is an
 691        /// ISO8601 time period value.  This timespan is applied in addition to
 692        /// any that are specified in the Odata expression.
 693        /// </param>
 694        /// <param name='customHeaders'>
 695        /// The headers that will be added to request.
 696        /// </param>
 697        /// <param name='cancellationToken'>
 698        /// The cancellation token.
 699        /// </param>
 700        public async Task<HttpOperationResponse<EventsResults<EventsDependencyResult>>>
 701            GetDependencyEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan = de
 702                Dictionary<string, List<string>> customHeaders = null,
 703                CancellationToken cancellationToken = default(CancellationToken))
 704        {
 2705            var realResult = await GetWithHttpMessagesAsync(appId, EventType.Dependencies, eventId, timespan, customHead
 2706                cancellationToken).ConfigureAwait(false);
 2707            var realBody = realResult.Body;
 2708            return new HttpOperationResponse<EventsResults<EventsDependencyResult>>
 2709            {
 2710                Request = realResult.Request,
 2711                Response = realResult.Response,
 2712                Body = new EventsResults<EventsDependencyResult>
 2713                {
 2714                    Aimessages = realBody.Aimessages,
 2715                    Value = realBody.Value.OfType<EventsDependencyResult>().ToList(),
 2716                }
 2717            };
 2718        }
 719
 720        /// <summary>
 721        /// Execute OData query for exception events
 722        /// </summary>
 723        /// <remarks>
 724        /// Executes an OData query for exception events
 725        /// </remarks>
 726        /// <param name='appId'>
 727        /// ID of the application. This is Application ID from the API Access settings
 728        /// blade in the Azure portal.
 729        /// </param>
 730        /// <param name='timespan'>
 731        /// Optional. The timespan over which to retrieve events. This is an
 732        /// ISO8601 time period value.  This timespan is applied in addition to
 733        /// any that are specified in the Odata expression.
 734        /// </param>
 735        /// <param name='filter'>
 736        /// An expression used to filter the returned events
 737        /// </param>
 738        /// <param name='search'>
 739        /// A free-text search expression to match for whether a particular
 740        /// event should be returned
 741        /// </param>
 742        /// <param name='orderby'>
 743        /// A comma-separated list of properties with \"asc\" (the default) or
 744        /// \"desc\" to control the order of returned events
 745        /// </param>
 746        /// <param name='select'>
 747        /// Limits the properties to just those requested on each returned
 748        /// event
 749        /// </param>
 750        /// <param name='skip'>
 751        /// The number of items to skip over before returning events
 752        /// </param>
 753        /// <param name='top'>
 754        /// The number of events to return
 755        /// </param>
 756        /// <param name='format'>
 757        /// Format for the returned events
 758        /// </param>
 759        /// <param name='count'>
 760        /// Request a count of matching items included with the returned events
 761        /// </param>
 762        /// <param name='apply'>
 763        /// An expression used for aggregation over returned events
 764        /// </param>
 765        /// <param name='customHeaders'>
 766        /// The headers that will be added to request.
 767        /// </param>
 768        /// <param name='cancellationToken'>
 769        /// The cancellation token.
 770        /// </param>
 771        public async Task<HttpOperationResponse<EventsResults<EventsExceptionResult>>>
 772            GetExceptionEventsWithHttpMessagesAsync(string appId, string timespan = default(string), string filter = def
 773                string search = default(string), string orderby = default(string), string select = default(string),
 774                int? skip = default(int?), int? top = default(int?), string format = default(string),
 775                bool? count = default(bool?), string apply = default(string),
 776                Dictionary<string, List<string>> customHeaders = null,
 777                CancellationToken cancellationToken = default(CancellationToken))
 778        {
 2779            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.Exceptions, timespan, filter, search,
 2780                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2781            var realBody = realResult.Body;
 2782            return new HttpOperationResponse<EventsResults<EventsExceptionResult>>
 2783            {
 2784                Request = realResult.Request,
 2785                Response = realResult.Response,
 2786                Body = new EventsResults<EventsExceptionResult>
 2787                {
 2788                    Aimessages = realBody.Aimessages,
 2789                    Value = realBody.Value.OfType<EventsExceptionResult>().ToList(),
 2790                }
 2791            };
 2792        }
 793
 794        /// <summary>
 795        /// Get an exception event
 796        /// </summary>
 797        /// <remarks>
 798        /// Gets the data for a single exception event
 799        /// </remarks>
 800        /// <param name='appId'>
 801        /// ID of the application. This is Application ID from the API Access settings
 802        /// blade in the Azure portal.
 803        /// </param>
 804        /// <param name='eventId'>
 805        /// ID of event.
 806        /// </param>
 807        /// <param name='timespan'>
 808        /// Optional. The timespan over which to retrieve events. This is an
 809        /// ISO8601 time period value.  This timespan is applied in addition to
 810        /// any that are specified in the Odata expression.
 811        /// </param>
 812        /// <param name='customHeaders'>
 813        /// The headers that will be added to request.
 814        /// </param>
 815        /// <param name='cancellationToken'>
 816        /// The cancellation token.
 817        /// </param>
 818        public async Task<HttpOperationResponse<EventsResults<EventsExceptionResult>>>
 819            GetExceptionEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan = def
 820                Dictionary<string, List<string>> customHeaders = null,
 821                CancellationToken cancellationToken = default(CancellationToken))
 822        {
 2823            var realResult = await GetWithHttpMessagesAsync(appId, EventType.Exceptions, eventId, timespan, customHeader
 2824                cancellationToken).ConfigureAwait(false);
 2825            var realBody = realResult.Body;
 2826            return new HttpOperationResponse<EventsResults<EventsExceptionResult>>
 2827            {
 2828                Request = realResult.Request,
 2829                Response = realResult.Response,
 2830                Body = new EventsResults<EventsExceptionResult>
 2831                {
 2832                    Aimessages = realBody.Aimessages,
 2833                    Value = realBody.Value.OfType<EventsExceptionResult>().ToList(),
 2834                }
 2835            };
 2836        }
 837
 838        /// <summary>
 839        /// Execute OData query for availability result events
 840        /// </summary>
 841        /// <remarks>
 842        /// Executes an OData query for availability result events
 843        /// </remarks>
 844        /// <param name='timespan'>
 845        /// Optional. The timespan over which to retrieve events. This is an
 846        /// ISO8601 time period value.  This timespan is applied in addition to
 847        /// any that are specified in the Odata expression.
 848        /// </param>
 849        /// <param name='appId'>
 850        /// ID of the application. This is Application ID from the API Access settings
 851        /// blade in the Azure portal.
 852        /// </param>
 853        /// <param name='filter'>
 854        /// An expression used to filter the returned events
 855        /// </param>
 856        /// <param name='search'>
 857        /// A free-text search expression to match for whether a particular
 858        /// event should be returned
 859        /// </param>
 860        /// <param name='orderby'>
 861        /// A comma-separated list of properties with \"asc\" (the default) or
 862        /// \"desc\" to control the order of returned events
 863        /// </param>
 864        /// <param name='select'>
 865        /// Limits the properties to just those requested on each returned
 866        /// event
 867        /// </param>
 868        /// <param name='skip'>
 869        /// The number of items to skip over before returning events
 870        /// </param>
 871        /// <param name='top'>
 872        /// The number of events to return
 873        /// </param>
 874        /// <param name='format'>
 875        /// Format for the returned events
 876        /// </param>
 877        /// <param name='count'>
 878        /// Request a count of matching items included with the returned events
 879        /// </param>
 880        /// <param name='apply'>
 881        /// An expression used for aggregation over returned events
 882        /// </param>
 883        /// <param name='customHeaders'>
 884        /// The headers that will be added to request.
 885        /// </param>
 886        /// <param name='cancellationToken'>
 887        /// The cancellation token.
 888        /// </param>
 889        public async Task<HttpOperationResponse<EventsResults<EventsAvailabilityResultResult>>>
 890            GetAvailabilityResultEventsWithHttpMessagesAsync(string appId, string timespan = default(string),
 891                string filter = default(string), string search = default(string), string orderby = default(string),
 892                string select = default(string), int? skip = default(int?), int? top = default(int?),
 893                string format = default(string), bool? count = default(bool?), string apply = default(string),
 894                Dictionary<string, List<string>> customHeaders = null,
 895                CancellationToken cancellationToken = default(CancellationToken))
 896        {
 2897            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.AvailabilityResults, timespan, filter
 2898                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 2899            var realBody = realResult.Body;
 2900            return new HttpOperationResponse<EventsResults<EventsAvailabilityResultResult>>
 2901            {
 2902                Request = realResult.Request,
 2903                Response = realResult.Response,
 2904                Body = new EventsResults<EventsAvailabilityResultResult>
 2905                {
 2906                    Aimessages = realBody.Aimessages,
 2907                    Value = realBody.Value.OfType<EventsAvailabilityResultResult>().ToList(),
 2908                }
 2909            };
 2910        }
 911
 912        /// <summary>
 913        /// Get an availability result event
 914        /// </summary>
 915        /// <remarks>
 916        /// Gets the data for a single availability result event
 917        /// </remarks>
 918        /// <param name='appId'>
 919        /// ID of the application. This is Application ID from the API Access settings
 920        /// blade in the Azure portal.
 921        /// </param>
 922        /// <param name='eventId'>
 923        /// ID of event.
 924        /// </param>
 925        /// <param name='timespan'>
 926        /// Optional. The timespan over which to retrieve events. This is an
 927        /// ISO8601 time period value.  This timespan is applied in addition to
 928        /// any that are specified in the Odata expression.
 929        /// </param>
 930        /// <param name='customHeaders'>
 931        /// The headers that will be added to request.
 932        /// </param>
 933        /// <param name='cancellationToken'>
 934        /// The cancellation token.
 935        /// </param>
 936        public async Task<HttpOperationResponse<EventsResults<EventsAvailabilityResultResult>>>
 937            GetAvailabilityResultEventWithHttpMessagesAsync(string appId, string eventId = default(string), string times
 938                Dictionary<string, List<string>> customHeaders = null,
 939                CancellationToken cancellationToken = default(CancellationToken))
 940        {
 2941            var realResult = await GetWithHttpMessagesAsync(appId, EventType.AvailabilityResults, eventId, timespan, cus
 2942                cancellationToken).ConfigureAwait(false);
 2943            var realBody = realResult.Body;
 2944            return new HttpOperationResponse<EventsResults<EventsAvailabilityResultResult>>
 2945            {
 2946                Request = realResult.Request,
 2947                Response = realResult.Response,
 2948                Body = new EventsResults<EventsAvailabilityResultResult>
 2949                {
 2950                    Aimessages = realBody.Aimessages,
 2951                    Value = realBody.Value.OfType<EventsAvailabilityResultResult>().ToList(),
 2952                }
 2953            };
 2954        }
 955
 956        /// <summary>
 957        /// Execute OData query for performance counter events
 958        /// </summary>
 959        /// <remarks>
 960        /// Executes an OData query for performance counter events
 961        /// </remarks>
 962        /// <param name='appId'>
 963        /// ID of the application. This is Application ID from the API Access settings
 964        /// blade in the Azure portal.
 965        /// </param>
 966        /// <param name='timespan'>
 967        /// Optional. The timespan over which to retrieve events. This is an
 968        /// ISO8601 time period value.  This timespan is applied in addition to
 969        /// any that are specified in the Odata expression.
 970        /// </param>
 971        /// <param name='filter'>
 972        /// An expression used to filter the returned events
 973        /// </param>
 974        /// <param name='search'>
 975        /// A free-text search expression to match for whether a particular
 976        /// event should be returned
 977        /// </param>
 978        /// <param name='orderby'>
 979        /// A comma-separated list of properties with \"asc\" (the default) or
 980        /// \"desc\" to control the order of returned events
 981        /// </param>
 982        /// <param name='select'>
 983        /// Limits the properties to just those requested on each returned
 984        /// event
 985        /// </param>
 986        /// <param name='skip'>
 987        /// The number of items to skip over before returning events
 988        /// </param>
 989        /// <param name='top'>
 990        /// The number of events to return
 991        /// </param>
 992        /// <param name='format'>
 993        /// Format for the returned events
 994        /// </param>
 995        /// <param name='count'>
 996        /// Request a count of matching items included with the returned events
 997        /// </param>
 998        /// <param name='apply'>
 999        /// An expression used for aggregation over returned events
 1000        /// </param>
 1001        /// <param name='customHeaders'>
 1002        /// The headers that will be added to request.
 1003        /// </param>
 1004        /// <param name='cancellationToken'>
 1005        /// The cancellation token.
 1006        /// </param>
 1007        public async Task<HttpOperationResponse<EventsResults<EventsPerformanceCounterResult>>>
 1008            GetPerformanceCounterEventsWithHttpMessagesAsync(string appId, string timespan = default(string),
 1009                string filter = default(string), string search = default(string), string orderby = default(string),
 1010                string select = default(string), int? skip = default(int?), int? top = default(int?),
 1011                string format = default(string), bool? count = default(bool?), string apply = default(string),
 1012                Dictionary<string, List<string>> customHeaders = null,
 1013                CancellationToken cancellationToken = default(CancellationToken))
 1014        {
 21015            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.PerformanceCounters, timespan, filter
 21016                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 21017            var realBody = realResult.Body;
 21018            return new HttpOperationResponse<EventsResults<EventsPerformanceCounterResult>>
 21019            {
 21020                Request = realResult.Request,
 21021                Response = realResult.Response,
 21022                Body = new EventsResults<EventsPerformanceCounterResult>
 21023                {
 21024                    Aimessages = realBody.Aimessages,
 21025                    Value = realBody.Value.OfType<EventsPerformanceCounterResult>().ToList(),
 21026                }
 21027            };
 21028        }
 1029
 1030        /// <summary>
 1031        /// Get a performance counter event
 1032        /// </summary>
 1033        /// <remarks>
 1034        /// Gets the data for a single performance counter event
 1035        /// </remarks>
 1036        /// <param name='appId'>
 1037        /// ID of the application. This is Application ID from the API Access settings
 1038        /// blade in the Azure portal.
 1039        /// </param>
 1040        /// <param name='eventId'>
 1041        /// ID of event.
 1042        /// </param>
 1043        /// <param name='timespan'>
 1044        /// Optional. The timespan over which to retrieve events. This is an
 1045        /// ISO8601 time period value.  This timespan is applied in addition to
 1046        /// any that are specified in the Odata expression.
 1047        /// </param>
 1048        /// <param name='customHeaders'>
 1049        /// The headers that will be added to request.
 1050        /// </param>
 1051        /// <param name='cancellationToken'>
 1052        /// The cancellation token.
 1053        /// </param>
 1054        public async Task<HttpOperationResponse<EventsResults<EventsPerformanceCounterResult>>>
 1055            GetPerformanceCounterEventWithHttpMessagesAsync(string appId, string eventId = default(string), string times
 1056                Dictionary<string, List<string>> customHeaders = null,
 1057                CancellationToken cancellationToken = default(CancellationToken))
 1058        {
 21059            var realResult = await GetWithHttpMessagesAsync(appId, EventType.PerformanceCounters, eventId, timespan, cus
 21060                cancellationToken).ConfigureAwait(false);
 21061            var realBody = realResult.Body;
 21062            return new HttpOperationResponse<EventsResults<EventsPerformanceCounterResult>>
 21063            {
 21064                Request = realResult.Request,
 21065                Response = realResult.Response,
 21066                Body = new EventsResults<EventsPerformanceCounterResult>
 21067                {
 21068                    Aimessages = realBody.Aimessages,
 21069                    Value = realBody.Value.OfType<EventsPerformanceCounterResult>().ToList(),
 21070                }
 21071            };
 21072        }
 1073
 1074        /// <summary>
 1075        /// Execute OData query for custom metric events
 1076        /// </summary>
 1077        /// <remarks>
 1078        /// Executes an OData query for custom metric events
 1079        /// </remarks>
 1080        /// <param name='appId'>
 1081        /// ID of the application. This is Application ID from the API Access settings
 1082        /// blade in the Azure portal.
 1083        /// </param>
 1084        /// <param name='timespan'>
 1085        /// Optional. The timespan over which to retrieve events. This is an
 1086        /// ISO8601 time period value.  This timespan is applied in addition to
 1087        /// any that are specified in the Odata expression.
 1088        /// </param>
 1089        /// <param name='filter'>
 1090        /// An expression used to filter the returned events
 1091        /// </param>
 1092        /// <param name='search'>
 1093        /// A free-text search expression to match for whether a particular
 1094        /// event should be returned
 1095        /// </param>
 1096        /// <param name='orderby'>
 1097        /// A comma-separated list of properties with \"asc\" (the default) or
 1098        /// \"desc\" to control the order of returned events
 1099        /// </param>
 1100        /// <param name='select'>
 1101        /// Limits the properties to just those requested on each returned
 1102        /// event
 1103        /// </param>
 1104        /// <param name='skip'>
 1105        /// The number of items to skip over before returning events
 1106        /// </param>
 1107        /// <param name='top'>
 1108        /// The number of events to return
 1109        /// </param>
 1110        /// <param name='format'>
 1111        /// Format for the returned events
 1112        /// </param>
 1113        /// <param name='count'>
 1114        /// Request a count of matching items included with the returned events
 1115        /// </param>
 1116        /// <param name='apply'>
 1117        /// An expression used for aggregation over returned events
 1118        /// </param>
 1119        /// <param name='customHeaders'>
 1120        /// The headers that will be added to request.
 1121        /// </param>
 1122        /// <param name='cancellationToken'>
 1123        /// The cancellation token.
 1124        /// </param>
 1125        public async Task<HttpOperationResponse<EventsResults<EventsCustomMetricResult>>>
 1126            GetCustomMetricEventsWithHttpMessagesAsync(string appId, string timespan = default(string),
 1127                string filter = default(string), string search = default(string), string orderby = default(string),
 1128                string select = default(string), int? skip = default(int?), int? top = default(int?),
 1129                string format = default(string), bool? count = default(bool?), string apply = default(string),
 1130                Dictionary<string, List<string>> customHeaders = null,
 1131                CancellationToken cancellationToken = default(CancellationToken))
 1132        {
 21133            var realResult = await GetByTypeWithHttpMessagesAsync(appId, EventType.CustomMetrics, timespan, filter, sear
 21134                skip, top, format, count, apply, customHeaders, cancellationToken).ConfigureAwait(false);
 21135            var realBody = realResult.Body;
 21136            return new HttpOperationResponse<EventsResults<EventsCustomMetricResult>>
 21137            {
 21138                Request = realResult.Request,
 21139                Response = realResult.Response,
 21140                Body = new EventsResults<EventsCustomMetricResult>
 21141                {
 21142                    Aimessages = realBody.Aimessages,
 21143                    Value = realBody.Value.OfType<EventsCustomMetricResult>().ToList(),
 21144                }
 21145            };
 21146        }
 1147
 1148        /// <summary>
 1149        /// Get a custom metricevent
 1150        /// </summary>
 1151        /// <remarks>
 1152        /// Gets the data for a single custom metric event
 1153        /// </remarks>
 1154        /// <param name='appId'>
 1155        /// ID of the application. This is Application ID from the API Access settings
 1156        /// blade in the Azure portal.
 1157        /// </param>
 1158        /// <param name='eventId'>
 1159        /// ID of event.
 1160        /// </param>
 1161        /// <param name='timespan'>
 1162        /// Optional. The timespan over which to retrieve events. This is an
 1163        /// ISO8601 time period value.  This timespan is applied in addition to
 1164        /// any that are specified in the Odata expression.
 1165        /// </param>
 1166        /// <param name='customHeaders'>
 1167        /// The headers that will be added to request.
 1168        /// </param>
 1169        /// <param name='cancellationToken'>
 1170        /// The cancellation token.
 1171        /// </param>
 1172        public async Task<HttpOperationResponse<EventsResults<EventsCustomMetricResult>>>
 1173            GetCustomMetricEventWithHttpMessagesAsync(string appId, string eventId = default(string), string timespan = 
 1174                Dictionary<string, List<string>> customHeaders = null,
 1175                CancellationToken cancellationToken = default(CancellationToken))
 1176        {
 21177            var realResult = await GetWithHttpMessagesAsync(appId, EventType.CustomMetrics, eventId, timespan, customHea
 21178                cancellationToken).ConfigureAwait(false);
 21179            var realBody = realResult.Body;
 21180            return new HttpOperationResponse<EventsResults<EventsCustomMetricResult>>
 21181            {
 21182                Request = realResult.Request,
 21183                Response = realResult.Response,
 21184                Body = new EventsResults<EventsCustomMetricResult>
 21185                {
 21186                    Aimessages = realBody.Aimessages,
 21187                    Value = realBody.Value.OfType<EventsCustomMetricResult>().ToList(),
 21188                }
 21189            };
 21190        }
 1191
 1192        #endregion
 1193
 1194    }
 1195}

C:\Git\azure-sdk-for-net\sdk\applicationinsights\Microsoft.Azure.ApplicationInsights.Query\src\Generated\Events.cs

#LineLine coverage
 1// <auto-generated>
 2// Copyright (c) Microsoft Corporation. All rights reserved.
 3// Licensed under the MIT License. See License.txt in the project root for
 4// license information.
 5//
 6// Code generated by Microsoft (R) AutoRest Code Generator.
 7// Changes may cause incorrect behavior and will be lost if the code is
 8// regenerated.
 9// </auto-generated>
 10
 11namespace Microsoft.Azure.ApplicationInsights.Query
 12{
 13    using Microsoft.Rest;
 14    using Models;
 15    using Newtonsoft.Json;
 16    using System.Collections;
 17    using System.Collections.Generic;
 18    using System.IO;
 19    using System.Linq;
 20    using System.Net;
 21    using System.Net.Http;
 22    using System.Threading;
 23    using System.Threading.Tasks;
 24
 25    /// <summary>
 26    /// Events operations.
 27    /// </summary>
 28    public partial class Events : IServiceOperations<ApplicationInsightsDataClient>, IEvents
 29    {
 30        /// <summary>
 31        /// Initializes a new instance of the Events class.
 32        /// </summary>
 33        /// <param name='client'>
 34        /// Reference to the service client.
 35        /// </param>
 36        /// <exception cref="System.ArgumentNullException">
 37        /// Thrown when a required parameter is null
 38        /// </exception>
 2039        public Events(ApplicationInsightsDataClient client)
 40        {
 2041            if (client == null)
 42            {
 043                throw new System.ArgumentNullException("client");
 44            }
 2045            Client = client;
 2046        }
 47
 48        /// <summary>
 49        /// Gets a reference to the ApplicationInsightsDataClient
 50        /// </summary>
 24051        public ApplicationInsightsDataClient Client { get; private set; }
 52
 53        /// <summary>
 54        /// Execute OData query
 55        /// </summary>
 56        /// <remarks>
 57        /// Executes an OData query for events
 58        /// </remarks>
 59        /// <param name='appId'>
 60        /// ID of the application. This is Application ID from the API Access settings
 61        /// blade in the Azure portal.
 62        /// </param>
 63        /// <param name='eventType'>
 64        /// The type of events to query; either a standard event type (`traces`,
 65        /// `customEvents`, `pageViews`, `requests`, `dependencies`, `exceptions`,
 66        /// `availabilityResults`) or `$all` to query across all event types. Possible
 67        /// values include: '$all', 'traces', 'customEvents', 'pageViews',
 68        /// 'browserTimings', 'requests', 'dependencies', 'exceptions',
 69        /// 'availabilityResults', 'performanceCounters', 'customMetrics'
 70        /// </param>
 71        /// <param name='timespan'>
 72        /// Optional. The timespan over which to retrieve events. This is an ISO8601
 73        /// time period value.  This timespan is applied in addition to any that are
 74        /// specified in the Odata expression.
 75        /// </param>
 76        /// <param name='filter'>
 77        /// An expression used to filter the returned events
 78        /// </param>
 79        /// <param name='search'>
 80        /// A free-text search expression to match for whether a particular event
 81        /// should be returned
 82        /// </param>
 83        /// <param name='orderby'>
 84        /// A comma-separated list of properties with \"asc\" (the default) or \"desc\"
 85        /// to control the order of returned events
 86        /// </param>
 87        /// <param name='select'>
 88        /// Limits the properties to just those requested on each returned event
 89        /// </param>
 90        /// <param name='skip'>
 91        /// The number of items to skip over before returning events
 92        /// </param>
 93        /// <param name='top'>
 94        /// The number of events to return
 95        /// </param>
 96        /// <param name='format'>
 97        /// Format for the returned events
 98        /// </param>
 99        /// <param name='count'>
 100        /// Request a count of matching items included with the returned events
 101        /// </param>
 102        /// <param name='apply'>
 103        /// An expression used for aggregation over returned events
 104        /// </param>
 105        /// <param name='customHeaders'>
 106        /// Headers that will be added to request.
 107        /// </param>
 108        /// <param name='cancellationToken'>
 109        /// The cancellation token.
 110        /// </param>
 111        /// <exception cref="ErrorResponseException">
 112        /// Thrown when the operation returned an invalid status code
 113        /// </exception>
 114        /// <exception cref="SerializationException">
 115        /// Thrown when unable to deserialize the response
 116        /// </exception>
 117        /// <exception cref="ValidationException">
 118        /// Thrown when a required parameter is null
 119        /// </exception>
 120        /// <exception cref="System.ArgumentNullException">
 121        /// Thrown when a required parameter is null
 122        /// </exception>
 123        /// <return>
 124        /// A response object containing the response body and response headers.
 125        /// </return>
 126        public async Task<HttpOperationResponse<EventsResults>> GetByTypeWithHttpMessagesAsync(string appId, string even
 127        {
 20128            if (appId == null)
 129            {
 0130                throw new ValidationException(ValidationRules.CannotBeNull, "appId");
 131            }
 20132            if (eventType == null)
 133            {
 0134                throw new ValidationException(ValidationRules.CannotBeNull, "eventType");
 135            }
 136            // Tracing
 20137            bool _shouldTrace = ServiceClientTracing.IsEnabled;
 20138            string _invocationId = null;
 20139            if (_shouldTrace)
 140            {
 0141                _invocationId = ServiceClientTracing.NextInvocationId.ToString();
 0142                Dictionary<string, object> tracingParameters = new Dictionary<string, object>();
 0143                tracingParameters.Add("appId", appId);
 0144                tracingParameters.Add("eventType", eventType);
 0145                tracingParameters.Add("timespan", timespan);
 0146                tracingParameters.Add("filter", filter);
 0147                tracingParameters.Add("search", search);
 0148                tracingParameters.Add("orderby", orderby);
 0149                tracingParameters.Add("select", select);
 0150                tracingParameters.Add("skip", skip);
 0151                tracingParameters.Add("top", top);
 0152                tracingParameters.Add("format", format);
 0153                tracingParameters.Add("count", count);
 0154                tracingParameters.Add("apply", apply);
 0155                tracingParameters.Add("cancellationToken", cancellationToken);
 0156                ServiceClientTracing.Enter(_invocationId, this, "GetByType", tracingParameters);
 157            }
 158            // Construct URL
 20159            var _baseUrl = Client.BaseUri.AbsoluteUri;
 20160            var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "apps/{appId}/even
 20161            _url = _url.Replace("{appId}", System.Uri.EscapeDataString(appId));
 20162            _url = _url.Replace("{eventType}", System.Uri.EscapeDataString(eventType));
 20163            List<string> _queryParameters = new List<string>();
 20164            if (timespan != null)
 165            {
 20166                _queryParameters.Add(string.Format("timespan={0}", System.Uri.EscapeDataString(timespan)));
 167            }
 20168            if (filter != null)
 169            {
 0170                _queryParameters.Add(string.Format("$filter={0}", System.Uri.EscapeDataString(filter)));
 171            }
 20172            if (search != null)
 173            {
 0174                _queryParameters.Add(string.Format("$search={0}", System.Uri.EscapeDataString(search)));
 175            }
 20176            if (orderby != null)
 177            {
 0178                _queryParameters.Add(string.Format("$orderby={0}", System.Uri.EscapeDataString(orderby)));
 179            }
 20180            if (select != null)
 181            {
 0182                _queryParameters.Add(string.Format("$select={0}", System.Uri.EscapeDataString(select)));
 183            }
 20184            if (skip != null)
 185            {
 0186                _queryParameters.Add(string.Format("$skip={0}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonC
 187            }
 20188            if (top != null)
 189            {
 20190                _queryParameters.Add(string.Format("$top={0}", System.Uri.EscapeDataString(Rest.Serialization.SafeJsonCo
 191            }
 20192            if (format != null)
 193            {
 0194                _queryParameters.Add(string.Format("$format={0}", System.Uri.EscapeDataString(format)));
 195            }
 20196            if (count != null)
 197            {
 0198                _queryParameters.Add(string.Format("$count={0}", System.Uri.EscapeDataString(Rest.Serialization.SafeJson
 199            }
 20200            if (apply != null)
 201            {
 0202                _queryParameters.Add(string.Format("$apply={0}", System.Uri.EscapeDataString(apply)));
 203            }
 20204            if (_queryParameters.Count > 0)
 205            {
 20206                _url += "?" + string.Join("&", _queryParameters);
 207            }
 208            // Create HTTP transport objects
 20209            var _httpRequest = new HttpRequestMessage();
 20210            HttpResponseMessage _httpResponse = null;
 20211            _httpRequest.Method = new HttpMethod("GET");
 20212            _httpRequest.RequestUri = new System.Uri(_url);
 213            // Set Headers
 214
 215
 20216            if (customHeaders != null)
 217            {
 0218                foreach(var _header in customHeaders)
 219                {
 0220                    if (_httpRequest.Headers.Contains(_header.Key))
 221                    {
 0222                        _httpRequest.Headers.Remove(_header.Key);
 223                    }
 0224                    _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
 225                }
 226            }
 227
 228            // Serialize Request
 20229            string _requestContent = null;
 230            // Set Credentials
 20231            if (Client.Credentials != null)
 232            {
 20233                cancellationToken.ThrowIfCancellationRequested();
 20234                await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
 235            }
 236            // Send Request
 20237            if (_shouldTrace)
 238            {
 0239                ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
 240            }
 20241            cancellationToken.ThrowIfCancellationRequested();
 20242            _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
 20243            if (_shouldTrace)
 244            {
 0245                ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
 246            }
 20247            HttpStatusCode _statusCode = _httpResponse.StatusCode;
 20248            cancellationToken.ThrowIfCancellationRequested();
 20249            string _responseContent = null;
 20250            if ((int)_statusCode != 200)
 251            {
 0252                var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _st
 253                try
 254                {
 0255                    _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
 0256                    ErrorResponse _errorBody =  Rest.Serialization.SafeJsonConvert.DeserializeObject<ErrorResponse>(_res
 0257                    if (_errorBody != null)
 258                    {
 0259                        ex.Body = _errorBody;
 260                    }
 0261                }
 0262                catch (JsonException)
 263                {
 264                    // Ignore the exception
 0265                }
 0266                ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
 0267                ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
 0268                if (_shouldTrace)
 269                {
 0270                    ServiceClientTracing.Error(_invocationId, ex);
 271                }
 0272                _httpRequest.Dispose();
 0273                if (_httpResponse != null)
 274                {
 0275                    _httpResponse.Dispose();
 276                }
 0277                throw ex;
 278            }
 279            // Create Result
 20280            var _result = new HttpOperationResponse<EventsResults>();
 20281            _result.Request = _httpRequest;
 20282            _result.Response = _httpResponse;
 283            // Deserialize Response
 20284            if ((int)_statusCode == 200)
 285            {
 20286                _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
 287                try
 288                {
 20289                    _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject<EventsResults>(_responseContent,
 20290                }
 0291                catch (JsonException ex)
 292                {
 0293                    _httpRequest.Dispose();
 0294                    if (_httpResponse != null)
 295                    {
 0296                        _httpResponse.Dispose();
 297                    }
 0298                    throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
 299                }
 300            }
 20301            if (_shouldTrace)
 302            {
 0303                ServiceClientTracing.Exit(_invocationId, _result);
 304            }
 20305            return _result;
 20306        }
 307
 308        /// <summary>
 309        /// Get an event
 310        /// </summary>
 311        /// <remarks>
 312        /// Gets the data for a single event
 313        /// </remarks>
 314        /// <param name='appId'>
 315        /// ID of the application. This is Application ID from the API Access settings
 316        /// blade in the Azure portal.
 317        /// </param>
 318        /// <param name='eventType'>
 319        /// The type of events to query; either a standard event type (`traces`,
 320        /// `customEvents`, `pageViews`, `requests`, `dependencies`, `exceptions`,
 321        /// `availabilityResults`) or `$all` to query across all event types. Possible
 322        /// values include: '$all', 'traces', 'customEvents', 'pageViews',
 323        /// 'browserTimings', 'requests', 'dependencies', 'exceptions',
 324        /// 'availabilityResults', 'performanceCounters', 'customMetrics'
 325        /// </param>
 326        /// <param name='eventId'>
 327        /// ID of event.
 328        /// </param>
 329        /// <param name='timespan'>
 330        /// Optional. The timespan over which to retrieve events. This is an ISO8601
 331        /// time period value.  This timespan is applied in addition to any that are
 332        /// specified in the Odata expression.
 333        /// </param>
 334        /// <param name='customHeaders'>
 335        /// Headers that will be added to request.
 336        /// </param>
 337        /// <param name='cancellationToken'>
 338        /// The cancellation token.
 339        /// </param>
 340        /// <exception cref="ErrorResponseException">
 341        /// Thrown when the operation returned an invalid status code
 342        /// </exception>
 343        /// <exception cref="SerializationException">
 344        /// Thrown when unable to deserialize the response
 345        /// </exception>
 346        /// <exception cref="ValidationException">
 347        /// Thrown when a required parameter is null
 348        /// </exception>
 349        /// <exception cref="System.ArgumentNullException">
 350        /// Thrown when a required parameter is null
 351        /// </exception>
 352        /// <return>
 353        /// A response object containing the response body and response headers.
 354        /// </return>
 355        public async Task<HttpOperationResponse<EventsResults>> GetWithHttpMessagesAsync(string appId, string eventType,
 356        {
 20357            if (appId == null)
 358            {
 0359                throw new ValidationException(ValidationRules.CannotBeNull, "appId");
 360            }
 20361            if (eventType == null)
 362            {
 0363                throw new ValidationException(ValidationRules.CannotBeNull, "eventType");
 364            }
 20365            if (eventId == null)
 366            {
 0367                throw new ValidationException(ValidationRules.CannotBeNull, "eventId");
 368            }
 369            // Tracing
 20370            bool _shouldTrace = ServiceClientTracing.IsEnabled;
 20371            string _invocationId = null;
 20372            if (_shouldTrace)
 373            {
 0374                _invocationId = ServiceClientTracing.NextInvocationId.ToString();
 0375                Dictionary<string, object> tracingParameters = new Dictionary<string, object>();
 0376                tracingParameters.Add("appId", appId);
 0377                tracingParameters.Add("eventType", eventType);
 0378                tracingParameters.Add("timespan", timespan);
 0379                tracingParameters.Add("eventId", eventId);
 0380                tracingParameters.Add("cancellationToken", cancellationToken);
 0381                ServiceClientTracing.Enter(_invocationId, this, "Get", tracingParameters);
 382            }
 383            // Construct URL
 20384            var _baseUrl = Client.BaseUri.AbsoluteUri;
 20385            var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "apps/{appId}/even
 20386            _url = _url.Replace("{appId}", System.Uri.EscapeDataString(appId));
 20387            _url = _url.Replace("{eventType}", System.Uri.EscapeDataString(eventType));
 20388            _url = _url.Replace("{eventId}", System.Uri.EscapeDataString(eventId));
 20389            List<string> _queryParameters = new List<string>();
 20390            if (timespan != null)
 391            {
 20392                _queryParameters.Add(string.Format("timespan={0}", System.Uri.EscapeDataString(timespan)));
 393            }
 20394            if (_queryParameters.Count > 0)
 395            {
 20396                _url += "?" + string.Join("&", _queryParameters);
 397            }
 398            // Create HTTP transport objects
 20399            var _httpRequest = new HttpRequestMessage();
 20400            HttpResponseMessage _httpResponse = null;
 20401            _httpRequest.Method = new HttpMethod("GET");
 20402            _httpRequest.RequestUri = new System.Uri(_url);
 403            // Set Headers
 404
 405
 20406            if (customHeaders != null)
 407            {
 0408                foreach(var _header in customHeaders)
 409                {
 0410                    if (_httpRequest.Headers.Contains(_header.Key))
 411                    {
 0412                        _httpRequest.Headers.Remove(_header.Key);
 413                    }
 0414                    _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
 415                }
 416            }
 417
 418            // Serialize Request
 20419            string _requestContent = null;
 420            // Set Credentials
 20421            if (Client.Credentials != null)
 422            {
 20423                cancellationToken.ThrowIfCancellationRequested();
 20424                await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
 425            }
 426            // Send Request
 20427            if (_shouldTrace)
 428            {
 0429                ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
 430            }
 20431            cancellationToken.ThrowIfCancellationRequested();
 20432            _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
 20433            if (_shouldTrace)
 434            {
 0435                ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
 436            }
 20437            HttpStatusCode _statusCode = _httpResponse.StatusCode;
 20438            cancellationToken.ThrowIfCancellationRequested();
 20439            string _responseContent = null;
 20440            if ((int)_statusCode != 200)
 441            {
 0442                var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _st
 443                try
 444                {
 0445                    _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
 0446                    ErrorResponse _errorBody =  Rest.Serialization.SafeJsonConvert.DeserializeObject<ErrorResponse>(_res
 0447                    if (_errorBody != null)
 448                    {
 0449                        ex.Body = _errorBody;
 450                    }
 0451                }
 0452                catch (JsonException)
 453                {
 454                    // Ignore the exception
 0455                }
 0456                ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
 0457                ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
 0458                if (_shouldTrace)
 459                {
 0460                    ServiceClientTracing.Error(_invocationId, ex);
 461                }
 0462                _httpRequest.Dispose();
 0463                if (_httpResponse != null)
 464                {
 0465                    _httpResponse.Dispose();
 466                }
 0467                throw ex;
 468            }
 469            // Create Result
 20470            var _result = new HttpOperationResponse<EventsResults>();
 20471            _result.Request = _httpRequest;
 20472            _result.Response = _httpResponse;
 473            // Deserialize Response
 20474            if ((int)_statusCode == 200)
 475            {
 20476                _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
 477                try
 478                {
 20479                    _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject<EventsResults>(_responseContent,
 20480                }
 0481                catch (JsonException ex)
 482                {
 0483                    _httpRequest.Dispose();
 0484                    if (_httpResponse != null)
 485                    {
 0486                        _httpResponse.Dispose();
 487                    }
 0488                    throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
 489                }
 490            }
 20491            if (_shouldTrace)
 492            {
 0493                ServiceClientTracing.Exit(_invocationId, _result);
 494            }
 20495            return _result;
 20496        }
 497
 498        /// <summary>
 499        /// Get OData metadata
 500        /// </summary>
 501        /// <remarks>
 502        /// Gets OData EDMX metadata describing the event data model
 503        /// </remarks>
 504        /// <param name='appId'>
 505        /// ID of the application. This is Application ID from the API Access settings
 506        /// blade in the Azure portal.
 507        /// </param>
 508        /// <param name='customHeaders'>
 509        /// Headers that will be added to request.
 510        /// </param>
 511        /// <param name='cancellationToken'>
 512        /// The cancellation token.
 513        /// </param>
 514        /// <exception cref="ErrorResponseException">
 515        /// Thrown when the operation returned an invalid status code
 516        /// </exception>
 517        /// <exception cref="SerializationException">
 518        /// Thrown when unable to deserialize the response
 519        /// </exception>
 520        /// <exception cref="ValidationException">
 521        /// Thrown when a required parameter is null
 522        /// </exception>
 523        /// <exception cref="System.ArgumentNullException">
 524        /// Thrown when a required parameter is null
 525        /// </exception>
 526        /// <return>
 527        /// A response object containing the response body and response headers.
 528        /// </return>
 529        public async Task<HttpOperationResponse<object>> GetOdataMetadataWithHttpMessagesAsync(string appId, Dictionary<
 530        {
 0531            if (appId == null)
 532            {
 0533                throw new ValidationException(ValidationRules.CannotBeNull, "appId");
 534            }
 535            // Tracing
 0536            bool _shouldTrace = ServiceClientTracing.IsEnabled;
 0537            string _invocationId = null;
 0538            if (_shouldTrace)
 539            {
 0540                _invocationId = ServiceClientTracing.NextInvocationId.ToString();
 0541                Dictionary<string, object> tracingParameters = new Dictionary<string, object>();
 0542                tracingParameters.Add("appId", appId);
 0543                tracingParameters.Add("cancellationToken", cancellationToken);
 0544                ServiceClientTracing.Enter(_invocationId, this, "GetOdataMetadata", tracingParameters);
 545            }
 546            // Construct URL
 0547            var _baseUrl = Client.BaseUri.AbsoluteUri;
 0548            var _url = new System.Uri(new System.Uri(_baseUrl + (_baseUrl.EndsWith("/") ? "" : "/")), "apps/{appId}/even
 0549            _url = _url.Replace("{appId}", System.Uri.EscapeDataString(appId));
 550            // Create HTTP transport objects
 0551            var _httpRequest = new HttpRequestMessage();
 0552            HttpResponseMessage _httpResponse = null;
 0553            _httpRequest.Method = new HttpMethod("GET");
 0554            _httpRequest.RequestUri = new System.Uri(_url);
 555            // Set Headers
 556
 557
 0558            if (customHeaders != null)
 559            {
 0560                foreach(var _header in customHeaders)
 561                {
 0562                    if (_httpRequest.Headers.Contains(_header.Key))
 563                    {
 0564                        _httpRequest.Headers.Remove(_header.Key);
 565                    }
 0566                    _httpRequest.Headers.TryAddWithoutValidation(_header.Key, _header.Value);
 567                }
 568            }
 569
 570            // Serialize Request
 0571            string _requestContent = null;
 572            // Set Credentials
 0573            if (Client.Credentials != null)
 574            {
 0575                cancellationToken.ThrowIfCancellationRequested();
 0576                await Client.Credentials.ProcessHttpRequestAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
 577            }
 578            // Send Request
 0579            if (_shouldTrace)
 580            {
 0581                ServiceClientTracing.SendRequest(_invocationId, _httpRequest);
 582            }
 0583            cancellationToken.ThrowIfCancellationRequested();
 0584            _httpResponse = await Client.HttpClient.SendAsync(_httpRequest, cancellationToken).ConfigureAwait(false);
 0585            if (_shouldTrace)
 586            {
 0587                ServiceClientTracing.ReceiveResponse(_invocationId, _httpResponse);
 588            }
 0589            HttpStatusCode _statusCode = _httpResponse.StatusCode;
 0590            cancellationToken.ThrowIfCancellationRequested();
 0591            string _responseContent = null;
 0592            if ((int)_statusCode != 200)
 593            {
 0594                var ex = new ErrorResponseException(string.Format("Operation returned an invalid status code '{0}'", _st
 595                try
 596                {
 0597                    _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
 0598                    ErrorResponse _errorBody =  Rest.Serialization.SafeJsonConvert.DeserializeObject<ErrorResponse>(_res
 0599                    if (_errorBody != null)
 600                    {
 0601                        ex.Body = _errorBody;
 602                    }
 0603                }
 0604                catch (JsonException)
 605                {
 606                    // Ignore the exception
 0607                }
 0608                ex.Request = new HttpRequestMessageWrapper(_httpRequest, _requestContent);
 0609                ex.Response = new HttpResponseMessageWrapper(_httpResponse, _responseContent);
 0610                if (_shouldTrace)
 611                {
 0612                    ServiceClientTracing.Error(_invocationId, ex);
 613                }
 0614                _httpRequest.Dispose();
 0615                if (_httpResponse != null)
 616                {
 0617                    _httpResponse.Dispose();
 618                }
 0619                throw ex;
 620            }
 621            // Create Result
 0622            var _result = new HttpOperationResponse<object>();
 0623            _result.Request = _httpRequest;
 0624            _result.Response = _httpResponse;
 625            // Deserialize Response
 0626            if ((int)_statusCode == 200)
 627            {
 0628                _responseContent = await _httpResponse.Content.ReadAsStringAsync().ConfigureAwait(false);
 629                try
 630                {
 0631                    _result.Body = Rest.Serialization.SafeJsonConvert.DeserializeObject<object>(_responseContent, Client
 0632                }
 0633                catch (JsonException ex)
 634                {
 0635                    _httpRequest.Dispose();
 0636                    if (_httpResponse != null)
 637                    {
 0638                        _httpResponse.Dispose();
 639                    }
 0640                    throw new SerializationException("Unable to deserialize the response.", _responseContent, ex);
 641                }
 642            }
 0643            if (_shouldTrace)
 644            {
 0645                ServiceClientTracing.Exit(_invocationId, _result);
 646            }
 0647            return _result;
 0648        }
 649
 650    }
 651}