org.fusesource.scalate.servlet

ServletTemplateEngine

class ServletTemplateEngine extends TemplateEngine

A Servlet based TemplateEngine which initializes itself using a ServletConfig or a FilterConfig.

The default layout files searched if no layout attribute is defined by a template are: * "WEB-INF/scalate/layouts/default.jade" * "WEB-INF/scalate/layouts/default.mustache" * "WEB-INF/scalate/layouts/default.scaml" * "WEB-INF/scalate/layouts/default.ssp" *

go to: companion
    authors:
  1. Hiram Chirino

Inherited
  1. Hide All
  2. Show all
  1. TemplateEngine
  2. Logging
  3. AnyRef
  4. Any
Visibility
  1. Public
  2. All

Instance constructors

  1. new ServletTemplateEngine(config: Config)

Value Members

  1. def !=(arg0: AnyRef): Boolean

    attributes: final
    definition classes: AnyRef
  2. def !=(arg0: Any): Boolean

    o != arg0 is the same as !(o == (arg0)).

    o != arg0 is the same as !(o == (arg0)).

    arg0

    the object to compare against this object for dis-equality.

    returns

    false if the receiver object is equivalent to the argument; true otherwise.

    attributes: final
    definition classes: Any
  3. def ##(): Int

    attributes: final
    definition classes: AnyRef → Any
  4. def $asInstanceOf[T0](): T0

    attributes: final
    definition classes: AnyRef
  5. def $isInstanceOf[T0](): Boolean

    attributes: final
    definition classes: AnyRef
  6. def ==(arg0: AnyRef): Boolean

    o == arg0 is the same as if (o eq null) arg0 eq null else o.equals(arg0).

    o == arg0 is the same as if (o eq null) arg0 eq null else o.equals(arg0).

    arg0

    the object to compare against this object for equality.

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    attributes: final
    definition classes: AnyRef
  7. def ==(arg0: Any): Boolean

    o == arg0 is the same as o.equals(arg0).

    o == arg0 is the same as o.equals(arg0).

    arg0

    the object to compare against this object for equality.

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    attributes: final
    definition classes: Any
  8. var allowCaching: Boolean

    Set to false if you don't want the template engine to ever cache any of the compiled templates.

    Set to false if you don't want the template engine to ever cache any of the compiled templates.

    If not explicitly configured this property can be configured using the scalate.allowCaching system property

    definition classes: TemplateEngine
  9. var allowReload: Boolean

    If true, then the template engine will check to see if the template has been updated since last compiled so that it can be reloaded.

    If true, then the template engine will check to see if the template has been updated since last compiled so that it can be reloaded. Defaults to true. YOu should set to false in production environments since the templates should not be changing.

    If not explicitly configured this property can be configured using the scalate.allowReload system property

    definition classes: TemplateEngine
  10. def asInstanceOf[T0]: T0

    This method is used to cast the receiver object to be of type T0.

    This method is used to cast the receiver object to be of type T0.

    Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression1.asInstanceOf[String] will throw a ClassCastException at runtime, while the expressionList(1).asInstanceOf[List[String]] will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested typed.

    returns

    the receiver object.

    attributes: final
    definition classes: Any
  11. var bindings: List[Binding]

    By default lets bind the context so we get to reuse its methods in a template

    By default lets bind the context so we get to reuse its methods in a template

    definition classes: TemplateEngine
  12. def buildSourceMap(stratumName: String, uri: String, scalaFile: File, positions: TreeMap[OffsetPosition, OffsetPosition]): String

    attributes: protected
    definition classes: TemplateEngine
  13. def bytecodeDirectory: File

    definition classes: TemplateEngine
  14. def cacheHits: Int

    The number of times a template load request was serviced from the cache.

    The number of times a template load request was serviced from the cache.

    definition classes: TemplateEngine
  15. def cacheMisses: Int

    The number of times a template load request could not be serviced from the cache and was loaded from disk.

    The number of times a template load request could not be serviced from the cache and was loaded from disk.

    definition classes: TemplateEngine
  16. def canLoad(uri: String, extraBindings: List[Binding]): Boolean

    Returns true if the URI can be loaded as a template

    Returns true if the URI can be loaded as a template

    definition classes: TemplateEngine
  17. def canLoad(uri: String): Boolean

    Returns true if the URI can be loaded as a template

    Returns true if the URI can be loaded as a template

    definition classes: TemplateEngine
  18. def canLoad(source: TemplateSource, extraBindings: List[Binding] = immutable.this.Nil): Boolean

    Returns true if the URI can be loaded as a template

    Returns true if the URI can be loaded as a template

    definition classes: TemplateEngine
  19. def classFileName(uri: String): File

    attributes: protected
    definition classes: TemplateEngine
  20. var classLoader: ClassLoader

    definition classes: TemplateEngine
  21. var classpath: String

    definition classes: TemplateEngine
  22. def clone(): AnyRef

    This method creates and returns a copy of the receiver object.

    This method creates and returns a copy of the receiver object.

    The default implementation of the clone method is platform dependent.

    returns

    a copy of the receiver object.

    attributes: protected
    definition classes: AnyRef
  23. var codeGenerators: Map[String, CodeGenerator]

    The supported template engines and their default extensions

    The supported template engines and their default extensions

    definition classes: TemplateEngine
  24. var combinedClassPath: Boolean

    Whether a custom classpath should be combined with the deduced classpath

    Whether a custom classpath should be combined with the deduced classpath

    definition classes: TemplateEngine
  25. def compile(source: TemplateSource, extraBindings: List[Binding] = immutable.this.Nil): Template

    Compiles a template source without placing it in the template cache.

    Compiles a template source without placing it in the template cache. Useful for temporary templates or dynamically created template

    definition classes: TemplateEngine
  26. def compileMoustache(text: String, extraBindings: List[Binding] = immutable.this.Nil): Template

    Compiles the given Moustache template text and returns the template

    Compiles the given Moustache template text and returns the template

    definition classes: TemplateEngine
  27. def compileScaml(text: String, extraBindings: List[Binding] = immutable.this.Nil): Template

    Compiles the given SSP template text and returns the template

    Compiles the given SSP template text and returns the template

    definition classes: TemplateEngine
  28. def compileSsp(text: String, extraBindings: List[Binding] = immutable.this.Nil): Template

    Compiles the given SSP template text and returns the template

    Compiles the given SSP template text and returns the template

    definition classes: TemplateEngine
  29. def compileText(extension: String, text: String, extraBindings: List[Binding] = immutable.this.Nil): Template

    Compiles the given text using the given extension (such as ssp or scaml for example to denote what parser to use) and return the template

    Compiles the given text using the given extension (such as ssp or scaml for example to denote what parser to use) and return the template

    definition classes: TemplateEngine
  30. lazy val compiler: ScalaCompiler

    definition classes: TemplateEngine
  31. val config: Config

  32. def createRenderContext(uri: String, out: PrintWriter): RenderContext

    Factory method used by the layout helper methods that should be overloaded by template engine implementations if they wish to customize the render context implementation

    Factory method used by the layout helper methods that should be overloaded by template engine implementations if they wish to customize the render context implementation

    attributes: protected
    definition classes: TemplateEngine
  33. def debug(e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  34. def debug(message: ⇒ String, e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  35. def debug(message: ⇒ String): Unit

    attributes: protected
    definition classes: Logging
  36. def eq(arg0: AnyRef): Boolean

    This method is used to test whether the argument (arg0) is a reference to the receiver object (this).

    This method is used to test whether the argument (arg0) is a reference to the receiver object (this).

    The eq method implements an [http://en.wikipedia.org/wiki/Equivalence_relation equivalence relation] on non-null instances of AnyRef: * It is reflexive: for any non-null instance x of type AnyRef, x.eq(x) returns true. * It is symmetric: for any non-null instances x and y of type AnyRef, x.eq(y) returns true if and only if y.eq(x) returns true. * It is transitive: for any non-null instances x, y, and z of type AnyRef if x.eq(y) returns true and y.eq(z) returns true, then x.eq(z) returns true.

    Additionally, the eq method has three other properties. * It is consistent: for any non-null instances x and y of type AnyRef, multiple invocations of x.eq(y) consistently returns true or consistently returns false. * For any non-null instance x of type AnyRef, x.eq(null) and null.eq(x) returns false. * null.eq(null) returns true.

    When overriding the equals or hashCode methods, it is important to ensure that their behavior is consistent with reference equality. Therefore, if two objects are references to each other (o1 eq o2), they should be equal to each other (o1 == o2) and they should hash to the same value (o1.hashCode == o2.hashCode).

    arg0

    the object to compare against this object for reference equality.

    returns

    true if the argument is a reference to the receiver object; false otherwise.

    attributes: final
    definition classes: AnyRef
  37. def equals(arg0: Any): Boolean

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence.

    This method is used to compare the receiver object (this) with the argument object (arg0) for equivalence.

    The default implementations of this method is an [http://en.wikipedia.org/wiki/Equivalence_relation equivalence relation]: * It is reflexive: for any instance x of type Any, x.equals(x) should return true. * It is symmetric: for any instances x and y of type Any, x.equals(y) should return true if and only if y.equals(x) returns true. * It is transitive: for any instances x, y, and z of type AnyRef if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.

    If you override this method, you should verify that your implementation remains an equivalence relation. Additionally, when overriding this method it is often necessary to override hashCode to ensure that objects that are "equal" (o1.equals(o2) returns true) hash to the same scala.Int (o1.hashCode.equals(o2.hashCode)).

    arg0

    the object to compare against this object for equality.

    returns

    true if the receiver object is equivalent to the argument; false otherwise.

    definition classes: AnyRef → Any
  38. def error(e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  39. def error(message: ⇒ String, e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  40. def error(message: ⇒ String): Unit

    attributes: protected
    definition classes: Logging
  41. var escapeMarkup: Boolean

    Whether or not markup sensitive characters for HTML/XML elements like & > < are escaped or not

    Whether or not markup sensitive characters for HTML/XML elements like & > < are escaped or not

    definition classes: TemplateEngine
  42. def extension(source: TemplateSource): Option[String]

    Extracts the extension from the source's uri though derived engines could override this behaviour to auto default missing extensions or performing custom mappings etc.

    Extracts the extension from the source's uri though derived engines could override this behaviour to auto default missing extensions or performing custom mappings etc.

    attributes: protected
    definition classes: TemplateEngine
  43. def extensions: Set[String]

    Returns the file extensions understood by Scalate; all the template engines and pipelines including the wiki markup languages.

    Returns the file extensions understood by Scalate; all the template engines and pipelines including the wiki markup languages.

    definition classes: TemplateEngine
  44. def filter(name: String): Option[Filter]

    definition classes: TemplateEngine
  45. var filters: Map[String, Filter]

    definition classes: TemplateEngine
  46. def finalize(): Unit

    This method is called by the garbage collector on the receiver object when garbage collection determines that there are no more references to the object.

    This method is called by the garbage collector on the receiver object when garbage collection determines that there are no more references to the object.

    The details of when and if the finalize method are invoked, as well as the interaction between finalizeand non-local returns and exceptions, are all platform dependent.

    attributes: protected
    definition classes: AnyRef
  47. def generateScala(uri: String): Code

    Generates the Scala code for a template.

    Generates the Scala code for a template. Useful for generating scala code that will then be compiled into the application as part of a build process.

    definition classes: TemplateEngine
  48. def generateScala(uri: String, extraBindings: List[Binding]): Code

    Generates the Scala code for a template.

    Generates the Scala code for a template. Useful for generating scala code that will then be compiled into the application as part of a build process.

    definition classes: TemplateEngine
  49. def generateScala(source: TemplateSource, extraBindings: List[Binding] = immutable.this.Nil): Code

    Generates the Scala code for a template.

    Generates the Scala code for a template. Useful for generating scala code that will then be compiled into the application as part of a build process.

    definition classes: TemplateEngine
  50. def generator(source: TemplateSource): CodeGenerator

    Gets the code generator to use for the give uri string by looking up the uri's extension in the the codeGenerators map.

    Gets the code generator to use for the give uri string by looking up the uri's extension in the the codeGenerators map.

    attributes: protected
    definition classes: TemplateEngine
  51. def generatorForExtension(extension: String): CodeGenerator

    Returns the code generator for the given file extension

    Returns the code generator for the given file extension

    attributes: protected
    definition classes: TemplateEngine
  52. def getClass(): java.lang.Class[_]

    Returns a representation that corresponds to the dynamic class of the receiver object.

    Returns a representation that corresponds to the dynamic class of the receiver object.

    The nature of the representation is platform dependent.

    returns

    a representation that corresponds to the dynamic class of the receiver object.

    attributes: final
    definition classes: AnyRef
  53. def hashCode(): Int

    Returns a hash code value for the object.

    Returns a hash code value for the object.

    The default hashing algorithm is platform dependent.

    Note that it is allowed for two objects to have identical hash codes (o1.hashCode.equals(o2.hashCode)) yet not be equal (o1.equals(o2) returns false). A degenerate implementation could always return 0. However, it is required that if two objects are equal (o1.equals(o2) returns true) that they have identical hash codes (o1.hashCode.equals(o2.hashCode)). Therefore, when overriding this method, be sure to verify that the behavior is consistent with the equals method.

    returns

    the hash code value for the object.

    definition classes: AnyRef → Any
  54. var importStatements: List[String]

    Sets the import statements used in each generated template class

    Sets the import statements used in each generated template class

    definition classes: TemplateEngine
  55. def info(e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  56. def info(message: ⇒ String, e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  57. def info(message: ⇒ String): Unit

    attributes: protected
    definition classes: Logging
  58. def invalidateCachedTemplates(): Boolean

    Invalidates all cached Templates.

    Invalidates all cached Templates.

    definition classes: TemplateEngine
  59. def isDevelopmentMode: Boolean

    Returns true if this template engine is being used in development mode.

    Returns true if this template engine is being used in development mode.

    definition classes: TemplateEngine
  60. def isInstanceOf[T0]: Boolean

    This method is used to test whether the dynamic type of the receiver object is T0.

    This method is used to test whether the dynamic type of the receiver object is T0.

    Note that the test result of the test is modulo Scala's erasure semantics. Therefore the expression1.isInstanceOf[String] will return false, while the expression List(1).isInstanceOf[List[String]] will return true. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested typed.

    returns

    true if the receiver object is an instance of erasure of type T0; false otherwise.

    attributes: final
    definition classes: Any
  61. def layout(source: TemplateSource, context: RenderContext): Unit

    Renders the given template source using the current layoutStrategy

    Renders the given template source using the current layoutStrategy

    definition classes: TemplateEngine
  62. def layout(source: TemplateSource, context: RenderContext, extraBindings: List[Binding]): Unit

    Renders the given template source using the current layoutStrategy

    Renders the given template source using the current layoutStrategy

    definition classes: TemplateEngine
  63. def layout(source: TemplateSource, attributes: Map[String, Any]): String

    Renders the given template source using the current layoutStrategy

    Renders the given template source using the current layoutStrategy

    definition classes: TemplateEngine
  64. def layout(source: TemplateSource): String

    Renders the given template source using the current layoutStrategy

    Renders the given template source using the current layoutStrategy

    definition classes: TemplateEngine
  65. def layout(uri: String, template: Template): String

    definition classes: TemplateEngine
  66. def layout(uri: String, context: RenderContext): Unit

    definition classes: TemplateEngine
  67. def layout(uri: String, template: Template, attributes: Map[String, Any]): String

    Renders the given template returning the output

    Renders the given template returning the output

    definition classes: TemplateEngine
  68. def layout(uri: String, attributes: Map[String, Any] = scala.this.Predef.Map.apply[String, Nothing](), extraBindings: List[Binding] = immutable.this.Nil): String

    Renders the given template URI returning the output

    Renders the given template URI returning the output

    definition classes: TemplateEngine
  69. def layout(template: Template, context: RenderContext): Unit

    Renders the given template using the current layoutStrategy

    Renders the given template using the current layoutStrategy

    definition classes: TemplateEngine
  70. def layout(uri: String, context: RenderContext, extraBindings: List[Binding]): Unit

    Renders the given template URI using the current layoutStrategy

    Renders the given template URI using the current layoutStrategy

    definition classes: TemplateEngine
  71. def layoutAsNodes(uri: String, template: Template): NodeSeq

    definition classes: TemplateEngine
  72. def layoutAsNodes(uri: String, template: Template, attributes: Map[String, Any]): NodeSeq

    Renders the given template returning the output

    Renders the given template returning the output

    definition classes: TemplateEngine
  73. def layoutAsNodes(uri: String, attributes: Map[String, Any] = scala.this.Predef.Map.apply[String, Nothing](), extraBindings: List[Binding] = immutable.this.Nil): NodeSeq

    Renders the given template URI returning the output

    Renders the given template URI returning the output

    definition classes: TemplateEngine
  74. var layoutStrategy: LayoutStrategy

    definition classes: TemplateEngine
  75. def load(uri: String): Template

    Compiles and then caches the specified template.

    Compiles and then caches the specified template. If the template was previously cached, the previously compiled template instance is returned. The cache entry in invalidated and then template is re-compiled if the template file has been updated since it was last compiled.

    definition classes: TemplateEngine
  76. def load(uri: String, extraBindings: List[Binding]): Template

    Compiles and then caches the specified template.

    Compiles and then caches the specified template. If the template was previously cached, the previously compiled template instance is returned. The cache entry in invalidated and then template is re-compiled if the template file has been updated since it was last compiled.

    definition classes: TemplateEngine
  77. def load(file: File): Template

    Compiles and then caches the specified template.

    Compiles and then caches the specified template. If the template was previously cached, the previously compiled template instance is returned. The cache entry in invalidated and then template is re-compiled if the template file has been updated since it was last compiled.

    definition classes: TemplateEngine
  78. def load(file: File, extraBindings: List[Binding]): Template

    Compiles and then caches the specified template.

    Compiles and then caches the specified template. If the template was previously cached, the previously compiled template instance is returned. The cache entry in invalidated and then template is re-compiled if the template file has been updated since it was last compiled.

    definition classes: TemplateEngine
  79. def load(source: TemplateSource, extraBindings: List[Binding] = immutable.this.Nil): Template

    Compiles and then caches the specified template.

    Compiles and then caches the specified template. If the template was previously cached, the previously compiled template instance is returned. The cache entry in invalidated and then template is re-compiled if the template file has been updated since it was last compiled.

    definition classes: TemplateEngine
  80. def log: Log

    attributes: protected
    definition classes: Logging
  81. var mode: String

    definition classes: TemplateEngine
  82. def ne(arg0: AnyRef): Boolean

    o.ne(arg0) is the same as !(o.eq(arg0)).

    o.ne(arg0) is the same as !(o.eq(arg0)).

    arg0

    the object to compare against this object for reference dis-equality.

    returns

    false if the argument is not a reference to the receiver object; true otherwise.

    attributes: final
    definition classes: AnyRef
  83. def notify(): Unit

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Wakes up a single thread that is waiting on the receiver object's monitor.

    attributes: final
    definition classes: AnyRef
  84. def notifyAll(): Unit

    Wakes up all threads that are waiting on the receiver object's monitor.

    Wakes up all threads that are waiting on the receiver object's monitor.

    attributes: final
    definition classes: AnyRef
  85. def pipeline(source: TemplateSource): Option[List[Filter]]

    Gets a pipeline to use for the give uri string by looking up the uri's extension in the the pipelines map.

    Gets a pipeline to use for the give uri string by looking up the uri's extension in the the pipelines map.

    attributes: protected
    definition classes: TemplateEngine
  86. var pipelines: Map[String, List[Filter]]

    definition classes: TemplateEngine
  87. var resourceLoader: ResourceLoader

    Loads resources such as the templates based on URIs

    Loads resources such as the templates based on URIs

    definition classes: TemplateEngine
  88. def source(uri: String, templateType: String): TemplateSource

    Returns a template source of the given type of template for the given URI and current resourceLoader

    Returns a template source of the given type of template for the given URI and current resourceLoader

    definition classes: TemplateEngine
  89. def source(uri: String): TemplateSource

    Returns a template source for the given URI and current resourceLoader

    Returns a template source for the given URI and current resourceLoader

    definition classes: TemplateEngine
  90. var sourceDirectories: Traversable[File]

    definition classes: TemplateEngine
  91. def sourceDirectoriesForwarder: TraversableForwarder[File]

    A forwarder so we can refer to whatever the current latest value of sourceDirectories is even if the value is mutated after the TemplateEngine is constructed

    A forwarder so we can refer to whatever the current latest value of sourceDirectories is even if the value is mutated after the TemplateEngine is constructed

    attributes: protected
    definition classes: TemplateEngine
  92. def sourceDirectory: File

    definition classes: TemplateEngine
  93. def sourceFileName(uri: String): File

    Returns the source file of the template URI

    Returns the source file of the template URI

    attributes: protected
    definition classes: TemplateEngine
  94. val sourceMapLog: Log

    attributes: protected
    definition classes: TemplateEngine
  95. def storeSourceMap(classFile: File, sourceMap: String): Unit

    attributes: protected
    definition classes: TemplateEngine
  96. def synchronized[T0](arg0: T0): T0

    attributes: final
    definition classes: AnyRef
  97. var templateDirectories: List[String]

    A list of directories which are searched to load requested templates.

    A list of directories which are searched to load requested templates.

    definition classes: TemplateEngine
  98. def toString(): String

    Returns a string representation of the object.

    Returns a string representation of the object.

    The default representation is platform dependent.

    returns

    a string representation of the object.

    definition classes: TemplateEngine → AnyRef → Any
  99. def trace(e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  100. def trace(message: ⇒ String, e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  101. def trace(message: ⇒ String): Unit

    attributes: protected
    definition classes: Logging
  102. def uriToSource(uri: String): UriTemplateSource

    Creates a TemplateSource from a URI

    Creates a TemplateSource from a URI

    attributes: protected
    definition classes: TemplateEngine
  103. def wait(): Unit

    attributes: final
    definition classes: AnyRef
  104. def wait(arg0: Long, arg1: Int): Unit

    attributes: final
    definition classes: AnyRef
  105. def wait(arg0: Long): Unit

    attributes: final
    definition classes: AnyRef
  106. def warn(e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  107. def warn(message: ⇒ String, e: Throwable): Unit

    attributes: protected
    definition classes: Logging
  108. def warn(message: ⇒ String): Unit

    attributes: protected
    definition classes: Logging
  109. def workingDirectory: File

    If not explicitly configured this will default to using the scalate.workdir system property to specify the directory used for generating the scala source code and compiled bytecode - otherwise a temporary directory is used

    If not explicitly configured this will default to using the scalate.workdir system property to specify the directory used for generating the scala source code and compiled bytecode - otherwise a temporary directory is used

    definition classes: TemplateEngine
  110. def workingDirectory_=(value: File): Unit

    definition classes: TemplateEngine