package org.brixcms.plugin.usermgmt.role; import java.util.List; import org.apache.wicket.model.IModel; import org.apache.wicket.model.ResourceModel; import org.brixcms.Brix; import org.brixcms.plugin.jpa.JpaPluginLocator; import org.brixcms.plugin.jpa.web.admin.GridDataSource; import org.brixcms.plugin.usermgmt.BaseManagementPlugin; import org.brixcms.plugin.usermgmt.ManagementService; import org.brixcms.plugin.usermgmt.role.admin.RoleEntityPlugin; import org.brixcms.plugin.usermgmt.role.service.RoleService; import org.springframework.context.ApplicationContext; import com.inmethod.grid.IGridColumn; import com.inmethod.grid.column.PropertyColumn; /** * @author dan.simko@gmail.com */ public class RolePlugin extends BaseManagementPlugin<Role, RoleFilter> { public static final String ID = RolePlugin.class.getName(); public RolePlugin(Brix brix, ApplicationContext context) { super(brix, context); registerEntityPlugin(new RoleEntityPlugin(this)); } public static RolePlugin get(Brix brix) { return (RolePlugin) brix.getPlugin(ID); } public static RolePlugin get() { return get(Brix.get()); } @Override public String getId() { return ID; } @Override protected IModel<String> getTabName() { return new ResourceModel("usermgmt-plugin.rolesTabName"); } @Override protected JpaPluginLocator<Role, Long, RoleFilter> getPluginLocator() { return new RolePluginLocator(); } @Override public Class<Role> getEntityClass() { return Role.class; } @Override public void addGridColumns(List<IGridColumn<GridDataSource<Role, Long, RoleFilter>, Role, Object>> columns) { columns.add(new PropertyColumn<GridDataSource<Role, Long, RoleFilter>, Role, Object, Object>(new ResourceModel("usermgmt-plugin.name"), "name", "name")); } @Override protected ManagementService<Role> getManagementService() { return context.getBean(RoleService.class); } }