Warehouse.Software.DeleteHook C# (CSharp) Method

DeleteHook() static private method

static private DeleteHook ( object sender, object entity ) : void
sender object
entity object
return void
        static internal void DeleteHook(object sender, object entity) {

            // Delete permissions assosiated to this app
            var result = Db.SQL<SoftwarePermission>("SELECT o FROM Warehouse.SoftwarePermission o WHERE o.Software=?", entity);
            foreach (SoftwarePermission s in result) {
                s.Delete();
            }

            QueryResultRows<SuiteSoftware> suitSoftwares = Db.SQL<SuiteSoftware>("SELECT o FROM Warehouse.SuiteSoftware o WHERE o.Software=?", entity);
            foreach (SuiteSoftware s in suitSoftwares) {
                s.Delete();
            }

            // Delete all relation between this software and a depot
            var depotRelation = Db.SQL<DepotSoftware>("SELECT o FROM Warehouse.DepotSoftware o WHERE o.Software=?", entity);
            foreach (DepotSoftware relation in depotRelation) {
                relation.Delete();
            }

            var softwareIcons = Db.SQL<SoftwareIcon>("SELECT o FROM Warehouse.SoftwareIcon o WHERE o.Software=?", entity);
            foreach (SoftwareIcon relation in softwareIcons) {
                relation.Delete();
            }

            var softwareBanners = Db.SQL<SoftwareBanner>("SELECT o FROM Warehouse.SoftwareBanner o WHERE o.Software=?", entity);
            foreach (SoftwareBanner relation in softwareBanners) {
                relation.Delete();
            }

            var softwareScreenshots = Db.SQL<SoftwareScreenshot>("SELECT o FROM Warehouse.SoftwareScreenshot o WHERE o.Software=?", entity);
            foreach (SoftwareScreenshot relation in softwareScreenshots) {
                relation.Delete();
            }

            var softwareImages = Db.SQL<SoftwareImage>("SELECT o FROM Warehouse.SoftwareImage o WHERE o.Software=?", entity);
            foreach (SoftwareImage relation in softwareImages) {
                relation.Delete();
            }

            var versions = Db.SQL<Version>("SELECT o FROM Warehouse.Version o WHERE o.Software=?", entity);
            foreach (Version relation in versions) {
                relation.Delete();
            }
        }
    }