## groovy.lang
Class GroovyCodeSource

CodeSource wrapper class that allows specific security policies to be associated with a class compiled from groovy source.

author:
  Steve Goetze

Field Summary
`boolean` | `cachable`
`def` | `certs`
`CodeSource` | `codeSource`
`File` | `file`
`InputStream` | `inputStream`
`String` | `name`

Constructor Summary
`GroovyCodeSource(String script, String name, String codeBase)` The codeSource to be given the generated class.
`GroovyCodeSource(InputStream inputStream, String name, String codeBase)` Construct a GroovyCodeSource for an inputStream of groovyCode that has an unknown provenance -- meaning it didn't come from a File or a URL (e.g.
`GroovyCodeSource(File infile)`
`GroovyCodeSource(URL url)`

Method Summary
`CodeSource` | `getCodeSource()`
`File` | `getFile()`
`InputStream` | `getInputStream()`
`String` | `getName()`
`boolean` | `isCachable()`
`void` | `setCachable(boolean b)`

Constructor Detail

### GroovyCodeSource

    public GroovyCodeSource(String script, String name, String codeBase)

  The codeSource to be given the generated class. This can be used by policy file grants to administer security.

### GroovyCodeSource

    public GroovyCodeSource(InputStream inputStream, String name, String codeBase)

  Construct a GroovyCodeSource for an inputStream of groovyCode that has an unknown provenance -- meaning it didn't come from a File or a URL (e.g. a String). The supplied codeBase will be used to construct a File URL that should match up with a java Policy entry that determines the grants to be associated with the class that will be built from the InputStream. The permission groovy.security.GroovyCodeSourcePermission will be used to determine if the given codeBase may be specified. That is, the current Policy set must have a GroovyCodeSourcePermission that implies the codeBase, or an exception will be thrown. This is to prevent callers from hijacking existing codeBase policy entries unless explicitly authorized by the user.

### GroovyCodeSource

    public GroovyCodeSource(File infile)

### GroovyCodeSource

    public GroovyCodeSource(URL url)

Method Detail

### getCodeSource

    public CodeSource getCodeSource()

### getFile

    public File getFile()

### getInputStream

    public InputStream getInputStream()

### getName

    public String getName()

### isCachable

    public boolean isCachable()

### setCachable

    public void setCachable(boolean b)