Package groovy.lang

Class GroovyCodeSource

java.lang.Object
groovy.lang.GroovyCodeSource

public class GroovyCodeSource
extends java.lang.Object
CodeSource wrapper class that allows specific security policies to be associated with a class compiled from groovy source.
  • Constructor Summary

    Constructors
    Constructor Description
    GroovyCodeSource​(java.io.File infile)  
    GroovyCodeSource​(java.io.File infile, java.lang.String encoding)  
    GroovyCodeSource​(java.io.Reader reader, java.lang.String name, java.lang.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).
    GroovyCodeSource​(java.lang.String script, java.lang.String name, java.lang.String codeBase)  
    GroovyCodeSource​(java.net.URI uri)  
    GroovyCodeSource​(java.net.URL url)  
  • Method Summary

    Modifier and Type Method Description
    boolean equals​(java.lang.Object o)  
    java.security.CodeSource getCodeSource()  
    java.io.File getFile()  
    java.lang.String getName()  
    java.lang.String getScriptText()  
    java.net.URL getURL()  
    int hashCode()  
    boolean isCachable()  
    void setCachable​(boolean b)  

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • GroovyCodeSource

      public GroovyCodeSource​(java.lang.String script, java.lang.String name, java.lang.String codeBase)
    • GroovyCodeSource

      public GroovyCodeSource​(java.io.Reader reader, java.lang.String name, java.lang.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​(java.io.File infile, java.lang.String encoding) throws java.io.IOException
      Throws:
      java.io.IOException
    • GroovyCodeSource

      public GroovyCodeSource​(java.io.File infile) throws java.io.IOException
      Parameters:
      infile - the file to create a GroovyCodeSource for.
      Throws:
      java.io.IOException - if an issue arises opening and reading the file.
    • GroovyCodeSource

      public GroovyCodeSource​(java.net.URI uri) throws java.io.IOException
      Throws:
      java.io.IOException
    • GroovyCodeSource

      public GroovyCodeSource​(java.net.URL url)
  • Method Details

    • getCodeSource

      public java.security.CodeSource getCodeSource()
    • getScriptText

      public java.lang.String getScriptText()
    • getName

      public java.lang.String getName()
    • getFile

      public java.io.File getFile()
    • getURL

      public java.net.URL getURL()
    • setCachable

      public void setCachable​(boolean b)
    • isCachable

      public boolean isCachable()
    • equals

      public boolean equals​(java.lang.Object o)
      Overrides:
      equals in class java.lang.Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class java.lang.Object