1 // -----------------------------------------------------------------------
\r
2 // Copyright (c) Microsoft Corporation. All rights reserved.
\r
3 // -----------------------------------------------------------------------
\r
5 using System.Collections.Generic;
\r
6 using System.ComponentModel.Composition;
\r
7 using System.ComponentModel.Composition.Hosting;
\r
8 using System.ComponentModel.Composition.Primitives;
\r
10 namespace System.ComponentModel.Composition.Factories
\r
12 partial class ExportDefinitionFactory
\r
14 private class DerivedExportDefinition : ExportDefinition, ICompositionElement
\r
16 private readonly string _contractName;
\r
17 private readonly IDictionary<string, object> _metadata;
\r
19 public DerivedExportDefinition(string contractName, IDictionary<string, object> metadata)
\r
21 _contractName = contractName;
\r
22 _metadata = metadata ?? new Dictionary<string, object>();
\r
25 public override string ContractName
\r
27 get { return _contractName; }
\r
30 public override IDictionary<string, object> Metadata
\r
32 get { return _metadata; }
\r
35 public string DisplayName
\r
37 get { return base.ToString(); }
\r
40 public ICompositionElement Origin
\r
42 get { return null; }
\r