- Pods
- Efan Xtra 1.0.0
- API
- EfanTemplateDirectories
- Src
sourceafEfanXtra::EfanTemplateDirectories.fan
using afEfan::EfanErr
** (Service) - Contribute directories that may contain efan / slim templates.
**
** pre>
** using afEfanXtra::EfanTemplateDirectories
**
** ...
**
** @Contribute { serviceType=EfanTemplateDirectories# }
** static Void contributeefanDirs(MappedConfig config) {
** config.add(`etc/web/pages/`)
** }
** <pre
const mixin EfanTemplateDirectories {
** the list of contributed directories
abstract File[] templateDirs()
}
internal const class EfanTemplateDirectoriesImpl : EfanTemplateDirectories {
override const File[] templateDirs
new make(File[] templateDirs) {
templateDirs.each {
if (!it.isDir) // also called when file does not exist
throw EfanErr(ErrMsgs.templateDirIsNotDir(it))
}
this.templateDirs = templateDirs.toImmutable
}
}