public Software FindSoftware(Software software) {
if (software == null) {
return null;
}
QueryResultRows<DepotSoftware> depotSoftwares = Db.SQL<DepotSoftware>("SELECT o FROM Warehouse.DepotSoftware o WHERE o.Depot=? AND o.Software IS NOT NULL", this);
foreach (DepotSoftware depotSoftware in depotSoftwares) {
if (depotSoftware.Software.Equals(software)) {
return depotSoftware.Software;
}
if (depotSoftware.Software is Suite) {
Software result = ((Suite)depotSoftware.Software).FindSoftware(software);
if (result != null) {
return result;
}
}
}
return null;
}