Package: org.codehaus.groovy.grails.web.pages

## [Groovy] Class GroovyPageCompiler

- org.codehaus.groovy.grails.web.pages.GroovyPageCompiler

- Used to compile GSP files into a specified target directory.

  Authors:
    Graeme Rocher
  Since:
    1.2

- - ### Properties Summary

    Properties
    Type | Name and description
    --- | ---
    `groovy.lang.GroovyClassLoader` | `classLoader`
    `org.codehaus.groovy.control.CompilerConfiguration` | `compilerConfig`
    `java.lang.String` | `encoding`
    `java.io.File` | `generatedGroovyPagesDirectory`
    `GroovyPageInjectionOperation` | `operation`
    `java.lang.String` | `packagePrefix`
    `java.util.List<java.io.File>` | `srcFiles`
    `java.io.File` | `targetDir`
    `java.lang.String` | `viewPrefix`
    `java.io.File` | `viewsDir`

  - ### Methods Summary

    Methods
    Type | Name and description
    --- | ---
    `java.util.Map` | `compile()` Compiles the given GSP pages and returns a Map of URI to classname mappings
    `protected void` | `compileGSP(java.io.File viewsDir, java.io.File gspfile, java.lang.String viewPrefix, java.lang.String packagePrefix)` Compiles an individual GSP file
    `protected java.lang.Object` | `generateJavaName(java.lang.String str)`
    `protected java.lang.String` | `relativePath(java.io.File relbase, java.io.File file)`
    `void` | `setCompilerConfig(org.codehaus.groovy.control.CompilerConfiguration c)`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class java.lang.Object` | `java.lang.Object#wait(long, int), java.lang.Object#wait(long), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()`

- - ### Property Detail

    - #### groovy.lang.GroovyClassLoader classLoader

    - #### org.codehaus.groovy.control.CompilerConfiguration compilerConfig

    - #### java.lang.String encoding

    - #### java.io.File generatedGroovyPagesDirectory

    - #### GroovyPageInjectionOperation operation

    - #### java.lang.String packagePrefix

    - #### java.util.List<java.io.File> srcFiles

    - #### java.io.File targetDir

    - #### java.lang.String viewPrefix

    - #### java.io.File viewsDir

  - ### Method Detail

    - #### java.util.Map compile()

      Compiles the given GSP pages and returns a Map of URI to classname mappings

    - #### protected void compileGSP(java.io.File viewsDir, java.io.File gspfile, java.lang.String viewPrefix, java.lang.String packagePrefix)

      Compiles an individual GSP file

      Parameters:
        `viewsDir` - The base directory that contains the GSP view
        `gspfile` - The actual GSP file reference
        `viewPrefix` - The prefix to use for the path to the view
        `packagePrefix` - The package prefix to use which allows scoping for different applications and plugins

    - #### protected java.lang.Object generateJavaName(java.lang.String str)

    - #### protected java.lang.String relativePath(java.io.File relbase, java.io.File file)

    - #### void setCompilerConfig(org.codehaus.groovy.control.CompilerConfiguration c)