mirror of
https://github.com/Athou/commafeed.git
synced 2026-03-21 21:37:29 +00:00
delete users
This commit is contained in:
@@ -26,6 +26,7 @@ import com.commafeed.backend.security.Role;
|
||||
public class StartupBean {
|
||||
|
||||
private static Logger log = LoggerFactory.getLogger(StartupBean.class);
|
||||
public static final String ADMIN_NAME = "admin";
|
||||
|
||||
@Inject
|
||||
FeedService feedService;
|
||||
@@ -48,7 +49,7 @@ public class StartupBean {
|
||||
if (userService.getCount() == 0) {
|
||||
log.info("Populating database with default values");
|
||||
|
||||
User user = userService.register("admin", "admin",
|
||||
User user = userService.register(ADMIN_NAME, "admin",
|
||||
Arrays.asList(Role.ADMIN, Role.USER));
|
||||
userService.register("test", "test", Arrays.asList(Role.USER));
|
||||
|
||||
|
||||
@@ -52,8 +52,10 @@ public abstract class GenericDAO<T extends AbstractModel> implements
|
||||
}
|
||||
|
||||
public void delete(T object) {
|
||||
object = em.merge(object);
|
||||
em.remove(object);
|
||||
if (object != null) {
|
||||
object = em.merge(object);
|
||||
em.remove(object);
|
||||
}
|
||||
}
|
||||
|
||||
public void delete(List<T> objects) {
|
||||
@@ -64,7 +66,9 @@ public abstract class GenericDAO<T extends AbstractModel> implements
|
||||
|
||||
public void deleteById(Long id) {
|
||||
Object ref = em.getReference(getType(), id);
|
||||
em.remove(ref);
|
||||
if (ref != null) {
|
||||
em.remove(ref);
|
||||
}
|
||||
}
|
||||
|
||||
public T findById(Long id) {
|
||||
|
||||
@@ -4,7 +4,6 @@ import java.util.Collection;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import javax.ws.rs.DELETE;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.POST;
|
||||
import javax.ws.rs.Path;
|
||||
@@ -14,6 +13,7 @@ import javax.ws.rs.core.Response.Status;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
import com.commafeed.backend.StartupBean;
|
||||
import com.commafeed.backend.model.User;
|
||||
import com.commafeed.backend.model.UserRole;
|
||||
import com.commafeed.backend.security.Role;
|
||||
@@ -113,12 +113,15 @@ public class AdminUsersREST extends AbstractREST {
|
||||
}
|
||||
|
||||
@Path("delete")
|
||||
@DELETE
|
||||
@GET
|
||||
public Response delete(@QueryParam("id") Long id) {
|
||||
User user = userService.findById(id);
|
||||
if (user == null) {
|
||||
return Response.status(Status.NOT_FOUND).build();
|
||||
}
|
||||
if (StartupBean.ADMIN_NAME.equals(user.getName())) {
|
||||
return Response.status(Status.FORBIDDEN).build();
|
||||
}
|
||||
feedEntryStatusService.delete(feedEntryStatusService.findAll(user));
|
||||
feedSubscriptionService.delete(feedSubscriptionService.findAll(user));
|
||||
feedCategoryService.delete(feedCategoryService.findAll(user));
|
||||
|
||||
Reference in New Issue
Block a user