Mercurial > pub > ImplabNet
comparison Implab/Components/IInitializable.cs @ 152:240aa6994018 v2
component model refactoring
author | cin |
---|---|
date | Thu, 11 Feb 2016 01:56:27 +0300 |
parents | |
children | d6a8cba73acc |
comparison
equal
deleted
inserted
replaced
151:ec91a6dfa5b3 | 152:240aa6994018 |
---|---|
1 using System; | |
2 | |
3 namespace Implab.Components { | |
4 /// <summary> | |
5 /// Initializable components are created and initialized in two steps, first we have create the component, | |
6 /// then we have to complete it's creation by calling an <see cref="Init()"/> method. All parameters needed | |
7 /// to complete the initialization must be passed before the calling <see cref="Init()"/> | |
8 /// </summary> | |
9 public interface IInitializable { | |
10 /// <summary> | |
11 /// Completes initialization. | |
12 /// </summary> | |
13 /// <remarks> | |
14 /// Normally virtual shouldn't be called from the constructor, due to the incomplete object state, but | |
15 /// they can be called from this method. This method is also usefull when we constructing a complex grpah | |
16 /// of components where cyclic references may take place. | |
17 /// </remarks> | |
18 void Init(); | |
19 } | |
20 } | |
21 |