/** * verifies compilation, instanciation and that it is a ZuulFilter * * @param sFilterCode * @return a FilterInfo object representing that code * @throws org.codehaus.groovy.control.CompilationFailedException * * @throws IllegalAccessException * @throws InstantiationException */ public FilterInfo verifyFilter(String sFilterCode) throws org.codehaus.groovy.control.CompilationFailedException, IllegalAccessException, InstantiationException { Class groovyClass = compileGroovy(sFilterCode); Object instance = instanciateClass(groovyClass); checkZuulFilterInstance(instance); BaseFilter filter = (BaseFilter) instance; String filter_id = FilterInfo.buildFilterID(ZuulApplicationInfo.getApplicationName(), filter.filterType(), groovyClass.getSimpleName()); return new FilterInfo(filter_id, sFilterCode, filter.filterType(), groovyClass.getSimpleName(), filter.disablePropertyName(), "" + filter.filterOrder(), ZuulApplicationInfo.getApplicationName()); }
FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sGoodGroovyScriptFilter); assertNotNull(filterInfo); assertEquals(filterInfo.getFilterID(), "null:filter:in"); FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sNotZuulFilterGroovy); assertFalse(true);// shouldn't get here } catch (InstantiationException e) { FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sCompileFailCode); assertFalse(true);// shouldn't get here } catch (CompilationFailedException e) {
@Test public void testCompile() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { filterClass = FilterVerifier.INSTANCE.compileGroovy(sCompileFailCode); assertFalse(true); //we shouldn't get here } catch (Exception e) { assertTrue(true); } }
private void handleUploadAction(HttpServletRequest request, HttpServletResponse response) throws IOException { String filter = handlePostBody(request, response); if (filter != null) { FilterInfo filterInfo = null; try { filterInfo = FilterVerifier.getInstance().verifyFilter(filter); } catch (IllegalAccessException e) { logger.error(e.getMessage(), e); setUsageError(500, "ERROR: Unable to process uploaded data. " + e.getMessage(), response); } catch (InstantiationException e) { logger.error(e.getMessage(), e); setUsageError(500, "ERROR: Bad Filter. " + e.getMessage(), response); } filterInfo = scriptDAO.addFilter(filter, filterInfo.getFilterType(), filterInfo.getFilterName(), filterInfo.getFilterDisablePropertyName(), filterInfo.getFilterOrder()); if (filterInfo == null) { setUsageError(500, "ERROR: Unable to process uploaded data.", response); return; } response.sendRedirect(redirectPath.get()); } }
@Test public void testCompile() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { filterClass = FilterVerifier.INSTANCE.compileGroovy(sCompileFailCode); assertFalse(true); //we shouldn't get here } catch (Exception e) { assertTrue(true); } }
@Test public void testZuulFilterInstance() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); } catch (InstantiationException e) { e.printStackTrace(); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); assertFalse(true); //we shouldn't get here } catch (InstantiationException e) {
@Test public void testCompile() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { filterClass = FilterVerifier.INSTANCE.compileGroovy(sCompileFailCode); assertFalse(true); //we shouldn't get here } catch (Exception e) { assertTrue(true); } }
FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sGoodGroovyScriptFilter); assertNotNull(filterInfo); assertEquals(filterInfo.getFilterID(), "null:filter:in"); FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sNotZuulFilterGroovy); assertFalse(true);// shouldn't get here } catch (InstantiationException e) { FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sCompileFailCode); assertFalse(true);// shouldn't get here } catch (CompilationFailedException e) {
@Test public void testZuulFilterInstance() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); } catch (InstantiationException e) { e.printStackTrace(); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); assertFalse(true); //we shouldn't get here } catch (InstantiationException e) {
@Test public void testCompile() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { filterClass = FilterVerifier.INSTANCE.compileGroovy(sCompileFailCode); assertFalse(true); //we shouldn't get here } catch (Exception e) { assertTrue(true); } }
FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sGoodGroovyScriptFilter); assertNotNull(filterInfo); assertEquals(filterInfo.getFilterID(), "null:filter:pre"); FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sNotZuulFilterGroovy); assertFalse(true);// shouldn't get here } catch (InstantiationException e) { FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sCompileFailCode); assertFalse(true);// shouldn't get here } catch (CompilationFailedException e) {
/** * verifies compilation, instanciation and that it is a ZuulFilter * * @param sFilterCode * @return a FilterInfo object representing that code * @throws org.codehaus.groovy.control.CompilationFailedException * * @throws IllegalAccessException * @throws InstantiationException */ public FilterInfo verifyFilter(String sFilterCode) throws org.codehaus.groovy.control.CompilationFailedException, IllegalAccessException, InstantiationException { Class groovyClass = compileGroovy(sFilterCode); Object instance = instanciateClass(groovyClass); checkZuulFilterInstance(instance); BaseFilter filter = (BaseFilter) instance; String filter_id = FilterInfo.buildFilterID(ZuulApplicationInfo.getApplicationName(), filter.filterType(), groovyClass.getSimpleName()); return new FilterInfo(filter_id, sFilterCode, filter.filterType(), groovyClass.getSimpleName(), filter.disablePropertyName(), "" + filter.filterOrder(), ZuulApplicationInfo.getApplicationName()); }
FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sGoodGroovyScriptFilter); assertNotNull(filterInfo); assertEquals(filterInfo.getFilterID(), "null:filter:in"); FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sNotZuulFilterGroovy); assertFalse(true);// shouldn't get here } catch (InstantiationException e) { FilterInfo filterInfo = FilterVerifier.INSTANCE.verifyFilter(sCompileFailCode); assertFalse(true);// shouldn't get here } catch (CompilationFailedException e) {
/** * verifies compilation, instanciation and that it is a ZuulFilter * * @param sFilterCode * @return a FilterInfo object representing that code * @throws CompilationFailedException * * @throws IllegalAccessException * @throws InstantiationException */ public FilterInfo verifyFilter(String sFilterCode) throws CompilationFailedException, IllegalAccessException, InstantiationException { Class groovyClass = compileGroovy(sFilterCode); Object instance = instanciateClass(groovyClass); checkZuulFilterInstance(instance); ZuulFilter filter = (ZuulFilter) instance; return new FilterInfo(sFilterCode, groovyClass.getSimpleName(), filter); }
@Test public void testZuulFilterInstance() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); } catch (InstantiationException e) { e.printStackTrace(); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); assertFalse(true); //we shouldn't get here } catch (InstantiationException e) {
/** * verifies compilation, instanciation and that it is a ZuulFilter * * @param sFilterCode * @return a FilterInfo object representing that code * @throws org.codehaus.groovy.control.CompilationFailedException * * @throws IllegalAccessException * @throws InstantiationException */ public FilterInfo verifyFilter(String sFilterCode) throws org.codehaus.groovy.control.CompilationFailedException, IllegalAccessException, InstantiationException { Class groovyClass = compileGroovy(sFilterCode); Object instance = instanciateClass(groovyClass); checkZuulFilterInstance(instance); BaseFilter filter = (BaseFilter) instance; String filter_id = FilterInfo.buildFilterID(ZuulApplicationInfo.getApplicationName(), filter.filterType(), groovyClass.getSimpleName()); return new FilterInfo(filter_id, sFilterCode, filter.filterType(), groovyClass.getSimpleName(), filter.disablePropertyName(), "" + filter.filterOrder(), ZuulApplicationInfo.getApplicationName()); }
@Test public void testZuulFilterInstance() { Class filterClass = FilterVerifier.INSTANCE.compileGroovy(sGoodGroovyScriptFilter); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); } catch (InstantiationException e) { e.printStackTrace(); filterClass = FilterVerifier.INSTANCE.compileGroovy(sNotZuulFilterGroovy); assertNotNull(filterClass); try { Object filter = FilterVerifier.INSTANCE.instanciateClass(filterClass); try { FilterVerifier.INSTANCE.checkZuulFilterInstance(filter); assertFalse(true); //we shouldn't get here } catch (InstantiationException e) {