package com.github.sommeri.less4j.core.compiler.stages; import java.util.ArrayList; import java.util.List; import com.github.sommeri.less4j.LessCompiler.Configuration; import com.github.sommeri.less4j.core.ast.ASTCssNode; import com.github.sommeri.less4j.core.ast.Import; import com.github.sommeri.less4j.core.compiler.expressions.TypesConversionUtils; import com.github.sommeri.less4j.core.problems.ProblemsHandler; public class UrlsAndImportsNormalizer { private TypesConversionUtils conversionUtils = new TypesConversionUtils(); private final ProblemsHandler problemsHandler; private final Configuration configuration; public UrlsAndImportsNormalizer(ProblemsHandler problemsHandler, Configuration configuration) { this.problemsHandler = problemsHandler; this.configuration = configuration; } public void normalizeUrlsAndImports(ASTCssNode node) { switch (node.getType()) { case IMPORT: normalizeImport((Import)node); break; default: List<ASTCssNode> childs = new ArrayList<ASTCssNode>(node.getChilds()); for (ASTCssNode kid : childs) { normalizeUrlsAndImports(kid); } } } @SuppressWarnings("unused") private void normalizeImport(Import node) { String extractFilename = conversionUtils.extractFilename(node.getUrlExpression(), problemsHandler, configuration); } }