1. We will start by creating the interface needed in this layer. This interface is nearly identical in functionality to the other service layer interfaces.
package com.dtr.oas.service; import java.util.List; import com.dtr.oas.dao.DuplicatePermissionException; import com.dtr.oas.dao.PermissionNotFoundException; import com.dtr.oas.model.Permission; public interface PermissionService { public void addPermission(Permission permission) throws DuplicatePermissionException; public Permission getPermission(int id) throws PermissionNotFoundException; public Permission getPermission(String permissionname) throws PermissionNotFoundException; public void updatePermission(Permission permission) throws PermissionNotFoundException; public void deletePermission(int id) throws PermissionNotFoundException; public List<Permission> getPermissions(); }2. Next we will create the implementation of the Permission service. This service layer implementation should look pretty familiar at this point.
package com.dtr.oas.service; import java.util.List; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.dtr.oas.dao.DuplicatePermissionException; import com.dtr.oas.dao.PermissionDAO; import com.dtr.oas.dao.PermissionNotFoundException; import com.dtr.oas.model.Permission; @Service @Transactional public class PermissionServiceImpl implements PermissionService { static Logger logger = LoggerFactory.getLogger(PermissionServiceImpl.class); @Autowired private PermissionDAO permissionDAO; @Override public void addPermission(Permission permission) throws DuplicatePermissionException { permissionDAO.addPermission(permission); } @Override public Permission getPermission(int id) throws PermissionNotFoundException { return permissionDAO.getPermission(id); } @Override public Permission getPermission(String permissionname) throws PermissionNotFoundException { return permissionDAO.getPermission(permissionname); } @Override public void updatePermission(Permission permission) throws PermissionNotFoundException { permissionDAO.updatePermission(permission); } @Override public void deletePermission(int id) throws PermissionNotFoundException { permissionDAO.deletePermission(id); } @Override public List<Permission> getPermissions() { return permissionDAO.getPermissions(); } }
In the next post, we will add/update the Strategy controller to user the new authentication functionality.
No comments:
Post a Comment