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)