/**
 * Copyright Alex Objelean
 */
package ro.isdc.wro.extensions.manager;

import java.util.Map;

import ro.isdc.wro.extensions.processor.GoogleClosureCompressorProcessor;
import ro.isdc.wro.extensions.processor.YUICssCompressorProcessor;
import ro.isdc.wro.extensions.processor.YUIJsCompressorProcessor;
import ro.isdc.wro.manager.factory.ConfigurableWroManagerFactory;
import ro.isdc.wro.model.resource.processor.ResourcePostProcessor;

import com.google.javascript.jscomp.CompilationLevel;


/**
 * An implementation of {@link ConfigurableWroManagerFactory} that adds processors defined in extensions module.
 *
 * @author Alex Objelean
 */
public class ExtensionsConfigurableWroManagerFactory extends ConfigurableWroManagerFactory {
  /**
   * {@inheritDoc}
   */
  @Override
  protected void contributePostProcessors(final Map<String, ResourcePostProcessor> map) {
    map.put("yuiCssMin", new YUICssCompressorProcessor());
    map.put("yuiJsMin", new YUIJsCompressorProcessor());
    map.put("googleClosureSimple", new GoogleClosureCompressorProcessor());
    map.put("googleClosureAdvanced", new GoogleClosureCompressorProcessor(CompilationLevel.ADVANCED_OPTIMIZATIONS));
  }
}

@@ -166,32 +166,91 @@
 ssorProcessor;%0D%0A
+import ro.isdc.wro.extensions.processor.LessCssProcessor;%0D%0A
 import ro.isdc.w
@@ -293,32 +293,32 @@
 ssorProcessor;%0D%0A
-
 import ro.isdc.w
@@ -502,16 +502,83 @@
 cessor;%0D
+%0Aimport ro.isdc.wro.model.resource.processor.ResourcePreProcessor;%0D
 %0A%0D%0Aimpor
@@ -1127,32 +1127,81 @@
 rProcessor());%0D%0A
+    map.put(%22lessCss%22, new LessCssProcessor());%0D%0A
     map.put(%22goo
@@ -1253,32 +1253,32 @@
 rProcessor());%0D%0A
-
     map.put(%22goo
@@ -1383,12 +1383,204 @@
 );%0D%0A  %7D%0D
+%0A%0D%0A  /**%0D%0A   * %7B@inheritDoc%7D%0D%0A   */%0D%0A  @Override%0D%0A  protected void contributePreProcessors(final Map%3CString, ResourcePreProcessor%3E map) %7B%0D%0A    map.put(%22lessCss%22, new LessCssProcessor());%0D%0A  %7D%0D
 %0A%7D%0D%0A

add lessCss processor to ExtensionsConfigurableWroManager