[corlib] Avoid unnecessary ephemeron array resizes
[mono.git] / mcs / class / referencesource / System.Activities.Presentation / System.Activities.Presentation / System / Activities / Presentation / ValidationErrorSourceLocatorFeature.cs
1 // <copyright>
2 //   Copyright (c) Microsoft Corporation.  All rights reserved.
3 // </copyright>
4
5 namespace System.Activities.Presentation
6 {
7     using System.Activities.Presentation.Validation;
8     using System.Collections.Generic;
9     using System.Runtime;
10
11     internal abstract class ValidationErrorSourceLocatorFeature : Feature
12     {
13         protected abstract IValidationErrorSourceLocator ValidationErrorSourceLocator
14         {
15             get;
16         }
17
18         public override void Initialize(EditingContext context, Type modelType)
19         {
20             Fx.Assert(context != null, "Context should not be null.");
21             Fx.Assert(modelType != null, "modelType should not be null.");
22             ValidationService validationService = context.Services.GetRequiredService<ValidationService>();
23             validationService.RegisterValidationErrorSourceLocator(modelType, this.ValidationErrorSourceLocator);
24         }
25     }
26 }