package br.gov.frameworkdemoiselle.fuselage.business; import java.util.List; import javax.inject.Inject; import br.gov.frameworkdemoiselle.fuselage.domain.SecurityProfile; import br.gov.frameworkdemoiselle.fuselage.domain.SecurityProfileByRule; import br.gov.frameworkdemoiselle.fuselage.persistence.ProfileByRuleDAO; import br.gov.frameworkdemoiselle.query.contrib.QueryConfig; import br.gov.frameworkdemoiselle.stereotype.BusinessController; import br.gov.frameworkdemoiselle.template.contrib.DelegateCrud; @BusinessController public class ProfileByRuleBC extends DelegateCrud<SecurityProfileByRule, Long, ProfileByRuleDAO> { private static final long serialVersionUID = 1L; @Inject private ProfileBC profileBC; public List<SecurityProfile> getProfiles() { getQueryConfig(SecurityProfile.class).setSorting("name"); return profileBC.findAll(); } public List<SecurityProfile> getProfilesExceptList(List<SecurityProfile> securityProfiles) { return profileBC.findProfilesExceptList(securityProfiles); } public List<SecurityProfileByRule> findByImplementation(String implementation) { QueryConfig<SecurityProfileByRule> queryConfig = getQueryConfig(); queryConfig.getFilter().put("implementation", implementation); queryConfig.getFilter().put("available", 1); return findAll(); } public void disable(SecurityProfileByRule securityProfileByRule) { securityProfileByRule.setAvailable(0); update(securityProfileByRule); } public void enable(SecurityProfileByRule securityProfileByRule) { securityProfileByRule.setAvailable(1); update(securityProfileByRule); } }