public void AddPrerequisit(char prereq) { if (PrerequisitsSet.Add(prereq)) { Prerequisits.Add(prereq); } }
public void Validate() { foreach (var protocol in Protocols) { if (Prerequisits.Contains(protocol)) { throw new Exception("ProgramLayer dependency error: Protocol " + protocol.Name + " is a prerequisit of the layer it is in."); } if (Dependants.Contains(protocol)) { throw new Exception("ProgramLayer dependency error: Protocol " + protocol.Name + " is a dependant of the layer it is in."); } } }
public void AddProtocol(Protocol protocol) { Protocols.Add(protocol); Prerequisits.UnionWith(protocol.Dependencies); Dependants.UnionWith(protocol.Dependants); }