Class AbstractLesscController
java.lang.Object
org.javalite.activeweb.HttpSupport
org.javalite.activeweb.AppController
org.javalite.activeweb.controllers.AbstractLesscController
- All Implemented Interfaces:
RequestAccess
Subclass will compile and serve CSS from LESS files. For more information on LESS, please see lesscss.org. Usually a developer would subclass this controller to trigger and compile in development environment, but the URI to CSS file would be ignored by the framework (configured in RouteConfig), so that a statically compiled version is served by a container or a web server.
This controller does not by itself compile LESS files. It shells out to a lessc
compiler, which
needs to be installed.
The controller will only compile LESS files if there have been any changes since the last invocation. If there has been no changes, it immediately serves the cached version of CSS compiled previously.
Example usage:
public class BootstrapController extends AbstractLesscController { protected File getLessFile() { return new File("src/main/webapp/less/bootstrap.less"); } } ... public class RouteConfig extends AbstractRouteConfig { public void init(AppContext appContext) { ignore("/bootstrap.css").exceptIn("development"); } }The line in the
RouteConfig
ensures that the URI /bootstrap.css
is ignored by the framework
in every environment except "development". This is why the controller is triggering in development environment only.- Author:
- igor on 4/28/14
-
Nested Class Summary
Nested classes/interfaces inherited from class org.javalite.activeweb.HttpSupport
HttpSupport.HttpBuilder, HttpSupport.RenderBuilder
-
Field Summary
Fields inherited from interface org.javalite.activeweb.RequestAccess
LOGGER
-
Constructor Summary
-
Method Summary
Methods inherited from class org.javalite.activeweb.AppController
getContentType, getLayout, render, render, restful, restful
Methods inherited from class org.javalite.activeweb.HttpSupport
applicationJSON, assign, blank, encoding, flash, flash, flash, flash, getEncoding, getFile, getHttpServletRequest, getHttpServletResponse, getMap, getMap, getRealPath, getRequestBytes, getRequestInputStream, getRequestStream, getRequestString, getResponseHeaders, header, header, jsonList, jsonMap, jsonMaps, locale, logDebug, logError, logError, logError, logInfo, logWarning, logWarning, merge, multipartForm, multipartForm, multipartFormItems, multipartFormItems, multipartFormItems, outputStream, outputStream, outputStream, redirect, redirect, redirect, redirect, redirect, redirect, redirect, redirect, redirectToReferrer, redirectToReferrer, render, respond, sanitize, sendCookie, sendCookie, sendFile, sendFile, sendPermanentCookie, session, session, sessionBoolean, sessionDouble, sessionFloat, sessionHas, sessionInteger, sessionLong, sessionObject, sessionString, setContentLength, setEncoding, setLocale, setRequestEncoding, setResponseEncoding, status, streamOut, uploadedFiles, uploadedFiles, uploadedFiles, values, view, view, view, writer, writer
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.javalite.activeweb.RequestAccess
appContext, context, cookie, cookies, cookieValue, exists, format, getId, getLocale, getRequestHost, getRequestPort, getRequestProperties, getRequestProtocol, getRoute, header, headers, host, ipAddress, ipForwardedFor, isDelete, isGet, isHead, isMethod, isMultipartContent, isPost, isPut, isXhr, locale, method, param, param, params, params, params, params1st, params1st, path, port, protocol, queryString, remoteAddress, remoteHost, requestHas, servletPath, session, session, uri, url, userAgent, xhr
-
Constructor Details
-
AbstractLesscController
public AbstractLesscController()
-
-
Method Details
-
index
public void index() -
getLessFile
Subclass should return a file handle pointing to the main Less file.- Returns:
- file handle pointing to the main Less file
-
getLesscArguments
Subclass should override this method if they want to provide custom list of arguments to LessC compiler.- Returns:
- custom list of arguments for LessC compiler.
-