protected ArrowGraphBuilderBase( Graph <T, TActivity, TEvent> graph, Func <T> edgeIdGenerator, Func <T> nodeIdGenerator, Func <T, TEvent> eventGenerator) : base(graph, edgeIdGenerator, nodeIdGenerator, eventGenerator) { // Check Start and End nodes. if (StartNodes.Count() == 1) { StartNode = StartNodes.First(); } else { throw new ArgumentException(Properties.Resources.ArrowGraphContainsMoreThanOneStartNode); } if (EndNodes.Count() == 1) { EndNode = EndNodes.First(); } else { throw new ArgumentException(Properties.Resources.ArrowGraphContainsMoreThanOneEndNode); } }
public VertexGraphBuilder( Graph <T, IEvent <T>, TActivity> graph, Func <T> edgeIdGenerator, Func <T> nodeIdGenerator) : base( graph, edgeIdGenerator, nodeIdGenerator, s_EventGenerator) { if (NormalNodes.Any()) { // Check Start and End nodes. if (!StartNodes.Any()) { throw new ArgumentException(Properties.Resources.VertexGraphCannotContainNormalNodesWithoutAnyStartNodes); } if (!EndNodes.Any()) { throw new ArgumentException(Properties.Resources.VertexGraphCannotContainNormalNodesWithoutAnyEndNodes); } } }