1 // -----------------------------------------------------------------------
\r
2 // Copyright (c) Microsoft Corporation. All rights reserved.
\r
3 // -----------------------------------------------------------------------
\r
5 using System.ComponentModel.Composition.Hosting;
\r
6 using System.ComponentModel.Composition.Primitives;
\r
8 namespace System.ComponentModel.Composition
\r
11 /// Provides methods for composing <see cref="ComposablePart"/> objects.
\r
13 public interface ICompositionService
\r
16 /// Sets the imports of the specified composable part exactly once and they will not
\r
17 /// ever be recomposed.
\r
19 /// <param name="part">
\r
20 /// The <see cref="ComposablePart"/> to set the imports.
\r
22 /// <exception cref="ArgumentNullException">
\r
23 /// <paramref name="part"/> is <see langword="null"/>.
\r
25 /// <exception cref="CompositionException">
\r
26 /// An error occurred during composition. <see cref="CompositionException.Errors"/> will
\r
27 /// contain a collection of errors that occurred.
\r
29 /// <exception cref="ObjectDisposedException">
\r
30 /// The <see cref="ICompositionService"/> has been disposed of.
\r
32 void SatisfyImportsOnce(ComposablePart part);
\r