Skip to content
Browse files

Groovy 2.1.0 (with additional GROOVY-5962 fix)

  • Loading branch information...
1 parent 0bab69c commit 7a1c2993df2875b60f89e7986f2c6e09f80f0f35 @aclement aclement committed Feb 1, 2013
Showing with 55,622 additions and 36 deletions.
  1. +2 −2 ...roovy.core.tests.builder/src/org/eclipse/jdt/core/groovy/tests/builder/BasicGroovyBuildTests.java
  2. +21 −13 ...t/org.eclipse.jdt.groovy.core.tests.compiler/src/org/eclipse/jdt/core/tests/util/GroovyUtils.java
  3. +11 −8 ...vy.core.tests.compiler/src/org/eclipse/jdt/groovy/core/tests/basic/FailingErrorRecoveryTests.java
  4. +15 −12 ....jdt.groovy.core.tests.compiler/src/org/eclipse/jdt/groovy/core/tests/basic/GroovySimpleTest.java
  5. +4 −1 ...ehaus.groovy.frameworkadapter/src/org/codehaus/groovy/frameworkadapter/util/SpecifiedVersion.java
  6. +20 −0 base/org.codehaus.groovy21/.classpath
  7. +2 −0 base/org.codehaus.groovy21/.gitignore
  8. +29 −0 base/org.codehaus.groovy21/.project
  9. +12 −0 base/org.codehaus.groovy21/.settings/org.eclipse.jdt.core.prefs
  10. +2 −0 base/org.codehaus.groovy21/.settings/org.eclipse.jdt.groovy.core.prefs
  11. +128 −0 base/org.codehaus.groovy21/META-INF/MANIFEST.MF
  12. +1 −0 base/org.codehaus.groovy21/META-INF/eclipse.inf
  13. +24 −0 base/org.codehaus.groovy21/VERSION
  14. +188 −0 base/org.codehaus.groovy21/about.html
  15. +13 −0 base/org.codehaus.groovy21/about_files/antlr2.txt
  16. +55 −0 base/org.codehaus.groovy21/about_files/asl-v20.txt
  17. +27 −0 base/org.codehaus.groovy21/about_files/asm.txt
  18. +33 −0 base/org.codehaus.groovy21/about_files/jline.txt
  19. +30 −0 base/org.codehaus.groovy21/build.properties
  20. +23 −0 base/org.codehaus.groovy21/conf/groovy-starter.conf
  21. +178 −0 base/org.codehaus.groovy21/customBuildCallbacks.xml
  22. BIN base/org.codehaus.groovy21/extras/groovyReset.jar
  23. BIN base/org.codehaus.groovy21/lib/antlr-2.7.7.jar
  24. BIN base/org.codehaus.groovy21/lib/asm-4.0.jar
  25. BIN base/org.codehaus.groovy21/lib/asm-tree-4.0.jar
  26. BIN base/org.codehaus.groovy21/lib/bsf-2.4.0.jar
  27. BIN base/org.codehaus.groovy21/lib/commons-cli-1.2.jar
  28. BIN base/org.codehaus.groovy21/lib/groovy-2.1.0-sources.jar
  29. BIN base/org.codehaus.groovy21/lib/groovy-2.1.0.jar
  30. BIN base/org.codehaus.groovy21/lib/groovy-all-2.1.0-sources.jar
  31. BIN base/org.codehaus.groovy21/lib/groovy-all-2.1.0.jar
  32. BIN base/org.codehaus.groovy21/lib/groovy-groovysh-2.1.0-sources.jar
  33. BIN base/org.codehaus.groovy21/lib/groovy-groovysh-2.1.0.jar
  34. BIN base/org.codehaus.groovy21/lib/groovy-swing-2.1.0-sources.jar
  35. BIN base/org.codehaus.groovy21/lib/groovy-swing-2.1.0.jar
  36. BIN base/org.codehaus.groovy21/lib/groovy-test-2.1.0-sources.jar
  37. BIN base/org.codehaus.groovy21/lib/groovy-test-2.1.0.jar
  38. BIN base/org.codehaus.groovy21/lib/groovy-xml-2.1.0-sources.jar
  39. BIN base/org.codehaus.groovy21/lib/groovy-xml-2.1.0.jar
  40. BIN base/org.codehaus.groovy21/lib/ivy-2.2.0.jar
  41. BIN base/org.codehaus.groovy21/lib/jline-1.0.jar
  42. BIN base/org.codehaus.groovy21/lib/servlet-api-2.4.jar
  43. +214 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/DSLD_meta_script.dsld
  44. +29 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/autoExternalize.dsld
  45. +104 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/bindable.dsld
  46. +60 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/groovy.dsld
  47. +59 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/groovy18.dsld
  48. +76 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/listenerList.dsld
  49. +52 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/logging.dsld
  50. +137 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/swing_builder.dsld
  51. +99 −0 base/org.codehaus.groovy21/plugin_dsld_support/dsld/vetoable.dsld
  52. +4 −0 base/org.codehaus.groovy21/plugin_dsld_support/readme.txt
  53. +36 −0 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/DefaultGroovyLogger.java
  54. +182 −0 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/GroovyLogManager.java
  55. +26 −0 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/IGroovyLogger.java
  56. +107 −0 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/LoggerTest.java
  57. +79 −0 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/TraceCategory.java
  58. +66 −0 base/org.codehaus.groovy21/src/groovy/transform/TypeChecked.java
  59. +62 −0 base/org.codehaus.groovy21/src/org/codehaus/greclipse/GroovyTokenTypeBridge.java
  60. +66 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/activator/GroovyActivator.java
  61. +3,824 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/AntlrParserPlugin.java
  62. +44 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/CSTParserPlugin.java
  63. +36 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/CSTParserPluginFactory.java
  64. +70 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/EnumHelper.java
  65. +174 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/ErrorRecoveredCSTParserPlugin.java
  66. +39 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/ErrorRecoveredCSTParserPluginFactory.java
  67. +43 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/ICSTReporter.java
  68. +141 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/LocationSupport.java
  69. +169 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/SourceBuffer.java
  70. +196 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/UnicodeEscapingReader.java
  71. +43 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/UnicodeUnescaper.java
  72. +4,695 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/groovy.g
  73. +3,892 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/parser/GroovyLexer.java
  74. +2,740 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/parser/GroovyLexer.smap
  75. +15,761 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/parser/GroovyRecognizer.java
  76. +11,168 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/parser/GroovyRecognizer.smap
  77. +244 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/parser/GroovyTokenTypes.java
  78. +228 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/antlr/parser/GroovyTokenTypes.txt
  79. +223 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ASTNode.java
  80. +46 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ASTNodeCompatibilityWrapper.java
  81. +140 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/AnnotatedNode.java
  82. +251 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ClassCodeVisitorSupport.java
  83. +408 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ClassHelper.java
  84. +1,672 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ClassNode.java
  85. +301 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/CodeVisitorSupport.java
  86. +238 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/Comment.java
  87. +203 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/CompileUnit.java
  88. +536 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/GenericsType.java
  89. +147 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/GroovyCodeVisitor.java
  90. +101 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ImmutableClassNode.java
  91. +186 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ImportNode.java
  92. +91 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ImportNodeCompatibilityWrapper.java
  93. +305 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/MethodNode.java
  94. +472 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/ModuleNode.java
  95. +68 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/TaskEntry.java
  96. +185 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/VariableScope.java
  97. +43 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/ast/expr/EmptyExpression.java
  98. +159 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/bsf/GroovyEngine.java
  99. +340 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/classgen/AnnotationVisitor.java
  100. +2,095 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/classgen/AsmClassGenerator.java
  101. +578 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/classgen/ClassCompletionVerifier.java
  102. +192 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/classgen/ExtendedVerifier.java
  103. +263 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/classgen/InnerClassVisitor.java
  104. +596 −0 base/org.codehaus.groovy21/src/org/codehaus/groovy/classgen/VariableScopeVisitor.java
Sorry, we could not display the entire diff because it was too big.
View
4 ...re.tests.builder/src/org/eclipse/jdt/core/groovy/tests/builder/BasicGroovyBuildTests.java
@@ -66,7 +66,7 @@ public BasicGroovyBuildTests(String name) {
public static Test suite() {
return buildTestSuite(BasicGroovyBuildTests.class);
- }
+ }
/**
* Testing that the classpath computation works for multi dependent
@@ -381,7 +381,7 @@ public void testNPEAnno_1398() throws Exception {
public void testCompileStatic_1505() throws Exception {
try {
if (GroovyUtils.GROOVY_LEVEL < 20) {
- return;
+ return;
}
IPath projectPath = env.addProject("Project","1.6"); //$NON-NLS-1$
env.addExternalJars(projectPath, Util.getJavaClassLibs());
View
34 ...lipse.jdt.groovy.core.tests.compiler/src/org/eclipse/jdt/core/tests/util/GroovyUtils.java
@@ -22,19 +22,23 @@
public class GroovyUtils {
static public final int GROOVY_LEVEL;
static {
- int groovyLevel = 20;
- URL groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.0.6.jar");
- if (groovyJar==null) {
- groovyLevel = 18;
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.8.6.jar");
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.7.10.jar");
- groovyLevel=17;
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.6.7.jar");
- groovyLevel=16;
- }
- }
+ int groovyLevel = 21;
+ URL groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.1.0.jar");
+ if (groovyJar == null) {
+ groovyLevel = 20;
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.0.6.jar");
+ if (groovyJar==null) {
+ groovyLevel = 18;
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.8.6.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.7.10.jar");
+ groovyLevel=17;
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.6.7.jar");
+ groovyLevel=16;
+ }
+ }
+ }
}
GROOVY_LEVEL = groovyLevel;
}
@@ -52,4 +56,8 @@ public static boolean isGroovy20() {
return GROOVY_LEVEL == 20;
}
+ public static boolean isGroovy21() {
+ return GROOVY_LEVEL == 21;
+ }
+
}
View
19 ...tests.compiler/src/org/eclipse/jdt/groovy/core/tests/basic/FailingErrorRecoveryTests.java
@@ -74,15 +74,18 @@ protected void tearDown() throws Exception {
String[] newcps = new String[cps.length+3];
System.arraycopy(cps,0,newcps,0,cps.length);
try {
- URL groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.0.6.jar");
+ URL groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.1.0.jar");
if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.8.6.jar");
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.7.10.jar");
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.6.7.jar");
- }
- }
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.0.6.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.8.6.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.7.10.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.6.7.jar");
+ }
+ }
+ }
}
newcps[newcps.length-1] = FileLocator.resolve(groovyJar).getFile();
URL asmJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/asm-4.0.jar");
View
27 ...ovy.core.tests.compiler/src/org/eclipse/jdt/groovy/core/tests/basic/GroovySimpleTest.java
@@ -100,17 +100,19 @@ protected void tearDown() throws Exception {
String[] newcps = new String[cps.length+3];
System.arraycopy(cps,0,newcps,0,cps.length);
try {
- URL groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry(
- "lib/groovy-2.0.6.jar");
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.8.6.jar");
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.7.10.jar");
- if (groovyJar==null) {
- groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.6.7.jar");
- }
- }
- }
+ URL groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.1.0.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-2.0.6.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.8.6.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.7.10.jar");
+ if (groovyJar==null) {
+ groovyJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/groovy-1.6.7.jar");
+ }
+ }
+ }
+ }
newcps[newcps.length-1] = FileLocator.resolve(groovyJar).getFile();
URL asmJar = Platform.getBundle("org.codehaus.groovy").getEntry("lib/asm-4.0.jar");
if (asmJar==null) {
@@ -4678,7 +4680,7 @@ public void testFailureWhilstAttemptingToReportError() {
},"----------\n" +
"1. ERROR in T.groovy (at line 3)\n" +
" this \"\"\n" +
- " ^\n" +
+ " ^^\n" +
"Groovy:Constructor call must be the first statement in a constructor. at line: 3 column: 8. File: T.groovy @ line 3, column 8.\n" +
"----------\n");
}
@@ -8833,6 +8835,7 @@ public void testTypeChecked2() {
if (GroovyUtils.GROOVY_LEVEL<20) {
return;
}
+
runNegativeTest(new String[]{
"Foo.groovy",
"import groovy.transform.TypeChecked\n"+
View
5 ...oovy.frameworkadapter/src/org/codehaus/groovy/frameworkadapter/util/SpecifiedVersion.java
@@ -20,7 +20,7 @@
import org.osgi.framework.Version;
public enum SpecifiedVersion {
- _16(1, 6, "16"), _17(1, 7, "17"), _18(1, 8, "18"), _19(1, 9, "19"), _20(2, 0, "20"), UNSPECIFIED(-1, -1, "0");
+ _16(1, 6, "16"), _17(1, 7, "17"), _18(1, 8, "18"), _19(1, 9, "19"), _20(2, 0, "20"), _21(2,1,"21"),UNSPECIFIED(-1, -1, "0");
public final int majorVersion;
public final int minorVersion;
public final String versionName;
@@ -60,6 +60,9 @@ public static SpecifiedVersion findVersionFromString(String compilerLevel) {
if ("20".equals(compilerLevel) || "2.0".equals(compilerLevel)) {
return _20;
}
+ if ("21".equals(compilerLevel) || "2.1".equals(compilerLevel)) {
+ return _21;
+ }
if ("0".equals(compilerLevel)) {
return UNSPECIFIED;
}
View
20 base/org.codehaus.groovy21/.classpath
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" output="bin-trace" path="src-trace"/>
+ <classpathentry exported="true" kind="lib" path="lib/groovy-2.1.0.jar" sourcepath="lib/groovy-2.1.0-sources.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/antlr-2.7.7.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/asm-4.0.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/asm-tree-4.0.jar"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry exported="true" kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry exported="true" kind="lib" path="lib/commons-cli-1.2.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/bsf-2.4.0.jar"/>
+ <classpathentry kind="lib" path="lib/ivy-2.2.0.jar"/>
+ <classpathentry exported="true" kind="con" path="GROOVY_DSL_SUPPORT"/>
+ <classpathentry exported="true" kind="lib" path="lib/groovy-swing-2.1.0.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/groovy-xml-2.1.0.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/groovy-groovysh-2.1.0.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/groovy-test-2.1.0.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
View
2 base/org.codehaus.groovy21/.gitignore
@@ -0,0 +1,2 @@
+/bin
+/bin-trace
View
29 base/org.codehaus.groovy21/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.codehaus.groovy21</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.groovy.core.groovyNature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
View
12 base/org.codehaus.groovy21/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,12 @@
+#Sat Oct 04 20:16:40 CDT 2008
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
View
2 base/org.codehaus.groovy21/.settings/org.eclipse.jdt.groovy.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+groovy.compiler.level=20
View
128 base/org.codehaus.groovy21/META-INF/MANIFEST.MF
@@ -0,0 +1,128 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Groovy Runtime Plug-in
+Bundle-SymbolicName: org.codehaus.groovy
+Bundle-Version: 2.1.0.qualifier
+Bundle-ClassPath: groovy-eclipse.jar,
+ lib/asm-4.0.jar,
+ lib/asm-tree-4.0.jar,
+ lib/antlr-2.7.7.jar,
+ lib/ivy-2.2.0.jar,
+ lib/commons-cli-1.2.jar,
+ lib/bsf-2.4.0.jar,
+ lib/groovy-2.1.0.jar,
+ eclipse-trace.jar,
+ lib/groovy-groovysh-2.1.0.jar,
+ lib/groovy-swing-2.1.0.jar,
+ lib/groovy-xml-2.1.0.jar,
+ lib/groovy-test-2.1.0.jar
+Groovy-Runtime-Jars: groovy.jar
+Export-Package: antlr,
+ antlr.ASdebug,
+ antlr.actions.cpp,
+ antlr.actions.csharp,
+ antlr.actions.java,
+ antlr.actions.python,
+ antlr.build,
+ antlr.collections,
+ antlr.collections.impl,
+ antlr.debug,
+ antlr.debug.misc,
+ antlr.preprocessor,
+ groovy.beans,
+ groovy.grape,
+ groovy.inspect,
+ groovy.inspect.swingui,
+ groovy.io,
+ groovy.lang,
+ groovy.model,
+ groovy.security,
+ groovy.swing,
+ groovy.swing.binding,
+ groovy.swing.factory,
+ groovy.swing.impl,
+ groovy.test,
+ groovy.time,
+ groovy.transform,
+ groovy.ui,
+ groovy.util,
+ groovy.util.logging,
+ groovy.util.slurpersupport,
+ groovy.xml,
+ groovy.xml.dom,
+ groovy.xml.streamingmarkupsupport,
+ org.apache.bsf,
+ org.apache.bsf.engines.jacl,
+ org.apache.bsf.engines.javascript,
+ org.apache.bsf.engines.jython,
+ org.apache.bsf.engines.netrexx,
+ org.apache.bsf.engines.xslt,
+ org.apache.bsf.util,
+ org.apache.bsf.util.cf,
+ org.apache.bsf.util.event,
+ org.apache.bsf.util.event.adapters,
+ org.apache.bsf.util.event.generator,
+ org.apache.bsf.util.type,
+ org.apache.commons.cli,
+ org.codehaus.greclipse,
+ org.codehaus.groovy,
+ org.codehaus.groovy.activator,
+ org.codehaus.groovy.antlr,
+ org.codehaus.groovy.antlr.java,
+ org.codehaus.groovy.antlr.parser,
+ org.codehaus.groovy.antlr.treewalker,
+ org.codehaus.groovy.ast,
+ org.codehaus.groovy.ast.builder,
+ org.codehaus.groovy.ast.expr,
+ org.codehaus.groovy.ast.stmt,
+ org.codehaus.groovy.ast.tools,
+ org.codehaus.groovy.binding,
+ org.codehaus.groovy.bsf,
+ org.codehaus.groovy.classgen,
+ org.codehaus.groovy.classgen.asm,
+ org.codehaus.groovy.classgen.asm.sc,
+ org.codehaus.groovy.control,
+ org.codehaus.groovy.control.customizers,
+ org.codehaus.groovy.control.io,
+ org.codehaus.groovy.control.messages,
+ org.codehaus.groovy.eclipse,
+ org.codehaus.groovy.reflection,
+ org.codehaus.groovy.reflection.stdclasses,
+ org.codehaus.groovy.runtime,
+ org.codehaus.groovy.runtime.callsite,
+ org.codehaus.groovy.runtime.dgmimpl,
+ org.codehaus.groovy.runtime.dgmimpl.arrays,
+ org.codehaus.groovy.runtime.memoize,
+ org.codehaus.groovy.runtime.metaclass,
+ org.codehaus.groovy.runtime.powerassert,
+ org.codehaus.groovy.runtime.typehandling,
+ org.codehaus.groovy.runtime.wrappers,
+ org.codehaus.groovy.syntax,
+ org.codehaus.groovy.tools,
+ org.codehaus.groovy.tools.ast,
+ org.codehaus.groovy.tools.gse,
+ org.codehaus.groovy.tools.javac,
+ org.codehaus.groovy.tools.shell,
+ org.codehaus.groovy.tools.shell.commands,
+ org.codehaus.groovy.tools.shell.util,
+ org.codehaus.groovy.tools.xml,
+ org.codehaus.groovy.transform,
+ org.codehaus.groovy.transform.sc,
+ org.codehaus.groovy.transform.sc.transformers,
+ org.codehaus.groovy.transform.stc,
+ org.codehaus.groovy.util,
+ org.codehaus.groovy.vmplugin,
+ org.codehaus.groovy.vmplugin.v5,
+ org.codehaus.groovy.vmplugin.v6,
+ org.objectweb.asm,
+ org.objectweb.asm.signature,
+ org.objectweb.asm.tree
+Require-Bundle: org.apache.ant,
+ org.junit,
+ org.eclipse.core.runtime
+Bundle-Vendor: Codehaus.org
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Activator: org.codehaus.groovy.activator.GroovyActivator
+Eclipse-BuddyPolicy: registered
+Eclipse-BundleShape: dir
View
1 base/org.codehaus.groovy21/META-INF/eclipse.inf
@@ -0,0 +1 @@
+jarprocessor.exclude.children=true
View
24 base/org.codehaus.groovy21/VERSION
@@ -0,0 +1,24 @@
+04-Aug-09: groovy 1.7beta1 tag17153
+13-Oct-09: groovy 1.7beta2 tag17962
+28-Nov-09: groovy 1.7rc1 tag18436
+23-Dec-09: groovy 1.7.0
+07-Apr-10: groovy 1.7.2 tag19775
+14-Jun-10: groovy 1.7.3 tag20280
+22-Sep-10: groovy 1.7.5 tag20761
+06-Feb-11: groovy 1.7.7 tag21482
+16-Feb-11: groovy 1.7.8 tag21550
+16-Mar-11: groovy 1.8.0-rc-2 tag21780
+04-May-11: groovy 1.8.0 tag22084
+29-Jul-11: groovy 1.8.1 tag22643
+06-Sep-11: groovy 1.8.2 git tag
+13-Oct-11: groovy 1.8.3
+14-Nov-11: groovy 1.8.4
+26-Jan-12: groovy 1.8.5
+13-Feb-12: groovy 1.8.6
+
+10-Apr-12: took groovy 2.0.0 beta3 snapshot dated 10April and moved to it - as first go at 2.0 support
+28-Jun-12: groovy 2.0.0
+21-Sep-12: groovy 2.0.4
+18-Dec-12: groovy 2.0.6
+
+1-Feb-13: groovy 2.1.0
View
188 base/org.codehaus.groovy21/about.html
@@ -0,0 +1,188 @@
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<html>
+<head>
+<title>About</title>
+</head>
+<body>
+<h2>About This Content</h2>
+
+<p>September 20, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party ("Redistributor") and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+<h3>Third Party Content</h3>
+
+
+<h4>antlr-2.7.7.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://www.antlr2.org/download/antlr-2.7.7.jar">http://www.antlr2.org/download/antlr-2.7.7.jar</a></li>
+<li>Sources available at: <a href="http://www.antlr2.org/download/antlr-2.7.7.tar.gz">http://www.antlr2.org/download/antlr-2.7.7.tar.gz</a></li>
+<li>License kind: BSD</li>
+<li>License URL: <a href="http://www.antlr.org/license.html">http://www.antlr.org/license.html</a></li>
+<li>License text: <a href="about_files/antlr2.txt">about_files/antlr2.txt</a></li>
+</ul>
+
+<h4>asm-4.0.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://forge.ow2.org/project/download.php?group_id=23&file_id=17184">http://forge.ow2.org/project/download.php?group_id=23&file_id=17184</a></li>
+<li>Sources available at: <a href="http://forge.ow2.org/project/download.php?group_id=23&file_id=17185">http://forge.ow2.org/project/download.php?group_id=23&file_id=17185</a></li>
+<li>License kind: BSD</li>
+<li>License URL: <a href="http://websvn.ow2.org/filedetails.php?repname=asm&path=%2Ftrunk%2Fasm%2FLICENSE.txt">http://websvn.ow2.org/filedetails.php?repname=asm&path=%2Ftrunk%2Fasm%2FLICENSE.txt</a></li>
+<li>License text: <a href="about_files/asm.txt">about_files/asm.txt</a></li>
+</ul>
+
+<h4>asm-tree-3.2.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://repo1.maven.org/maven2/asm/asm-tree/4.0/asm-tree-4.0.jar">http://repo1.maven.org/maven2/asm/asm-tree/4.0/asm-tree-4.0.jar</a></li>
+<li>Sources available at: <a href="http://forge.ow2.org/project/download.php?group_id=23&file_id=17185">http://forge.ow2.org/project/download.php?group_id=23&file_id=17185</a></li>
+<li>License kind: BSD</li>
+<li>License URL: <a href="http://websvn.ow2.org/filedetails.php?repname=asm&path=%2Ftrunk%2Fasm%2FLICENSE.txt">http://websvn.ow2.org/filedetails.php?repname=asm&path=%2Ftrunk%2Fasm%2FLICENSE.txt</a></li>
+<li>License text: <a href="about_files/asm.txt">about_files/asm.txt</a></li>
+</ul>
+
+
+
+<h4>bsf-2.4.0.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://apache.sunsite.ualberta.ca//commons/bsf/binaries/bsf-bin-2.4.0.zip">http://apache.sunsite.ualberta.ca//commons/bsf/binaries/bsf-bin-2.4.0.zip</a></li>
+<li>Sources available at: <a href="http://apache.sunsite.ualberta.ca//commons/bsf/source/bsf-src-2.4.0.zip">http://apache.sunsite.ualberta.ca//commons/bsf/source/bsf-src-2.4.0.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+
+<h4>commons-cli-1.2.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://apache.sunsite.ualberta.ca//commons/cli/binaries/commons-cli-1.2-bin.zip">http://apache.sunsite.ualberta.ca//commons/cli/binaries/commons-cli-1.2-bin.zip</a></li>
+<li>Sources available at: <a href="http://apache.sunsite.ualberta.ca//commons/cli/source/commons-cli-1.2-src.zip"></a>http://apache.sunsite.ualberta.ca//commons/cli/source/commons-cli-1.2-src.zip</li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-2.0.6-sources.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>Sources available at: This jar is a source jar</li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-2.0.6.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip</a></li>
+<li>Sources available at: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+
+<h4>groovy-all-2.0.6-sources.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>Sources available at: This jar is a source jar</li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-all-2.0.6.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip</a></li>
+<li>Sources available at: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-groovysh-2.0.6.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip</a></li>
+<li>Sources available at: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-swing-2.0.6.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip</a></li>
+<li>Sources available at: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-test-2.0.6.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip</a></li>
+<li>Sources available at: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>groovy-xml-2.0.6.jar</h4>
+<ul>
+<li>Obtained from: <a href="http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-binary-2.0.6.zip</a></li>
+<li>Sources available at: <a href="http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip">http://dist.groovy.codehaus.org/distributions/groovy-src-2.0.6.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>ivy-2.2.0.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://archive.apache.org/dist/ant/ivy/2.2.0/apache-ivy-2.2.0-bin.zip">http://archive.apache.org/dist/ant/ivy/2.2.0/apache-ivy-2.2.0-bin.zip</a></li>
+<li>Sources available at: <a href="http://archive.apache.org/dist/ant/ivy/2.2.0/apache-ivy-2.2.0-src.zip">http://archive.apache.org/dist/ant/ivy/2.2.0/apache-ivy-2.2.0-src.zip</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+<h4>jline-1.0.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://sourceforge.net/projects/jline/files/jline/1.0/jline-1.0.zip/download">http://sourceforge.net/projects/jline/files/jline/1.0/jline-1.0.zip/download</a></li>
+<li>Sources available at: <a href="http://sourceforge.net/projects/jline/files/jline/1.0/jline-1.0.zip/download">http://sourceforge.net/projects/jline/files/jline/1.0/jline-1.0.zip/download</a></li>
+<li>License kind: BSD</li>
+<li>License URL: <a href="http://www.opensource.org/licenses/bsd-license.php">http://www.opensource.org/licenses/bsd-license.php</a></li>
+<li>License text: <a href="about_files/jline.txt">about_files/jline.txt</a></li>
+</ul>
+
+
+<h4>servlet-api-2.4.jar</h4>
+
+<ul>
+<li>Obtained from: <a href="http://www.jarvana.com/jarvana/archive-details/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar">http://www.jarvana.com/jarvana/archive-details/javax/servlet/servlet-api/2.4/servlet-api-2.4.jar</a></li>
+<li>Sources available at: <a href="http://www.jarvana.com/jarvana/archive-details/javax/servlet/servlet-api/2.4/servlet-api-2.4-sources.jar">http://www.jarvana.com/jarvana/archive-details/javax/servlet/servlet-api/2.4/servlet-api-2.4-sources.jar</a></li>
+<li>License kind: ASL</li>
+<li>License URL: <a href="http://www.apache.org/licenses/LICENSE-2.0.html">http://www.apache.org/licenses/LICENSE-2.0.html</a></li>
+<li>License text: <a href="about_files/asl-v20.txt">asl-v20.txt</a></li>
+</ul>
+
+
+</body>
+</html>
View
13 base/org.codehaus.groovy21/about_files/antlr2.txt
@@ -0,0 +1,13 @@
+ ANTLR 3 License
+
+[The BSD License]
+Copyright (c) 2010 Terence Parr
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+ Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+ Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+ Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
View
55 base/org.codehaus.groovy21/about_files/asl-v20.txt
@@ -0,0 +1,55 @@
+Apache License
+Version 2.0, January 2004
+http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+"License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
+
+"Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
+
+"Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
+
+"You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
+
+"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
+
+"Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
+
+"Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
+
+"Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
+
+"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."
+
+"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
+
+2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
+
+ You must give any other recipients of the Work or Derivative Works a copy of this License; and
+
+ You must cause any modified files to carry prominent notices stating that You changed the files; and
+
+ You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
+
+ If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
+
+You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
+
+5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
+
+END OF TERMS AND CONDITIONS
View
27 base/org.codehaus.groovy21/about_files/asm.txt
@@ -0,0 +1,27 @@
+ASM: a very small and fast Java bytecode manipulation framework
+ Copyright (c) 2000-2011 INRIA, France Telecom
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ 3. Neither the name of the copyright holders nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ THE POSSIBILITY OF SUCH DAMAGE.
View
33 base/org.codehaus.groovy21/about_files/jline.txt
@@ -0,0 +1,33 @@
+Copyright (c) 2002-2006, Marc Prud'hommeaux <mwp1@cornell.edu>
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or
+without modification, are permitted provided that the following
+conditions are met:
+
+Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+
+Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with
+the distribution.
+
+Neither the name of JLine nor the names of its contributors
+may be used to endorse or promote products derived from this
+software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
+BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
+OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
+IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+OF THE POSSIBILITY OF SUCH DAMAGE.
+
View
30 base/org.codehaus.groovy21/build.properties
@@ -0,0 +1,30 @@
+bin.includes = META-INF/,\
+ groovy-eclipse.jar,\
+ lib/,\
+ conf/,\
+ eclipse-trace.jar,\
+ plugin_dsld_support/,\
+ extras/,\
+ lib/groovy-groovysh-2.1.0.jar,\
+ lib/groovy-swing-2.1.0.jar,\
+ lib/groovy-xml-2.1.0.jar,\
+ lib/groovy-test-2.1.0.jar,\
+ about_files/,\
+ VERSION,\
+ about.html
+src.includes = about.html,\
+ about_files/,\
+ VERSION
+jars.compile.order = eclipse-trace.jar,\
+ groovy-eclipse.jar
+output.groovy-eclipse.jar = bin/
+source.groovy-eclipse.jar = src/
+output.eclipse-trace.jar = bin-trace/
+source.eclipse-trace.jar = src-trace/
+
+#customBuildCallbacks=customBuildCallbacks.xml
+
+sourceFileExtensions=*.java, *.groovy
+compilerAdapter=org.codehaus.groovy.eclipse.ant.GroovyCompilerAdapter
+compilerAdapter.useLog=true
+compilerArg=-nowarn
View
23 base/org.codehaus.groovy21/conf/groovy-starter.conf
@@ -0,0 +1,23 @@
+##############################################################################
+## ##
+## Groovy Classloading Configuration ##
+## ##
+##############################################################################
+
+##
+## $Revision: 9225 $ $Date: 2007-11-16 06:17:45 +1000 (Fri, 16 Nov 2007) $
+##
+## Note: do not add classes from java.lang here. No rt.jar and on some
+## platforms no tools.jar
+##
+## See http://groovy.codehaus.org/api/org/codehaus/groovy/tools/LoaderConfiguration.html
+## for the file format
+
+ # load required libraries
+ load !{groovy.home}/lib/*.jar
+
+ # load user specific libraries
+ load !{user.home}/.groovy/lib/*.jar
+
+ # tools.jar for ant tasks
+ load ${tools.jar}
View
178 base/org.codehaus.groovy21/customBuildCallbacks.xml
@@ -0,0 +1,178 @@
+<!--
+ Copyright 2003-2009 the original author or authors.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<!-- ===================================================================== -->
+<!-- Custom targets called from a project's generated build.xml -->
+<!-- Set customBuildCallbacks=<path/to/this/file> in your build.properties.-->
+<!-- ===================================================================== -->
+<project name="Build specific targets and properties" default="noDefault">
+
+ <!-- ===================================================================== -->
+ <!-- Default target -->
+ <!-- ===================================================================== -->
+ <target name="noDefault">
+ <echo message="This file must be called with explicit targets" />
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the target build.jars -->
+ <!-- Available parameters : -->
+ <!-- build.result.folder - folder to contain the build results -->
+ <!-- ===================================================================== -->
+ <target name="pre.build.jars">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the target build.jars -->
+ <!-- Available parameters : -->
+ <!-- build.result.folder - folder to contain the build results -->
+ <!-- ===================================================================== -->
+ <target name="post.build.jars">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the target build.sources -->
+ <!-- Available parameters : -->
+ <!-- build.result.folder - folder to contain the build results -->
+ <!-- ===================================================================== -->
+ <target name="pre.build.sources">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the target build.sources -->
+ <!-- Available parameters : -->
+ <!-- build.result.folder - folder to contain the build results -->
+ <!-- ===================================================================== -->
+ <target name="post.build.sources">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the compilation target <name> -->
+ <!-- Substitute "name" with the name of the compilation target, eg @dot -->
+ <!-- Available parameters : -->
+ <!-- source.foldern : n = 1 ... N, the source folders -->
+ <!-- target.folder : where the results of the compilation go -->
+ <!-- <name>.classpath : name = name of the compilation target. A -->
+ <!-- reference to the classpath structure. -->
+ <!-- ===================================================================== -->
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do during the compilation target <name>, after the compile -->
+ <!-- but before jaring. Substitute "name" with the name of the compilation-->
+ <!-- target, eg @dot -->
+ <!-- Available parameters : -->
+ <!-- source.foldern : n = 1 ... N, the source folders -->
+ <!-- target.folder : where the results of the compilation go -->
+ <!-- <name>.classpath : name = name of the compilation target. A -->
+ <!-- reference to the classpath structure. -->
+ <!-- ===================================================================== -->
+ <property name="temp.folder" value="${basedir}/temp.folder"/>
+ <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter"/>
+ <property name="compilerArg" value=""/>
+ <target name="pre.@dot">
+ <groovy.jdtcompile destdir="${temp.folder}/@dot.bin" failonerror="true" nowarn="true" verbose="false" debug="true" includeAntRuntime="no" source="1.5" target="1.5" >
+ <compilerarg line="${compilerArg}" compiler="${build.compiler}"/>
+ <classpath refid="@dot.classpath" />
+ <src path="src/" />
+ <compilerarg value="@${basedir}/javaCompiler...args" compiler="org.eclipse.jdt.core.JDTCompilerAdapter"/>
+ <compilerarg line="-log '${temp.folder}/@dot.bin.log'" compiler="org.eclipse.jdt.core.JDTCompilerAdapter"/>
+ </groovy.jdtcompile>
+ </target>
+
+ <target name="post.compile.@dot">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the compilation target <name> -->
+ <!-- Substitute "name" with the name of the compilation target, eg @dot -->
+ <!-- Available parameters : -->
+ <!-- jar.location - the location of the compilation results -->
+ <!-- <name>.classpath : name = name of the compilation target. A -->
+ <!-- reference to the classpath structure. -->
+ <!-- ===================================================================== -->
+ <target name="post.name">
+ </target>
+
+ <target name="post.@dot">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the target gather.bin.parts -->
+ <!-- Available parameters : -->
+ <!-- build.result.folder - folder containing the build results -->
+ <!-- target.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="pre.gather.bin.parts">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the target gather.bin.parts -->
+ <!-- Available parameters : -->
+ <!-- build.result.folder - folder containing the build results -->
+ <!-- target.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="post.gather.bin.parts">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the target gather.sources -->
+ <!-- Available parameters : -->
+ <!-- destination.temp.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="pre.gather.sources">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the target gather.sources -->
+ <!-- Available parameters : -->
+ <!-- destination.temp.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="post.gather.sources">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the target gather.logs -->
+ <!-- Available parameters : -->
+ <!-- destination.temp.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="pre.gather.logs">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the target gather.logs -->
+ <!-- Available parameters : -->
+ <!-- destination.temp.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="post.gather.logs">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do before the target clean -->
+ <!-- Available parameters : -->
+ <!-- destination.temp.folder - destination folder -->
+ <!-- ===================================================================== -->
+ <target name="pre.clean">
+ </target>
+
+ <!-- ===================================================================== -->
+ <!-- Steps to do after the target clean -->
+ <!-- Available parameters : -->
+ <!-- plugin.destination - final destination of the build -->
+ <!-- build.result.folder - results of the compilation -->
+ <!-- temp.folder - temporary folder -->
+ <!-- ===================================================================== -->
+ <target name="post.clean">
+ </target>
+</project>
View
BIN base/org.codehaus.groovy21/extras/groovyReset.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/antlr-2.7.7.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/asm-4.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/asm-tree-4.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/bsf-2.4.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/commons-cli-1.2.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-2.1.0-sources.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-2.1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-all-2.1.0-sources.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-all-2.1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-groovysh-2.1.0-sources.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-groovysh-2.1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-swing-2.1.0-sources.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-swing-2.1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-test-2.1.0-sources.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-test-2.1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-xml-2.1.0-sources.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/groovy-xml-2.1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/ivy-2.2.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/jline-1.0.jar
Binary file not shown.
View
BIN base/org.codehaus.groovy21/lib/servlet-api-2.4.jar
Binary file not shown.
View
214 base/org.codehaus.groovy21/plugin_dsld_support/dsld/DSLD_meta_script.dsld
@@ -0,0 +1,214 @@
+/*
+ * Copyright 2011 SpringSource
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package dsld
+
+import org.codehaus.groovy.ast.ASTNode
+import org.codehaus.groovy.ast.ClassNode
+import org.codehaus.groovy.ast.expr.MapEntryExpression
+
+/**
+ * This is the meta DSL descriptor for *.dsld files.
+ *
+ * @author Andrew Eisenberg
+ * @since 2.5.1
+ */
+
+// first thing to do is to check that versions are correct
+// for this script to be evaluated any further, all conditions must be met
+// also supports grailsTooling and sts, which are synonyms and correspond to the STS version eg- 2.6.0
+// we can add more version checking on request
+supportsVersion(groovy:"1.7.10",groovyEclipse:"2.5.1")
+
+interface IPointcut {
+ /**
+ * Accepts a contribution group to this Pointcut. What this means
+ * is that whenever this pointcut evaluates to a match, then the
+ * contribution group is evaluated with the bindings that have
+ * been generated from the pointcut match
+ *
+ * @param group the contribution group to accept
+ *
+ * @deprecated Use <code>contribution(<pointcut_expression>)</code> instead
+ */
+ @Deprecated
+ def accept(Closure group);
+}
+
+
+// You can store shared pointcuts in a variable
+// This particular pointcut matches all join points that are inside of a
+// groovy project and inside a file with a *.dsld extension and are scripts
+def dsldFile = nature("org.eclipse.jdt.groovy.core.groovyNature") & fileExtension("dsld") & isScript()
+
+// You can also create a closure around pointcuts and assign them to
+// a variable. Note that when using these variables, you must include parens.
+def insideContribution = { (enclosingCallName("accept") | enclosingCallName("contribute")) & inClosure() }
+
+// Ensure that the 'accept' method is available for all closures and variables that correspond to pointcuts
+(dsldFile & ( ~ insideContribution() ) & ( ~currentType(subType(Script)) )).accept { delegatesTo IPointcut }
+
+// here we store all bound names inside of the wormhole so that they can be available later
+(dsldFile & enclosingCallDeclaringType(subType(Script)) & (~ enclosingCallName("supportsVersion")) &
+ ( ~ inClosure() ) & bind(var : currentIdentifier())).accept {
+ if (enclosingNode instanceof MapEntryExpression &&
+ var.contains(((MapEntryExpression) enclosingNode).keyExpression)) {
+ def bindings = wormhole.bindings
+ if (!bindings) {
+ bindings = [ ]
+ wormhole.bindings = bindings
+ }
+ var.each { bindings << it.text }
+ }
+ }
+
+// Define the kinds of pointcuts
+// note the different ways of calling the two composite pointcuts
+// Also, be careful to use parens around negation '~' since operator precedence may make the '~' apply to the call to 'accept'
+(dsldFile & ( ~ insideContribution() ) & currentType(subType(Script)) & (~enclosingCallName("registerPointcut")) &
+ isThisType()).accept {
+ provider = "the meta-DSLD script"
+
+ // in here, we can list all pointcuts explicitly, or we can access the internal PointcutFactory object
+ // A little bit naughty, but this is the easiest way to maintain consistency with all possible pointcuts
+ // ...the PointcutFactory class is a secret class that is declared by groovy-eclipse
+ // Yes, you can use many Eclipse classes here. The editor won't like them, so they must be fully qualified
+ // and you cannot import them or use them as types for variables
+
+ Map<String, String> pointcutNames = org.codehaus.groovy.eclipse.dsl.script.PointcutFactory.docRegistry
+ pointcutNames.each { pointcutName, pointcutDoc ->
+ method name : pointcutName, type: IPointcut, params : [pointcutArg : Object], doc : pointcutDoc,
+ isDeprecated : org.codehaus.groovy.eclipse.dsl.script.PointcutFactory.deprecatedRegistry.contains(pointcutName)
+ }
+
+ method name : "contribute", type : void, params : [pointcut : IPointcut, contributionBlock : Closure],
+ doc : "Associates a pointcut expression with a contribution block."
+
+ method name : "supportsVersion", type : void, params : [versionKindToName : Map.class ],
+ doc : '''Specifies that this script is only active when the specified version constraints are met.
+ Currently, only 3 constraints are available: groovy, groovyEclipse, sts, and grailsTooling.<br><br>
+ Use like this:
+ <pre>supportsVersion(groovy:"1.7.10",groovyEclipse:"2.1.3")</pre>
+ This means that the current scipt requires <b>both</b> Groovy 1.7.10 or later and Groovy-Eclipse 2.1.3 or later'''
+
+ method name : "registerPointcut", type : void, params : [name : String, pointcutBody : Closure],
+ doc : '''
+ Registers a custom pointcut. This pointcut is only available from within the current script.
+ You must specify a name for the pointcut as well as a closure that evaluates whether or not there is a match'''
+
+ property name : "log", type: void, doc: "Logs a message to the Groovy Event Console. Useful for debugging."
+ }
+
+// Here, specify everything that can be used inside of an accept block (also called a Contribution Group)
+(dsldFile & insideContribution()).accept {
+ provider = "the meta-DSLD script"
+ property name : "provider", type : String, doc : """Specifies a <em>Provider</em> for the current contribution.
+ This provider is displayed during content assist and in other places to give a quick hint as to where this
+ contribution elementcomes from."""
+ method name : "property",
+ namedParams : [
+ name : String,
+ type : Object,
+ isStatic : boolean],
+ optionalParams : [
+ declaringType : Object,
+ provider: String,
+ isDeprecated: Boolean,
+ isStatic: Boolean,
+ doc : String],
+ doc : """
+ Specifies a new property contribution. <b>name</b> is mandatory, but all other parameters are optional.
+ """
+
+ method name : "method",
+ namedParams : [
+ name : String,
+ type : Object,
+ params : Map],
+ optionalParams : [
+ optionalParams : Map,
+ namedParams : Map,
+ isStatic : boolean,
+ declaringType : Object,
+ provider: String,
+ isDeprecated: Boolean,
+ doc : String],
+ doc : """
+ Specifies a new property contribution. <b>name</b> is mandatory, but all other parameters are optional.
+ Use <code>namedParams</code> to specify parameters that should be named, and use <code>optionalParams</code>
+ to specify parameters that will not appear in content assist.
+ """
+
+// method name : "delegatesTo", params : [ type : Object ], doc : """
+// Specify that the currentType delegates to the given type. The currentType is the type being analyzed.
+// And the given type is specified as a parameter (either a String, Class, AnnotatedNode). All
+// methods of the given type will be available from the currentType.
+// """
+ method name : "delegatesToCategory", isDeprecated:true, params : [ type : Object ], doc : """
+ Specify that the currentType delegates to the given type. The currentType is the type being analyzed.
+ And the given type is specified as a parameter (either a String, Class, AnnotatedNode). All
+ methods of the given type will be available from the currentType.
+ """
+ method name : "delegatesToUseNamedArgs", isDeprecated:true, params : [ type : Object ], doc : """
+ Specify that the currentType delegates to the given type. The currentType is the type being analyzed.
+ And the given type is specified as a parameter (either a String, Class, or ClassNode). All fields and
+ methods of the given type will be available from the currentType.<br/><br/>
+ Named arguments will be used for all methods.
+ """
+
+ method name : "delegatesTo", namedParams : [type : Object], optionalParams : [useNamed: Boolean,
+ except: 'java.util.List<java.lang.String>', asCategory:Boolean], doc : """
+ Specify that the currentType delegates to the given type. The currentType is the type being analyzed.
+ And the given type is specified as a parameter (either a String, Class, or ClassNode). All fields and
+ methods of the given type will be available from the currentType.<br/><br/>
+ This variant allows you to specify options through the optional arguments.
+ @param type (required) type to delegate to
+ @param except (optional) list of method names to exclude from the delegation
+ @param useNamed (optional) boolean and if true named arguments are used
+ @param asCategory (optional) boolean and if true, this delegation is treated as a category and the
+ first parameter of each method is used to see if it is applicable for the current caller.
+ """
+
+ property name : "wormhole", type : Map, doc : """Use the wormhole to stuff in values calculated in one contribution group
+ to make it available later in another contribution group"""
+
+ property name : "currentType", type : ClassNode,
+ doc : "This is the declaring type of the current expression being evaluated."
+ property name : "currentNode", type : ASTNode, doc : "This is the ASTNode being evaluated"
+ property name : "enclosingNode", type : ASTNode, doc : "This is the ASTNode enclosing the ASTNode being evaluated"
+
+ property name : "log", type: void, doc: "Logs a message to the Groovy Event Console. Useful for debugging,"
+
+ method name : "setDelegateType", type : void, params : [newDelegateType : String],
+ doc : '''
+ Sets the delegate type inside a closure. This is different from <code>delegatesTo</code> in that the receiving type
+ is changed in the current scope. In <code>delegatesTo</code>, the scope is not changed. Rather, the methods of the
+ delegate are added to the target type's list of recognized methods.
+ '''
+
+ // Now, extract all bindings from the wormhole and add them as contributions
+ for (binding in wormhole.bindings) {
+ property name : binding, type : Collection, doc : "Binding created from pointcut"
+ }
+}
+
+// Add the contributions for inside a "registerPointcut" call. User-registered pointcuts are
+// not fully fleshed out yet, so best not to use them yet.
+(dsldFile & inClosure() & enclosingCallName("registerPointcut")).accept {
+ // a little naughty again...reference an internal Groovy-Eclipse type.
+ // this may be removed in future versions
+ property name : "currentScope", type : org.eclipse.jdt.groovy.search.VariableScope
+ property name : "currenType", type : ClassNode
+}
View
29 base/org.codehaus.groovy21/plugin_dsld_support/dsld/autoExternalize.dsld
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2011 SpringSource and others
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * Hackergarten contribution
+ *
+ * @author Andres Almiray
+ */
+package dsld
+
+import groovy.transform.AutoExternalize
+
+contribute(enclosingClass(annotatedBy(AutoExternalize))) {
+ provider = "AutoExternalize AST Transform"
+ delegatesTo type: Externalizable
+}
+
View
104 base/org.codehaus.groovy21/plugin_dsld_support/dsld/bindable.dsld
@@ -0,0 +1,104 @@
+/*
+ * Copyright 2011 SpringSource and others
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * Hackergarten contribution
+ *
+ * @author Tom Bujok (reficio.org)
+ * @author Andres Almiray
+ */
+package dsld
+
+import java.beans.PropertyChangeListener
+
+contribute(currentType(annotatedBy("groovy.beans.Bindable") |
+ fields(annotatedBy("groovy.beans.Bindable")))) {
+ provider = "Bindable AST Transform"
+
+ method name: "addPropertyChangeListener",
+ type: "void",
+ params: [propertyName: String,
+ listener: PropertyChangeListener],
+ doc: """
+ Add a PropertyChangeListener to the listener list. The listener is registered for all properties.
+ The same listener object may be added more than once, and will be called as many times as it is added.
+ If listener is null, no exception is thrown and no action is taken.
+ @param listener The PropertyChangeListener to be added
+ """
+
+ method name: "addPropertyChangeListener",
+ type: "void",
+ params: [listener: PropertyChangeListener],
+ doc: """
+ Add a PropertyChangeListener for a specific property. The listener will be invoked only when a call on
+ firePropertyChange names that specific property. The same listener object may be added more than once.
+ For each property, the listener will be invoked the number of times it was added for that property.
+ If propertyName or listener is null, no exception is thrown and no action is taken.
+ @param propertyName The name of the property to listen on.
+ @param listener The PropertyChangeListener to be added
+ """
+
+ method name: "removePropertyChangeListener",
+ type: "void",
+ params: [propertyName: String,
+ listener: PropertyChangeListener],
+ doc: """
+ Remove a PropertyChangeListener for a specific property. If listener was added more than once to the same
+ event source for the specified property, it will be notified one less time after being removed. If
+ propertyName is null, no exception is thrown and no action is taken. If listener is null, or was never
+ added for the specified property, no exception is thrown and no action is taken.
+ @param propertyName The name of the property that was listened on.
+ @param listener The PropertyChangeListener to be removed
+ """
+ method name: "removePropertyChangeListener",
+ type: "void",
+ params: [listener: PropertyChangeListener],
+ doc: """
+ Remove a PropertyChangeListener from the listener list. This removes a PropertyChangeListener that was
+ registered for all properties. If listener was added more than once to the same event source, it will
+ be notified one less time after being removed. If listener is null, or was never added, no exception is
+ thrown and no action is taken.
+ @param listener The PropertyChangeListener to be removed
+ """
+
+ method name: "firePropertyChange",
+ type: "void",
+ params: [propertyName: String, oldValue: Object, newValue: Object],
+ doc: """
+ Report a bound property update to any registered listeners.
+ This is merely a convenience wrapper around the more general firePropertyChange method that takes PropertyChangeEvent value.
+ @param propertyName The programmatic name of the property that was changed.
+ @param oldValue The old value of the property.
+ @param newValue The new value of the property.
+ """
+
+ method name: "getPropertyChangeListeners",
+ type: "java.beans.PropertyChangeListener[]",
+ doc: """
+ Returns an array of all the listeners that were added to the PropertyChangeSupport object with addPropertyChangeListener().
+ @return all of the PropertyChangeListeners added or an empty array if no listeners have been added
+ """
+
+ method name: "getPropertyChangeListeners",
+ type: "java.beans.PropertyChangeListener[]",
+ params: [propertyName: String],
+ doc: """
+ Returns an array of all the listeners which have been associated with the named property.
+ @param propertyName The name of the property being listened to
+ @return all of the PropertyChangeListeners associated with the named property. If no such
+ listeners have been added, or if propertyName is null, an empty array is returned.
+ """
+}
+
View
60 base/org.codehaus.groovy21/plugin_dsld_support/dsld/groovy.dsld
@@ -0,0 +1,60 @@
+/*
+ * Copyright 2011 SpringSource
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package dsld
+
+import org.codehaus.groovy.ast.AnnotationNode
+import org.codehaus.groovy.ast.expr.ClassExpression
+import org.codehaus.groovy.ast.expr.Expression
+import org.codehaus.groovy.ast.expr.ListExpression
+
+
+/**
+ * This is the DSLD for AST Transforms shipped with Groovy-core 1.8.x
+ *
+ * @author Andrew Eisenberg
+ * @since 2.5.1
+ */
+
+
+// Singleton
+currentType(annotatedBy(Singleton)).accept {
+ provider = "Singleton AST Transform"
+ method name:"getInstance", type:currentType, declaringType:currentType, isStatic:true
+ property name:"instance", type:currentType, declaringType:currentType, isStatic:true
+}
+
+// Delegate
+currentType(fields : fields(annotatedBy(Delegate))).accept {
+ provider = "Delegate AST Transform"
+ for (field in fields) {
+ delegatesTo field
+ }
+}
+
+// Mixin
+currentType(mixins: annotatedBy(Mixin)).accept {
+ provider = "Mixin AST Transform"
+ for (AnnotationNode mixin in mixins) {
+ Expression expr = mixin.getMember("value")
+ if (expr instanceof ClassExpression) {
+ delegatesTo expr
+ } else if (expr instanceof ListExpression) {
+ for (Expression ex in expr?.expressions) {
+ delegatesTo ex
+ }
+ }
+ }
+}
View
59 base/org.codehaus.groovy21/plugin_dsld_support/dsld/groovy18.dsld
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2011 SpringSource
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package dsld
+
+import org.codehaus.groovy.ast.ClassNode;
+import org.codehaus.groovy.ast.GenericsType;
+import org.codehaus.groovy.ast.FieldNode;
+
+import groovy.transform.IndexedProperty;
+
+
+/**
+ * This is the DSLD for AST Transforms shipped with Groovy-core 1.8.x
+ * And this script is not applicable for earlier versions of Groovy
+ *
+ * @author Andrew Eisenberg
+ * @since 2.5.1
+ */
+
+
+// IndexedProperty
+// 1.8 only
+currentType(fields : fields(annotatedBy(IndexedProperty))).accept {
+ provider = "Indexed property"
+ fields.each { FieldNode field ->
+ def propertyName = field.name
+ propertyName = propertyName.size() == 1 ? propertyName.toUpperCase() : propertyName[0].toUpperCase() + propertyName[1..-1]
+ def type = findElementType(field)
+ method name: 'get' + propertyName, type: type, params: [index: int]
+ method name: 'set' + propertyName, type: 'void', params: [index: int, element: type]
+ }
+}
+
+def findElementType(FieldNode field) {
+ ClassNode type = field.type
+ if (type.isArray()) {
+ return type.componentType
+ }
+ GenericsType[] gt = type.genericsTypes
+ if (gt && gt.length > 0) {
+ gt[0]?.type
+ } else {
+ Object
+ }
+}
+
View
76 base/org.codehaus.groovy21/plugin_dsld_support/dsld/listenerList.dsld
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2011 SpringSource and others
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Hackergarten contribution
+ *
+ * @author Lukasz Pielak
+ * @author Max Rydahl Andersen
+ * @author Andres Almiray
+ */
+package dsld
+
+import org.codehaus.groovy.ast.ClassHelper;
+import org.codehaus.groovy.ast.ClassNode
+import org.codehaus.groovy.ast.FieldNode
+import org.codehaus.groovy.ast.GenericsType
+import org.codehaus.groovy.ast.MethodNode;
+import groovy.beans.ListenerList
+
+contribute(currentType(fields : fields(annotatedBy(ListenerList)))) {
+ provider = "ListenerList AST Transform"
+
+ fields.each { field ->
+ def propertyName = field.name
+ propertyName = propertyName.size() == 1 ? propertyName.toUpperCase() : propertyName[0].toUpperCase() + propertyName[1..-1]
+ def type = findElementType(field)
+
+ def shortType = getShortName(type.name)
+ method name: 'add' + shortType, type: 'void', params: [listener: type], doc: 'Add ' + shortType + ' listener'
+ method name: 'remove' + shortType, type: 'void', params: [listener: type], doc: 'Remove ' + shortType + ' listener'
+
+ // TODO array types does not work, result in completions for plain Object.
+ method name: 'get' + shortType + 's', type: "type.name"+[], doc: 'Get ' + shortType + ' listeners'
+
+ findElementType(field).methods.each { MethodNode m ->
+ method name: 'fire' + m.name.capitalize(), type: "void", params: m.parameters.inject([:]){ map, param ->
+ map[(param.name)] = param.type
+ map
+ }, doc: 'fire the ' + m.name + ' event'
+ }
+ }
+}
+
+private getShortName(String className){
+ int i = className.lastIndexOf(".")
+ if (i > -1){
+ className = className.substring(i+1, className.length())
+ }
+ className
+}
+
+private ClassNode findElementType(FieldNode field) {
+ ClassNode type = field.type
+ if (type.isArray()) {
+ return type.componentType
+ }
+ GenericsType[] gt = type.genericsTypes
+ if (gt && gt.length > 0) {
+ gt[0]?.type
+ } else {
+ ClassHelper.OBJECT_TYPE
+ }
+}
View
52 base/org.codehaus.groovy21/plugin_dsld_support/dsld/logging.dsld
@@ -0,0 +1,52 @@
+/*
+ * Copyright 2011 SpringSource and others
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * Hackergarten contribution
+ *
+ * @author Lukasz Pielak
+ * @author Max Rydahl Andersen
+ * @author Tom Bujok (reficio.org)
+ * @author Andres Almiray
+ */
+package dsld
+
+[
+ [
+ annotation: 'groovy.util.logging.Log',
+ logger: 'java.util.logging.Logger'
+ ],
+ [
+ annotation: 'groovy.util.logging.Slf4j',
+ logger: 'org.slf4j.Logger'
+ ],
+ [
+ annotation: 'groovy.util.logging.Commons',
+ logger: 'org.apache.commons.logging.Log'
+ ],
+ [
+ annotation: 'groovy.util.logging.Log4j',
+ logger: 'org.apache.log4j.Logger'
+ ]
+].each { data ->
+ contribute(currentType(annotations: annotatedBy(data.annotation))) {
+ for(annotationNode in annotations) {
+ provider = 'Logging AST Transformations'
+ def name = annotationNode.getMember('value') ?: 'log'
+ property name: name,
+ type: data.logger
+ }
+ }
+}
View
137 base/org.codehaus.groovy21/plugin_dsld_support/dsld/swing_builder.dsld
@@ -0,0 +1,137 @@
+/*
+ * Copyright 2011 SpringSource
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package dsld
+
+import groovy.swing.SwingBuilder
+import groovy.swing.impl.*
+import javax.swing.*
+import javax.swing.border.CompoundBorder;
+import groovy.model.DefaultTableColumn
+
+import org.codehaus.groovy.binding.*
+import java.awt.*
+
+
+/**
+ * This is the DSLD for SwingBuilder
+ *
+ * @author Andrew Eisenberg
+ * @since 2.5.1
+ */
+currentType(SwingBuilder).accept {
+ provider = "SwingBuilder DSL"
+
+ method name: "action", type: Action, useNamedArgs: true, params: [name: String, shortDescription: String, smallIcon: String, accelerator:String, closure: Closure], doc: """
+ Actions are the lifeblood of a full fledged swing application. Other sources can expound on their usefullness.
+ <br/> see <a href="http://groovy.codehaus.org/SwingBuilder.action">http://groovy.codehaus.org/SwingBuilder.action</a>
+ """
+ method name: "frame", type: JFrame, useNamedArgs: true, params: [contentPane:Container, defaultCloseOperation:int, title:String, glassPane:Component, layeredPane:JLayeredPane, contentPane:Container],
+ doc: """
+ Generates a JFrame.
+ <br/> see <a href="http://groovy.codehaus.org/SwingBuilder.frame">http://groovy.codehaus.org/SwingBuilder.frame</a>
+ """
+
+ def add = { name, type ->
+ def docText = "See <a href=\"http://groovy.codehaus.org/SwingBuilder.${name}\">SwingBuilder.${name}</a>"
+ method name:name, type:type, doc:docText
+ }
+
+ // and so on...
+ add("actions", List)
+ add("bean", Void)
+ add("bind", FullBinding)
+ add("borderLayout", BorderLayout)
+ add("boundedRangeModel", DefaultBoundedRangeModel)
+ add("box", Box)
+ add("boxLayout", BoxLayout)
+ add("button", JButton)
+ add("buttonGroup", ButtonGroup)
+ add("cardLayout", CardLayout)
+ add("checkBox", JCheckBox)
+ add("checkBoxMenuItem", JCheckBoxMenuItem)
+ add("closureColumn", DefaultTableColumn)
+ add("compoundBorder", CompoundBorder)
+ add("colorChooser", JColorChooser)
+ add("comboBox", JComboBox)
+ add("container", Container)
+ add("desktopPane", JDesktopPane)
+ add("dialog", JDialog)
+ add("editorPane", JEditorPane)
+ add("emptyBorder", border.EmptyBorder)
+ add("etchedBorder", border.EtchedBorder)
+ add("fileChooser", JFileChooser)
+ add("flowLayout", FlowLayout)
+ add("formattedTextField", JFormattedTextField)
+ add("gbc", GridBagConstraints)
+ add("gridBagConstraints", GridBagConstraints)
+ add("glue", Component)
+ add("gridBagConstraints", GridBagConstraints)
+ add("gridBagLayout", GridBagLayout)
+ add("gridLayout", GridLayout)
+ add("hbox", Box)
+ add("hglue", Component)
+ add("hstrut", Component)
+ add("internalFrame", JInternalFrame)
+ add("label", JLabel)
+ add("layeredPane", JLayeredPane)
+ add("list", JList)
+ add("loweredBevelBorder", border.BevelBorder)
+ add("loweredEtchedBorder", border.EtchedBorder)
+ add("map", Map)
+ add("matteBorder", border.MatteBorder)
+ add("menu", JMenu)
+ add("menuBar", JMenuBar)
+ add("menuItem", JMenuItem)
+ add("optionPane", JOptionPane)
+ add("overlayLayout", OverlayLayout)
+ add("panel", JPanel)
+ add("passwordField", JPasswordField)
+ add("popupMenum", JPopupMenu)
+ add("progressBar", JProgressBar)
+ add("propertyColumn", table.TableColumn)
+ add("radioButton", JRadioButton)
+ add("radioButtonMenuItem", JRadioButtonMenuItem)
+ add("rigidArea", Component)
+ add("scrollBar", JScrollBar)
+ add("scrollPane", JScrollPane)
+ add("separator", JSeparator)
+ add("slider", JSlider)
+ add("spinner", JSpinner)
+ add("spinnerDateModel", SpinnerDateModel)
+ add("spinnerListModel", SpinnerListModel)
+ add("spinnerNumberModel", SpinnerNumberModel)
+ add("splitPane", JSplitPane)
+ add("springLayout", SpringLayout)
+ add("tabbedPane", JTabbedPane)
+ add("table", JTable)
+ add("tableColumn", table.TableColumn)
+ add("tableLayout", TableLayoutRow)
+ add("tableModel", table.TableModel)
+ add("td", TableLayoutCell)
+ add("textArea", JTextArea)
+ add("textField", JTextField)
+ add("textPane", JTextPane)
+ add("toggleButton", JToggleButton)
+ add("toolbar", JToolBar)
+ add("tr", TableLayoutRow)
+ add("tree", JTree)
+ add("vbox", Box)
+ add("vglue", Component)
+ add("viewport", JViewport)
+ add("vstrut", Component)
+ add("widget", Component)
+ add("window", JWindow)
+}
View
99 base/org.codehaus.groovy21/plugin_dsld_support/dsld/vetoable.dsld
@@ -0,0 +1,99 @@
+/*
+ * Copyright 2011 SpringSource and others
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+/**
+ * Hackergarten contribution
+ *
+ * @author Tom Bujok (reficio.org)
+ * @author Andres Almiray
+ */
+package dsld
+
+import java.beans.VetoableChangeListener
+import groovy.beans.Vetoable
+
+contribute(currentType(annotatedBy(Vetoable) |
+ fields(annotatedBy(Vetoable)))) {
+ provider = "Vetoable AST Transform"
+
+ method name: "addVetoableChangeListener",
+ type: "void",
+ params: [propertyName: String,
+ listener: VetoableChangeListener],
+ doc: """
+ Add a VetoableChangeListener for a specific property. The listener will be invoked only when a call on
+ fireVetoableChange names that specific property. The same listener object may be added more than once.
+ For each property, the listener will be invoked the number of times it was added for that property. If
+ propertyName or listener is null, no exception is thrown and no action is taken.
+ @param propertyName The name of the property to listen on.
+ @param listener The VetoableChangeListener to be added"""
+
+ method name: "addVetoableChangeListener",
+ type: "void",
+ params: [listener: VetoableChangeListener],
+ doc: """
+ Add a VetoableListener to the listener list. The listener is registered for all properties. The same listener
+ object may beadded more than once, and will be called as many times as it is added. If listener is null, no
+ exception is thrown and no action is taken.
+ @param listener The VetoableChangeListener to be added"""
+
+ method name: "removeVetoableChangeListener",
+ type: "void",
+ params: [propertyName: String,
+ listener: VetoableChangeListener],
+ doc: """
+ Remove a VetoableChangeListener for a specific property. If listener was added more than once to the same event
+ source for the specified property, it will be notified one less time after being removed. If propertyName is null,
+ no exception is thrown and no action is taken. If listener is null, or was never added for the specified property,
+ no exception is thrown and no action is taken.
+ @param propertyName The name of the property that was listened on.
+ @param listener The VetoableChangeListener to be removed"""
+
+ method name: "removeVetoableChangeListener",
+ type: "void",
+ params: [listener: VetoableChangeListener],
+ doc: """
+ Remove a VetoableChangeListener from the listener list. This removes a VetoableChangeListener that was registered
+ for all properties. If listener was added more than once to the same event source, it will be notified one less
+ time after being removed. If listener is null, or was never added, no exception is thrown and no action is taken.
+ @param listener The VetoableChangeListener to be removed"""
+
+ method name: "fireVetoableChange",
+ type: "void",
+ params: [propertyName: String, oldValue: "java.lang.Object", newValue: "java.lang.Object"],
+ doc: """
+ Report a vetoable property update to any registered listeners. If anyone vetos the change, then fire a new event
+ reverting everyone to the old value and then rethrow the PropertyVetoException.
+ No event is fired if old and new are equal and non-null.
+ @param propertyName The programmatic name of the property that is about to change..
+ @param oldValue The old value of the property.
+ @param newValue The new value of the property. """
+
+ method name: "getVetoableChangeListeners",
+ type: "java.beans.VetoableChangeListener[]",
+ doc: """
+ Returns the list of VetoableChangeListeners. If named vetoable change listeners were added, then VetoableChangeListenerProxy
+ wrappers will returned.
+ @return List of VetoableChangeListeners and VetoableChangeListenerProxys if named property change listeners were added."""
+
+ method name: "getVetoableChangeListeners",
+ type: "java.beans.VetoableChangeListener[]",
+ params: [propertyName: String],
+ doc: """
+ Returns an array of all the listeners which have been associated with the named property.
+ @param propertyName The name of the property being listened to
+ @return all the VetoableChangeListeners associated with the named property. If no such listeners have been added, or if
+ propertyName is null, an empty array is returned."""
+}
View
4 base/org.codehaus.groovy21/plugin_dsld_support/readme.txt
@@ -0,0 +1,4 @@
+This folder contains some standard DSL descriptor files that are specific to this version
+ of Groovy-Eclipse and are applicable for all projects in your workspace. In general,
+ you should not edit the files here. If you want to add custom DSLDs for the entire
+ workspace, then you should place them in ~/.groovy/greclipse/dsld.
View
36 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/DefaultGroovyLogger.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright 2003-2009 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.codehaus.groovy.eclipse;
+
+import java.util.Date;
+
+/**
+ * Default logger logs to sysout and includes a timestamp
+ * @author Andrew Eisenberg
+ * @created Nov 24, 2010
+ */
+@SuppressWarnings("nls")
+public class DefaultGroovyLogger implements IGroovyLogger {
+
+ public void log(TraceCategory category, String message) {
+ System.out.println(category.label + " : " + new Date() + " : " + message);
+ }
+
+ public boolean isCategoryEnabled(TraceCategory category) {
+ return true;
+ }
+
+}
View
182 base/org.codehaus.groovy21/src-trace/org/codehaus/groovy/eclipse/GroovyLogManager.java
@@ -0,0 +1,182 @@
+/*
+ * Copyright 2003-2009 the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.codehaus.groovy.eclipse;
+
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Manages the current {@link IGroovyLogger} instance.
+ * This class is a singleton
+ * @author Andrew Eisenberg
+ * @created Nov 24, 2010
+ */
+// Some code here borrowed from org.eclipse.ajdt.core.AJLog under EPL license
+// See http://www.eclipse.org/legal/epl-v10.html
+public class GroovyLogManager {
+ public static final GroovyLogManager manager = new GroovyLogManager();
+
+ private GroovyLogManager() {
+ // uninstantiable
+ defaultLogger = new DefaultGroovyLogger();
+ timers = new HashMap<String, Long>();
+ }
+
+ private IGroovyLogger[] loggers = null;
+
+ // only use default logger if no others are registered
+ private IGroovyLogger defaultLogger;
+
+ private Map<String, Long> timers;
+
+ private boolean useDefaultLogger;
+
+ /**
+ * @return true if logger was added. False if not
+ * if not added, then this means the exact logger is already in the list
+ */
+ public boolean addLogger(IGroovyLogger logger) {
+ int newIndex;
+ if (loggers == null) {
+ loggers = new IGroovyLogger[1];
+ newIndex = 0;
+ } else {
+ // check to see if already there
+ for (IGroovyLogger l : loggers) {
+ if (l == logger) {
+ return false;
+ }
+ }
+
+ newIndex = loggers.length;
+ IGroovyLogger[] newLoggers = new IGroovyLogger[newIndex+1];
+ System.arraycopy(loggers, 0, newLoggers, 0, newIndex);
+ loggers = newLoggers;
+ }
+ loggers[newIndex] = logger;
+ return true;
+ }
+
+ /**
+ * Removes the logger from the logger list
+ * @return true iff found and removed
+ * false iff nothing found.
+ */
+ public boolean removeLogger(IGroovyLogger logger) {
+ if (logger != null) {
+ int foundIndex = -1;
+ for (int i = 0; i < loggers.length; i++) {
+ if (loggers[i] == logger) {
+ foundIndex = i;
+ }
+ }
+ if (foundIndex >= 0) {
+ if (loggers.length > 1) {
+ IGroovyLogger[] newLoggers = new IGroovyLogger[loggers.length - 1];
+ if (foundIndex > 0) {
+ System.arraycopy(loggers, 0, newLoggers, 0, foundIndex);
+ }
+ System.arraycopy(loggers, foundIndex+1, newLoggers, foundIndex, loggers.length-foundIndex-1);
+ loggers = newLoggers;
+ } else {
+ loggers = null;
+ }
+ return true;
+ }
+ }
+
+ // not found
+ return false;
+ }
+
+
+ public void logStart(String event) {
+ timers.put(event, System.currentTimeMillis());
+ }
+
+ public void logEnd(String event, TraceCategory category) {
+ logEnd(event, category, null);
+ }
+
+ public void logEnd(String event, TraceCategory category, String message) {
+ Long then = timers.get(event);
+ if (then != null) {
+ if (hasLoggers()) {
+ long now = System.currentTimeMillis();
+ long elapsed = now - then.longValue();
+ if ((message != null) && (message.length() > 0)) {
+ log(category,"Event complete: "+elapsed + "ms: " + event + " (" + message + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+ } else {
+ log(category,"Event complete: "+elapsed + "ms: " + event); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+ timers.remove(event);
+ }
+ }
+
+ public void log(String message) {
+ log(TraceCategory.DEFAULT, message);
+ }
+
+ public void log(TraceCategory category, String message) {
+ if (!hasLoggers()) {
+ return;
+ }
+
+ if (loggers != null) {
+ for (IGroovyLogger logger : loggers) {
+ if (logger.isCategoryEnabled(category)) {
+ logger.log(category, message);
+ }
+ }
+ }
+
+ if (useDefaultLogger) {