@Override public void destroy() throws Exception { frontend.destroy(); }
@Override public void initialize(final UrlRewriteEnvironment environment, final HtmlInfixDescriptor descriptor) throws Exception { final UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }
@Override public List<String> resolve(UrlRewriteContext context, List<String> parameters) throws Exception { String prefix = ""; if ( parameters != null && parameters.size() > 1 ) { prefix = parameters.get(0); parameters = parameters.subList(1, parameters.size()); } List<String> frontendValues = frontend.resolve(context, parameters); StringBuilder buffer = new StringBuilder(IMPORT_LITERAL); buffer.append(' ').append(prefix); if ( frontendValues != null && !frontendValues.isEmpty() ) { for ( String value : frontendValues ) { buffer.append(value); } } return Collections.singletonList(buffer.toString()); }
private static Map<Class<? extends UrlRewriteFunctionDescriptor>,Map<String,Class<? extends UrlRewriteFunctionProcessor>>> loadProcessors() { Map<Class<? extends UrlRewriteFunctionDescriptor>,Map<String,Class<? extends UrlRewriteFunctionProcessor>>> descriptorMap = new HashMap<>(); ServiceLoader<UrlRewriteFunctionProcessor> processors = ServiceLoader.load( UrlRewriteFunctionProcessor.class ); for( UrlRewriteFunctionProcessor processor : processors ) { Class<? extends UrlRewriteFunctionDescriptor> descriptorInterface = getDescriptorInterface( processor ); Map<String,Class<? extends UrlRewriteFunctionProcessor>> typeMap = descriptorMap.get( descriptorInterface ); if( typeMap == null ) { typeMap = new HashMap<>(); descriptorMap.put( descriptorInterface, typeMap ); } String functionName = processor.name(); typeMap.put( functionName, processor.getClass() ); } return descriptorMap; }
@Override public void initialize(final UrlRewriteEnvironment environment, final HtmlPrefixDescriptor descriptor) throws Exception { final UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }
@Override public List<String> resolve(UrlRewriteContext context, List<String> parameters) throws Exception { String prefix = ""; if ( parameters != null && parameters.size() > 1 ) { prefix = parameters.get(0); parameters = parameters.subList(1, parameters.size()); } List<String> frontendValues = frontend.resolve(context, parameters); StringBuffer buffer = new StringBuffer(IMPORT_LITERAL); buffer.append(" "); buffer.append(prefix); if ( frontendValues != null && !frontendValues.isEmpty() ) { for ( String value : frontendValues ) { buffer.append(value); } } return Arrays.asList(buffer.toString()); }
private static Map<Class<? extends UrlRewriteFunctionDescriptor>,Map<String,Class<? extends UrlRewriteFunctionProcessor>>> loadProcessors() { Map<Class<? extends UrlRewriteFunctionDescriptor>,Map<String,Class<? extends UrlRewriteFunctionProcessor>>> descriptorMap = new HashMap<>(); ServiceLoader<UrlRewriteFunctionProcessor> processors = ServiceLoader.load( UrlRewriteFunctionProcessor.class ); for( UrlRewriteFunctionProcessor processor : processors ) { Class<? extends UrlRewriteFunctionDescriptor> descriptorInterface = getDescriptorInterface( processor ); Map<String,Class<? extends UrlRewriteFunctionProcessor>> typeMap = descriptorMap.get( descriptorInterface ); if( typeMap == null ) { typeMap = new HashMap<>(); descriptorMap.put( descriptorInterface, typeMap ); } String functionName = processor.name(); typeMap.put( functionName, processor.getClass() ); } return descriptorMap; }
@Override public void initialize(UrlRewriteEnvironment environment, HtmlImportFunctionDescriptor descriptor) throws Exception { UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory.create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }
@Override public void destroy() throws Exception { frontend.destroy(); }
@Override public List<String> resolve(UrlRewriteContext context, List<String> parameters) throws Exception { String postfix = ""; if ((parameters != null) && (parameters.size() > 1)) { /* last parameter is postfix */ postfix = parameters.get(parameters.size() - 1); parameters = parameters.subList(0, parameters.size() - 1); } final List<String> frontendValues = frontend.resolve(context, parameters); final StringBuilder buffer = new StringBuilder(); if (frontendValues != null && !frontendValues.isEmpty()) { for (final String value : frontendValues) { buffer.append(value); } } buffer.append(postfix); return Collections.singletonList(buffer.toString()); } }
@Override public void initialize(final UrlRewriteEnvironment environment, final HtmlPostfixDescriptor descriptor) throws Exception { final UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }
@Override public void destroy() throws Exception { frontend.destroy(); }
@Override public List<String> resolve(UrlRewriteContext context, List<String> parameters) throws Exception { String prefix = ""; if ((parameters != null) && (parameters.size() > 1)) { prefix = parameters.get(0); parameters = parameters.subList(1, parameters.size()); } final List<String> frontendValues = frontend.resolve(context, parameters); final StringBuffer buffer = new StringBuffer(); buffer.append(prefix); if (frontendValues != null && !frontendValues.isEmpty()) { for (final String value : frontendValues) { buffer.append(value); } } return Arrays.asList(buffer.toString()); } }
@Override public void initialize(final UrlRewriteEnvironment environment, final HtmlPostfixDescriptor descriptor) throws Exception { final UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }
@Override public void destroy() throws Exception { frontend.destroy(); }
@Override public List<String> evaluate( String function, List<String> parameters ) { List<String> results = null; UrlRewriteFunctionProcessor processor = functions.get( function ); if( processor != null ) { try { results = processor.resolve( UrlRewriteContextImpl.this, parameters ); } catch( Exception e ) { LOG.failedToInvokeRewriteFunction( function, e ); results = null; } } return results; } }
@Override public void initialize(final UrlRewriteEnvironment environment, final HtmlPrefixDescriptor descriptor) throws Exception { final UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }
@Override public void destroy() throws Exception { frontend.destroy(); }
@Override public List<String> resolve(UrlRewriteContext context, List<String> parameters) throws Exception { String prefix = ""; if ((parameters != null) && (parameters.size() > 1)) { prefix = parameters.get(0); parameters = parameters.subList(1, parameters.size()); } final List<String> frontendValues = frontend.resolve(context, parameters); final StringBuilder buffer = new StringBuilder(); buffer.append(prefix); if (frontendValues != null && !frontendValues.isEmpty()) { for (final String value : frontendValues) { buffer.append(value); } } return Collections.singletonList(buffer.toString()); } }
@Override public void initialize(final UrlRewriteEnvironment environment, final HtmlInfixDescriptor descriptor) throws Exception { final UrlRewriteFunctionDescriptor frontendDescriptor = UrlRewriteFunctionDescriptorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME); frontend = UrlRewriteFunctionProcessorFactory .create(FrontendFunctionDescriptor.FUNCTION_NAME, frontendDescriptor); frontend.initialize(environment, frontendDescriptor); }