/// <summary> /// Initializes a new instance of the <see cref="GroupSelector"/> class. /// </summary> /// <param name="groupImportEngine">The object that matches group imports with group exports.</param> /// <param name="compositionGraph">The object that stores the connections between the different selected groups.</param> /// <exception cref="ArgumentNullException"> /// Thrown if <paramref name="groupImportEngine"/> is <see langword="null" />. /// </exception> /// <exception cref="ArgumentNullException"> /// Thrown if <paramref name="compositionGraph"/> is <see langword="null" />. /// </exception> public GroupSelector(IConnectGroups groupImportEngine, ICompositionLayer compositionGraph) { { Lokad.Enforce.Argument(() => groupImportEngine); Lokad.Enforce.Argument(() => compositionGraph); } m_GroupImportEngine = groupImportEngine; m_Graph = compositionGraph; }
/// <summary> /// Initializes a new instance of the <see cref="ProxyCompositionLayer"/> class. /// </summary> /// <param name="commands">The object that provides the commands for the composition of part groups.</param> /// <param name="groupConnector">The object that handles the connection of part groups.</param> /// <param name="diagnostics">The object that provides the diagnostics methods for the application.</param> /// <exception cref="ArgumentNullException"> /// Thrown if <paramref name="commands"/> is <see langword="null" />. /// </exception> /// <exception cref="ArgumentNullException"> /// Thrown if <paramref name="groupConnector"/> is <see langword="null" />. /// </exception> /// <exception cref="ArgumentNullException"> /// Thrown when <paramref name="diagnostics"/> is <see langword="null" />. /// </exception> public ProxyCompositionLayer( ICompositionCommands commands, IConnectGroups groupConnector, SystemDiagnostics diagnostics) { { Lokad.Enforce.Argument(() => commands); Lokad.Enforce.Argument(() => groupConnector); Lokad.Enforce.Argument(() => diagnostics); } m_Commands = commands; m_Connector = groupConnector; m_Diagnostics = diagnostics; }