//$Id: ResourceServiceImpl.java 2008-8-3 下午06:06:51 chaostone Exp $ /* * * Copyright c 2005-2009 * Licensed under the Apache License, Version 2.0 (the "License") * http://www.apache.org/licenses/LICENSE-2.0 * * */ /******************************************************************************** * @author chaostone * * MODIFICATION DESCRIPTION * * Name Date Description * ============ ============ ============ * chaostone 2008-8-3 Created * ********************************************************************************/ package org.beanfuse.security.service; import java.util.List; import org.beanfuse.persist.impl.BaseServiceImpl; import org.beanfuse.query.Condition; import org.beanfuse.query.EntityQuery; import org.beanfuse.security.Resource; public class ResourceServiceImpl extends BaseServiceImpl implements ResourceService { public void updateState(Long[] resourceIds, boolean isEnabled) { EntityQuery query = new EntityQuery(Resource.class, "resource"); query.add(new Condition("resource.id in (:ids)", resourceIds)); List<Resource> resources = (List) entityDao.search(query); for (Resource resource : resources) { resource.setEnabled(isEnabled); } entityDao.saveOrUpdate(resources); } public Resource getResource(String name) { EntityQuery query = new EntityQuery(Resource.class, "resource"); query.add(new Condition("resource.name=:name", name)); query.setCacheable(true); List resources = (List) entityDao.search(query); if (resources.isEmpty()) { return null; } else { return (Resource) resources.get(0); } } public List getResources(int scope) { EntityQuery query = new EntityQuery(Resource.class, "resource"); query.add(new Condition("resource.scope=:scope and resource.enabled=true", new Integer( scope))); return entityDao.search(query); } public List getResources() { EntityQuery query = new EntityQuery(Resource.class, "resource"); query.add(new Condition("resource.enabled=true")); return entityDao.search(query); } }