/scalate-core/src/main/scala/org/fusesource/scalate/support/TemplateSources.scala

http://github.com/scalate/scalate · Scala · 54 lines · 26 code · 11 blank · 17 comment · 0 complexity · 889c9f3e34dda3b74e6726151763f7e1 MD5 · raw file

  1. /**
  2. * Copyright (C) 2009-2011 the original author or authors.
  3. * See the notice.md file distributed with this work for additional
  4. * information regarding copyright ownership.
  5. *
  6. * Licensed under the Apache License, Version 2.0 (the "License");
  7. * you may not use this file except in compliance with the License.
  8. * You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. */
  18. package org.fusesource.scalate.support
  19. import java.io.File
  20. import java.net.URL
  21. import org.fusesource.scalate.TemplateSource
  22. import org.fusesource.scalate.util._
  23. import scala.io.Source
  24. class StringTemplateSource(
  25. uri: String,
  26. text: String) extends StringResource(uri, text) with TemplateSource
  27. class UriTemplateSource(
  28. uri: String,
  29. resourceLoader: ResourceLoader) extends UriResource(uri, resourceLoader) with TemplateSource
  30. class FileTemplateSource(
  31. file: File,
  32. uri: String) extends FileResource(file, uri) with TemplateSource
  33. class URLTemplateSource(
  34. url: URL) extends URLResource(url) with TemplateSource
  35. class SourceTemplateSource(
  36. uri: String,
  37. source: Source) extends SourceResource(uri, source) with TemplateSource
  38. class CustomExtensionTemplateSource(
  39. source: TemplateSource,
  40. extensionName: String) extends DelegateResource with TemplateSource {
  41. override def templateType = Some(extensionName)
  42. def delegate = source
  43. }