/// <summary> /// Finds all matching dependencies by their name. /// </summary> /// <param name="name">the dependency name to locate.</param> /// <param name="required">true to raise an exception when no dependencies are found.</param> /// <returns>a list of found dependencies</returns> public List <object> Find(string name, bool required) { if (string.IsNullOrWhiteSpace(name)) { throw new ArgumentNullException(nameof(name)); } object locator = Locate(name); if (locator == null) { if (required) { throw new ReferenceException(null, name); } return(null); } return(_references.Find(locator, required)); }
public List <object> Find(ReferenceQuery query, bool required) { if (query.Locator == null) { throw new NullReferenceException("Locator cannot be null"); } string name = StringConverter.ToString(query.Locator); object locator = Locate(name); if (locator == null) { if (required) { throw new ReferenceException(null, name); } return(null); } query.Locator = locator; return(_references.Find(query, required)); }