@ExceptionHandler(BadRequestServiceEx.class) public void badRequest( BadRequestServiceEx exception, HttpServletRequest request, HttpServletResponse response) throws IOException { response.sendError(400, exception.getMessage()); }
private String validateUsername(TextFilter filter) { switch(filter.getType()) { case NAMEVALUE: String name = filter.getText(); if(StringUtils.isBlank(name) ) throw new BadRequestServiceEx("Blank user name"); return name.trim(); case DEFAULT: case ANY: return null; default: throw new BadRequestServiceEx("Unknown user filter type '"+filter+"'"); } }
@Override public RESTShortUserList getList(String nameLike, Integer page, Integer entries) throws BadRequestRestEx, InternalErrorRestEx { try { List<GSUser> list = userAdminService.getFullList(nameLike, page, entries); RESTShortUserList ret = new RESTShortUserList(list.size()); for (GSUser user : list) { ret.add(toShortUser(user)); } return ret; } catch (BadRequestServiceEx ex) { LOGGER.warn(ex.getMessage()); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.warn("Unexpected exception", ex); throw new InternalErrorRestEx(ex.getMessage()); } }
private String validateRolename(TextFilter filter) { switch(filter.getType()) { case NAMEVALUE: String name = filter.getText(); if(StringUtils.isBlank(name) ) throw new BadRequestServiceEx("Blank role name"); return name.trim(); case DEFAULT: case ANY: return null; default: throw new BadRequestServiceEx("Unknown role filter type '"+filter+"'"); } }
@Override @Transactional(propagation = Propagation.REQUIRED, value = "geofenceTransactionManager") public Response insert(RESTInputAdminRule inputAdminRule) throws NotFoundRestEx, BadRequestRestEx, InternalErrorRestEx { if (inputAdminRule.getPosition() == null || inputAdminRule.getPosition().getPosition() == null) { throw new BadRequestRestEx("Bad position: " + inputAdminRule.getPosition()); } if (inputAdminRule.getGrant() == null) { throw new BadRequestRestEx("Missing grant type"); } AdminRule rule = fromInput(inputAdminRule); InsertPosition position = inputAdminRule.getPosition().getPosition() == RulePosition.fixedPriority ? InsertPosition.FIXED : inputAdminRule.getPosition().getPosition() == RulePosition.offsetFromBottom ? InsertPosition.FROM_END : inputAdminRule.getPosition().getPosition() == RulePosition.offsetFromTop ? InsertPosition.FROM_START : null; // ok: insert it try { Long id = adminRuleAdminService.insert(rule, position); return Response.status(Status.CREATED).tag(id.toString()).entity(id).build(); } catch (BadRequestServiceEx ex) { LOGGER.error(ex.getMessage()); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error(ex.getMessage(), ex); throw new InternalErrorRestEx(ex.getMessage()); } }
public static void addPagingConstraints(Search searchCriteria, Integer page, Integer entries) { if( (page != null && entries == null) || (page ==null && entries != null)) { throw new BadRequestServiceEx("Page and entries params should be declared together."); } if(LOGGER.isInfoEnabled()) { LOGGER.info("Searching Rule list " + ( page==null? "(unpaged) " : (" p:"+page + "#:"+entries))); } if(entries != null) { searchCriteria.setMaxResults(entries); searchCriteria.setPage(page); } }
@Override @Transactional(propagation = Propagation.REQUIRED, value = "geofenceTransactionManager") public Response insert(RESTInputRule inputRule) throws NotFoundRestEx, BadRequestRestEx, InternalErrorRestEx { if (inputRule.getPosition() == null || inputRule.getPosition().getPosition() == null) { throw new BadRequestRestEx("Bad position: " + inputRule.getPosition()); } if (inputRule.getGrant() == null) { throw new BadRequestRestEx("Missing grant type"); } Rule rule = fromInput(inputRule); InsertPosition position = inputRule.getPosition().getPosition() == RulePosition.fixedPriority ? InsertPosition.FIXED : inputRule.getPosition().getPosition() == RulePosition.offsetFromBottom ? InsertPosition.FROM_END : inputRule.getPosition().getPosition() == RulePosition.offsetFromTop ? InsertPosition.FROM_START : null; // ok: insert it try { Long id = ruleAdminService.insert(rule, position); LayerDetails details = detailsFromInput(inputRule); if (details != null) { ruleAdminService.setDetails(id, details); } return Response.status(Status.CREATED).tag(id.toString()).entity(id).build(); } catch (BadRequestServiceEx ex) { LOGGER.error(ex.getMessage()); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error(ex.getMessage(), ex); throw new InternalErrorRestEx(ex.getMessage()); } }
public static void addFixedStringCriteria(Search searchCriteria, String fieldName, RuleFilter.TextFilter filter) { switch (filter.getType()) { case ANY: throw new BadRequestServiceEx(fieldName + " should be a fixed search and can't be ANY"); case DEFAULT: searchCriteria.addFilterNull(fieldName); break; case NAMEVALUE: if(filter.isIncludeDefault()) { throw new BadRequestServiceEx(fieldName + " should be a fixed search"); } else { searchCriteria.addFilter( Filter.equal(fieldName, filter.getText())); } break; case IDVALUE: default: throw new AssertionError(); } } }
throw new NotFoundRestEx(ex.getMessage()); } catch (BadRequestServiceEx ex) { LOGGER.warn("Problems inserting user: " + ex.getMessage(), ex); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error(ex.getMessage(), ex);
switch (filter.getType()) { case ANY: throw new BadRequestServiceEx(fieldName + " should be a fixed search and can't be ANY"); throw new BadRequestServiceEx(fieldName + " should be a fixed search"); } else { searchCriteria.addFilter( throw new BadRequestServiceEx(fieldName + " should be a fixed search");
@Override public void update(String name, RESTInputGroup group) throws BadRequestRestEx, NotFoundRestEx, InternalErrorRestEx { try { UserGroup old = userGroupAdminService.get(name); ShortGroup newGroup = new ShortGroup(); newGroup.setId(old.getId()); if ( (group.getExtId() != null) ) { throw new BadRequestRestEx("ExtId can't be updated"); } if ( (group.getName() != null) ) { throw new BadRequestRestEx("Name can't be updated"); } if ( group.isEnabled() != null ) { newGroup.setEnabled(group.isEnabled()); } userGroupAdminService.update(newGroup); } catch (GeoFenceRestEx ex) { // already handled throw ex; } catch (NotFoundServiceEx ex) { LOGGER.warn("Role not found: " + name + ": " + ex.getMessage(), ex); throw new NotFoundRestEx(ex.getMessage()); } catch (BadRequestServiceEx ex) { LOGGER.warn("Problems updating role:" + name + ": " + ex.getMessage(), ex); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error(ex); throw new InternalErrorRestEx(ex.getMessage()); } }
protected Search buildCriteria(Integer page, Integer entries, String nameLike) throws BadRequestServiceEx { if ( (page != null && entries == null) || (page == null && entries != null) ) { throw new BadRequestServiceEx("Page and entries params should be declared together."); } Search searchCriteria = new Search(UserGroup.class); if ( page != null ) { searchCriteria.setMaxResults(entries); searchCriteria.setPage(page); } searchCriteria.addSortAsc("name"); if ( nameLike != null ) { searchCriteria.addFilterILike("name", nameLike); } return searchCriteria; }
throw new NotFoundRestEx(ex.getMessage()); } catch (BadRequestServiceEx ex) { LOGGER.warn("Problems updating AdminRule id:" + id + ": " + ex.getMessage(), ex); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error("Unexpected exception: " + ex.getMessage(), ex);
throw new BadRequestServiceEx("You can filter either by user or role");
throw new NotFoundRestEx(ex.getMessage()); } catch (BadRequestServiceEx ex) { LOGGER.warn("Problems updating GSInstance id:" + id + ": " + ex.getMessage(), ex); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error(ex);
@Override public List<GSInstance> getFullList(String nameLike, Integer page, Integer entries) { if( (page != null && entries == null) || (page ==null && entries != null)) { throw new BadRequestServiceEx("Page and entries params should be declared together."); } Search searchCriteria = new Search(GSInstance.class); if(page != null) { searchCriteria.setMaxResults(entries); searchCriteria.setPage(page); } searchCriteria.addSortAsc("name"); if (nameLike != null) { searchCriteria.addFilterILike("name", nameLike); } return instanceDAO.search(searchCriteria); }
throw new NotFoundRestEx(ex.getMessage()); } catch (BadRequestServiceEx ex) { LOGGER.warn("Problems updating user " + id + ": " + ex.getMessage(), ex); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error(ex);
throw new BadRequestServiceEx("Rule does not refer to a fixed layer"); throw new BadRequestServiceEx("Rule is not of ALLOW type");
throw new NotFoundRestEx(ex.getMessage()); } catch (BadRequestServiceEx ex) { LOGGER.warn("Problems updating rule id:" + id + ": " + ex.getMessage(), ex); throw new BadRequestRestEx(ex.getMessage()); } catch (Exception ex) { LOGGER.error("Unexpected exception: " + ex.getMessage(), ex);
@Override public List<GFUser> getFullList(String nameLike, Integer page, Integer entries) { if( (page != null && entries == null) || (page ==null && entries != null)) { throw new BadRequestServiceEx("Page and entries params should be declared together."); } Search searchCriteria = new Search(GFUser.class); if(page != null) { searchCriteria.setMaxResults(entries); searchCriteria.setPage(page); } searchCriteria.addSortAsc("name"); if (nameLike != null) { searchCriteria.addFilterILike("name", nameLike); } List<GFUser> found = gfUserDAO.search(searchCriteria); return found; }