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