public PreInvocationAttribute createPreInvocationAttribute(String preFilterAttribute, String filterObject, String preAuthorizeAttribute) { try { // TODO: Optimization of permitAll ExpressionParser parser = getParser(); Expression preAuthorizeExpression = preAuthorizeAttribute == null ? parser .parseExpression("permitAll") : parser .parseExpression(preAuthorizeAttribute); Expression preFilterExpression = preFilterAttribute == null ? null : parser .parseExpression(preFilterAttribute); return new PreInvocationExpressionAttribute(preFilterExpression, filterObject, preAuthorizeExpression); } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } }
public PostInvocationAttribute createPostInvocationAttribute( String postFilterAttribute, String postAuthorizeAttribute) { try { ExpressionParser parser = getParser(); Expression postAuthorizeExpression = postAuthorizeAttribute == null ? null : parser.parseExpression(postAuthorizeAttribute); Expression postFilterExpression = postFilterAttribute == null ? null : parser .parseExpression(postFilterAttribute); if (postFilterExpression != null || postAuthorizeExpression != null) { return new PostInvocationExpressionAttribute(postFilterExpression, postAuthorizeExpression); } } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } return null; }
public PreInvocationAttribute createPreInvocationAttribute(String preFilterAttribute, String filterObject, String preAuthorizeAttribute) { try { // TODO: Optimization of permitAll ExpressionParser parser = getParser(); Expression preAuthorizeExpression = preAuthorizeAttribute == null ? parser .parseExpression("permitAll") : parser .parseExpression(preAuthorizeAttribute); Expression preFilterExpression = preFilterAttribute == null ? null : parser .parseExpression(preFilterAttribute); return new PreInvocationExpressionAttribute(preFilterExpression, filterObject, preAuthorizeExpression); } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } }
public PostInvocationAttribute createPostInvocationAttribute( String postFilterAttribute, String postAuthorizeAttribute) { try { ExpressionParser parser = getParser(); Expression postAuthorizeExpression = postAuthorizeAttribute == null ? null : parser.parseExpression(postAuthorizeAttribute); Expression postFilterExpression = postFilterAttribute == null ? null : parser .parseExpression(postFilterAttribute); if (postFilterExpression != null || postAuthorizeExpression != null) { return new PostInvocationExpressionAttribute(postFilterExpression, postAuthorizeExpression); } } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } return null; }
@Test public void testErrorCases() throws Exception { try { parser.parseExpression("hello ${'world'", DEFAULT_TEMPLATE_PARSER_CONTEXT); fail("Should have failed"); } catch (ParseException pe) { assertEquals("No ending suffix '}' for expression starting at character 6: ${'world'", pe.getSimpleMessage()); assertEquals("hello ${'world'", pe.getExpressionString()); } try { parser.parseExpression("hello ${'wibble'${'world'}", DEFAULT_TEMPLATE_PARSER_CONTEXT); fail("Should have failed"); } catch (ParseException pe) { assertEquals("No ending suffix '}' for expression starting at character 6: ${'wibble'${'world'}", pe.getSimpleMessage()); } try { parser.parseExpression("hello ${} world", DEFAULT_TEMPLATE_PARSER_CONTEXT); fail("Should have failed"); } catch (ParseException pe) { assertEquals("No expression defined within delimiter '${}' at character 6", pe.getSimpleMessage()); } }
assertEquals(SpelMessage.MISSING_CONSTRUCTOR_ARGS, spe.getMessageCode()); assertEquals(10, spe.getPosition()); assertTrue(ex.getMessage().contains(ex.getExpressionString())); assertEquals(SpelMessage.RUN_OUT_OF_ARGUMENTS, spe.getMessageCode()); assertEquals(10, spe.getPosition()); assertTrue(ex.getMessage().contains(ex.getExpressionString())); assertEquals(SpelMessage.RUN_OUT_OF_ARGUMENTS, spe.getMessageCode()); assertEquals(10, spe.getPosition()); assertTrue(ex.getMessage().contains(ex.getExpressionString())); assertEquals(SpelMessage.RUN_OUT_OF_ARGUMENTS, spe.getMessageCode()); assertEquals(10, spe.getPosition()); assertTrue(ex.getMessage().contains(ex.getExpressionString())); assertEquals(SpelMessage.NON_TERMINATING_DOUBLE_QUOTED_STRING, spe.getMessageCode()); assertEquals(0, spe.getPosition()); assertTrue(ex.getMessage().contains(ex.getExpressionString())); assertEquals(SpelMessage.NON_TERMINATING_QUOTED_STRING, spe.getMessageCode()); assertEquals(0, spe.getPosition()); assertTrue(ex.getMessage().contains(ex.getExpressionString()));
public PreInvocationAttribute createPreInvocationAttribute(String preFilterAttribute, String filterObject, String preAuthorizeAttribute) { try { // TODO: Optimization of permitAll Expression preAuthorizeExpression = preAuthorizeAttribute == null ? parser.parseExpression("permitAll") : parser.parseExpression(preAuthorizeAttribute); Expression preFilterExpression = preFilterAttribute == null ? null : parser.parseExpression(preFilterAttribute); return new PreInvocationExpressionAttribute(preFilterExpression, filterObject, preAuthorizeExpression); } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } }
public PostInvocationAttribute createPostInvocationAttribute(String postFilterAttribute, String postAuthorizeAttribute) { try { Expression postAuthorizeExpression = postAuthorizeAttribute == null ? null : parser.parseExpression(postAuthorizeAttribute); Expression postFilterExpression = postFilterAttribute == null ? null : parser.parseExpression(postFilterAttribute); if (postFilterExpression != null || postAuthorizeExpression != null) { return new PostInvocationExpressionAttribute(postFilterExpression, postAuthorizeExpression); } } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } return null; } }
public PreInvocationAttribute createPreInvocationAttribute(String preFilterAttribute, String filterObject, String preAuthorizeAttribute) { try { // TODO: Optimization of permitAll ExpressionParser parser = getParser(); Expression preAuthorizeExpression = preAuthorizeAttribute == null ? parser .parseExpression("permitAll") : parser .parseExpression(preAuthorizeAttribute); Expression preFilterExpression = preFilterAttribute == null ? null : parser .parseExpression(preFilterAttribute); return new PreInvocationExpressionAttribute(preFilterExpression, filterObject, preAuthorizeExpression); } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } }
public PostInvocationAttribute createPostInvocationAttribute( String postFilterAttribute, String postAuthorizeAttribute) { try { ExpressionParser parser = getParser(); Expression postAuthorizeExpression = postAuthorizeAttribute == null ? null : parser.parseExpression(postAuthorizeAttribute); Expression postFilterExpression = postFilterAttribute == null ? null : parser .parseExpression(postFilterAttribute); if (postFilterExpression != null || postAuthorizeExpression != null) { return new PostInvocationExpressionAttribute(postFilterExpression, postAuthorizeExpression); } } catch (ParseException e) { throw new IllegalArgumentException("Failed to parse expression '" + e.getExpressionString() + "'", e); } return null; }