flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aha...@apache.org
Subject git commit: [flex-falcon] [refs/heads/develop] - add exportSymbol to all classes for reflection
Date Mon, 01 Feb 2016 16:03:25 GMT
Repository: flex-falcon
Updated Branches:
  refs/heads/develop 626bfd2cb -> c051db72e


add exportSymbol to all classes for reflection


Project: http://git-wip-us.apache.org/repos/asf/flex-falcon/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-falcon/commit/c051db72
Tree: http://git-wip-us.apache.org/repos/asf/flex-falcon/tree/c051db72
Diff: http://git-wip-us.apache.org/repos/asf/flex-falcon/diff/c051db72

Branch: refs/heads/develop
Commit: c051db72e7f078f20823620f5df30b772e7785d9
Parents: 626bfd2
Author: Alex Harui <aharui@apache.org>
Authored: Mon Feb 1 07:58:46 2016 -0800
Committer: Alex Harui <aharui@apache.org>
Committed: Mon Feb 1 07:58:46 2016 -0800

----------------------------------------------------------------------
 .../codegen/js/flexjs/TestFlexJSEmiter.java     | 12 +++
 .../codegen/js/flexjs/TestFlexJSPackage.java    | 90 ++++++++++++++++++++
 .../codegen/js/flexjs/TestFlexJSStatements.java |  6 ++
 .../mxml/flexjs/TestFlexJSMXMLScript.java       | 12 +++
 .../flexjs/files/FlexJSTest_again_result.js     |  6 ++
 .../flexjs/files/LocalFunction_result.js        |  6 ++
 .../flexjs/files/MyInitialView_result.js        |  6 ++
 .../files/controllers/MyController_result.js    |  6 ++
 .../flexjs/files/models/MyModel_result.js       |  6 ++
 .../flexjs/files/wildcard_import_result.js      |  6 ++
 .../flexjs/projects/circular/Base_result.js     |  6 ++
 .../flexjs/projects/circular/Super_result.js    |  6 ++
 .../flexjs/projects/interfaces/Test_result.js   |  6 ++
 .../projects/interfaces/classes/A_result.js     |  6 ++
 .../projects/interfaces/classes/B_result.js     |  6 ++
 .../projects/interfaces/classes/C_result.js     |  6 ++
 .../projects/internal/MainClass_result.js       | 12 +++
 .../projects/internal/OtherClass_result.js      |  6 ++
 .../DifferentPackageAsConflict_result.js        |  6 ++
 .../Event_result.js                             |  6 ++
 .../mypackage/TestClass_result.js               |  6 ++
 .../otherpackage/Event_result.js                |  6 ++
 .../Event_result.js                             |  6 ++
 .../NoConflictNoWindow_result.js                |  6 ++
 .../mypackage/TestClass_result.js               |  6 ++
 .../Event_result.js                             |  6 ++
 .../NoConflictUseWindow_result.js               |  6 ++
 .../mypackage/TestClass_result.js               |  6 ++
 .../Event_result.js                             |  6 ++
 .../SamePackageAsConflict_result.js             |  6 ++
 .../mypackage/Event_result.js                   |  6 ++
 .../mypackage/TestClass_result.js               |  6 ++
 .../Event_result.js                             |  6 ++
 .../UseWindow_result.js                         |  6 ++
 .../mypackage/TestClass_result.js               |  6 ++
 .../otherpackage/Event_result.js                |  6 ++
 .../flexjs/projects/super/Base_result.js        |  6 ++
 .../flexjs/projects/super/Super_result.js       |  6 ++
 .../js/flexjs/JSFlexJSEmitterTokens.java        |  1 +
 .../codegen/js/jx/PackageFooterEmitter.java     | 20 +++++
 .../codegen/mxml/flexjs/MXMLFlexJSEmitter.java  | 17 ++++
 .../mxml/flexjs/MXMLFlexJSPublisher.java        |  5 +-
 42 files changed, 371 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSEmiter.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSEmiter.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSEmiter.java
index d441a8e..c02200e 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSEmiter.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSEmiter.java
@@ -113,6 +113,12 @@ public class TestFlexJSEmiter extends TestGoogEmiter
         		"com.example.components.MyEventTarget.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'MyEventTarget', qName: 'com.example.components.MyEventTarget'}] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('com.example.components.MyEventTarget', com.example.components.MyEventTarget);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -233,6 +239,12 @@ public class TestFlexJSEmiter extends TestGoogEmiter
         		"com.example.components.TestClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'TestClass', qName: 'com.example.components.TestClass'}] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('com.example.components.TestClass', com.example.components.TestClass);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSPackage.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSPackage.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSPackage.java
index e29e8f0..a456900 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSPackage.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSPackage.java
@@ -88,6 +88,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		"A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'A'}] };\n" +
         		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('A', A);\n" +
+        		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -145,6 +151,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		"foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
         		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
+        		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -202,6 +214,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		"foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
         		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
+        		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -265,6 +283,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		"foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
         		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
+        		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -322,6 +346,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		"foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
         		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
+        		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -388,6 +418,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  "foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -427,6 +463,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  " * @type {Object.<string, Array.<Object>>}\n" +
         		  " */\n" +
         		  "foo.bar.baz.A.InternalClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'InternalClass', qName: 'foo.bar.baz.A.InternalClass'}] };\n" +
+            		"\n" +
+            		"\n" +
+            		"/**\n" +
+            		" * Prevent renaming of class. Needed for reflection.\n" +
+            		" */\n" +
+            		"goog.exportSymbol('foo.bar.baz.A.InternalClass', foo.bar.baz.A.InternalClass);\n" +
           		"\n" +
         		"\n" +
         		"\n" +
@@ -490,6 +532,12 @@ public class TestFlexJSPackage extends TestGoogPackage
 				" * @type {Object.<string, Array.<Object>>}\n" +
 				" */\n" +
 				"foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
+        		"\n" +
+        		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
           		"\n" +
         		"\n" +
         		"\n" +
@@ -558,6 +606,12 @@ public class TestFlexJSPackage extends TestGoogPackage
 				" * @type {Object.<string, Array.<Object>>}\n" +
 				" */\n" +
 				"foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
+        		"\n" +
+        		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
           		"\n" +
         		"\n" +
         		"\n" +
@@ -641,6 +695,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  " * @type {Object.<string, Array.<Object>>}\n" +
         		  " */\n" +
         		  "foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
+          		"\n" +
+        		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
             		"\n" +
             		"\n" +
             		"\n" +
@@ -709,6 +769,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  "foo.bar.baz.A.InternalClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'InternalClass', qName: 'foo.bar.baz.A.InternalClass'}] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A.InternalClass', foo.bar.baz.A.InternalClass);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -800,6 +866,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  " * @type {Object.<string, Array.<Object>>}\n" +
         		  " */\n" +
         		  "foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
+          		"\n" +
+        		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
             		"\n" +
             		"\n" +
             		"\n" +
@@ -855,6 +927,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  "foo.bar.baz.A.InternalClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'InternalClass', qName: 'foo.bar.baz.A.InternalClass'}] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A.InternalClass', foo.bar.baz.A.InternalClass);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -927,6 +1005,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  " * @type {Object.<string, Array.<Object>>}\n" +
         		  " */\n" +
         		  "foo.bar.baz.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'foo.bar.baz.A'}] };\n" +
+          		"\n" +
+        		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A', foo.bar.baz.A);\n" +
             		"\n" +
             		"\n" +
             		"\n" +
@@ -1019,6 +1103,12 @@ public class TestFlexJSPackage extends TestGoogPackage
         		  " * @type {Object.<string, Array.<Object>>}\n" +
         		  " */\n" +
         		  "foo.bar.baz.A.InternalClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'InternalClass', qName: 'foo.bar.baz.A.InternalClass'}], interfaces: [foo.bar.baz.A.ITestInterface] };\n" +
+          		"\n" +
+        		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('foo.bar.baz.A.InternalClass', foo.bar.baz.A.InternalClass);\n" +
             		"\n" +
             		"\n" +
             		"\n" +

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSStatements.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSStatements.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSStatements.java
index bc18b4d..9b93226 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSStatements.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/js/flexjs/TestFlexJSStatements.java
@@ -551,6 +551,12 @@ public class TestFlexJSStatements extends TestGoogStatements
         		              "FalconTest_A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'FalconTest_A', qName: 'FalconTest_A'}] };\n" +
         		          		"\n" +
         		        		"\n" +
+        		        		"/**\n" +
+        		        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		        		" */\n" +
+        		        		"goog.exportSymbol('FalconTest_A', FalconTest_A);\n" +
+        		          		"\n" +
+        		        		"\n" +
         		        		"\n" +
         		        		"/**\n" +
         		        		" * Reflection\n" +

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLScript.java
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLScript.java b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLScript.java
index 279b9dd..4a58096 100644
--- a/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLScript.java
+++ b/compiler.jx.tests/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/TestFlexJSMXMLScript.java
@@ -88,6 +88,12 @@ public class TestFlexJSMXMLScript extends FlexJSTestBase
         		"AppName.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'AppName', qName: 'AppName' }] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('AppName', AppName);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +
@@ -187,6 +193,12 @@ public class TestFlexJSMXMLScript extends FlexJSTestBase
         		"AppName.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'AppName', qName: 'AppName' }] };\n" +
           		"\n" +
         		"\n" +
+        		"/**\n" +
+        		" * Prevent renaming of class. Needed for reflection.\n" +
+        		" */\n" +
+        		"goog.exportSymbol('AppName', AppName);\n" +
+          		"\n" +
+        		"\n" +
         		"\n" +
         		"/**\n" +
         		" * Reflection\n" +

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again_result.js b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again_result.js
index e2f657d..bf68564 100644
--- a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again_result.js
@@ -136,6 +136,12 @@ goog.inherits(FlexJSTest_again, org.apache.flex.core.Application);
 FlexJSTest_again.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'FlexJSTest_again', qName: 'FlexJSTest_again' }] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('FlexJSTest_again', FlexJSTest_again);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/files/LocalFunction_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/LocalFunction_result.js b/compiler.jx.tests/test-files/flexjs/files/LocalFunction_result.js
index 78f5ba5..c86bba7 100644
--- a/compiler.jx.tests/test-files/flexjs/files/LocalFunction_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/LocalFunction_result.js
@@ -66,6 +66,12 @@ LocalFunction.prototype.doIt = function() {
 LocalFunction.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'LocalFunction', qName: 'LocalFunction'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('LocalFunction', LocalFunction);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/files/MyInitialView_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_result.js b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_result.js
index c871755..6ba45a3 100644
--- a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_result.js
@@ -209,6 +209,12 @@ goog.inherits(MyInitialView, org.apache.flex.core.ViewBase);
 MyInitialView.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'MyInitialView', qName: 'MyInitialView' }] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('MyInitialView', MyInitialView);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/files/controllers/MyController_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/controllers/MyController_result.js b/compiler.jx.tests/test-files/flexjs/files/controllers/MyController_result.js
index 2a2f350..883b408 100644
--- a/compiler.jx.tests/test-files/flexjs/files/controllers/MyController_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/controllers/MyController_result.js
@@ -148,6 +148,12 @@ controllers.MyController.prototype.setDocument = function(document, id) {
 controllers.MyController.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'MyController', qName: 'controllers.MyController'}], interfaces: [org.apache.flex.core.IDocument] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('controllers.MyController', controllers.MyController);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/files/models/MyModel_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/models/MyModel_result.js b/compiler.jx.tests/test-files/flexjs/files/models/MyModel_result.js
index 11cd19d..7a26fe9 100644
--- a/compiler.jx.tests/test-files/flexjs/files/models/MyModel_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/models/MyModel_result.js
@@ -90,6 +90,12 @@ get: /** @this {models.MyModel} */ function() {
 models.MyModel.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'MyModel', qName: 'models.MyModel'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('models.MyModel', models.MyModel);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/files/wildcard_import_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/wildcard_import_result.js b/compiler.jx.tests/test-files/flexjs/files/wildcard_import_result.js
index 2f591e6..43c5780 100644
--- a/compiler.jx.tests/test-files/flexjs/files/wildcard_import_result.js
+++ b/compiler.jx.tests/test-files/flexjs/files/wildcard_import_result.js
@@ -57,6 +57,12 @@ goog.inherits(wildcard_import, org.apache.flex.core.Application);
 wildcard_import.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'wildcard_import', qName: 'wildcard_import' }] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('wildcard_import', wildcard_import);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/circular/Base_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/circular/Base_result.js b/compiler.jx.tests/test-files/flexjs/projects/circular/Base_result.js
index eec9ab3..e9f581c 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/circular/Base_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/circular/Base_result.js
@@ -43,6 +43,12 @@ goog.inherits(Base, Super);
 Base.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Base', qName: 'Base'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Base', Base);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/circular/Super_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/circular/Super_result.js b/compiler.jx.tests/test-files/flexjs/projects/circular/Super_result.js
index a8e15e1..368ec25 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/circular/Super_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/circular/Super_result.js
@@ -46,6 +46,12 @@ Super.isItCircular;
 Super.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Super', qName: 'Super'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Super', Super);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/interfaces/Test_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/interfaces/Test_result.js b/compiler.jx.tests/test-files/flexjs/projects/interfaces/Test_result.js
index 7c92f53..42ab0f4 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/interfaces/Test_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/interfaces/Test_result.js
@@ -63,6 +63,12 @@ Test.prototype.doSomething = function(ic) {
 Test.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Test', qName: 'Test'}], interfaces: [interfaces.IA, interfaces.IE] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Test', Test);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/A_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/A_result.js b/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/A_result.js
index 22a7f37..9bb4b71 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/A_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/A_result.js
@@ -43,6 +43,12 @@ goog.inherits(classes.A, classes.C);
 classes.A.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'A', qName: 'classes.A'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('classes.A', classes.A);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/B_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/B_result.js b/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/B_result.js
index ba191ab..8aaa2f7 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/B_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/B_result.js
@@ -38,6 +38,12 @@ classes.B = function() {
 classes.B.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'B', qName: 'classes.B'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('classes.B', classes.B);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/C_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/C_result.js b/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/C_result.js
index 2db65f9..46f094f 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/C_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/interfaces/classes/C_result.js
@@ -38,6 +38,12 @@ classes.C = function() {
 classes.C.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'C', qName: 'classes.C'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('classes.C', classes.C);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/internal/MainClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/internal/MainClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/internal/MainClass_result.js
index 2f5ea28..76b34c5 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/internal/MainClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/internal/MainClass_result.js
@@ -40,6 +40,12 @@ MainClass = function() {
 MainClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'MainClass', qName: 'MainClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('MainClass', MainClass);
+
+
 
 /**
  * Reflection
@@ -89,6 +95,12 @@ MainClass.InternalClass.prototype.foo;
 MainClass.InternalClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'InternalClass', qName: 'MainClass.InternalClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('MainClass.InternalClass', MainClass.InternalClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/internal/OtherClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/internal/OtherClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/internal/OtherClass_result.js
index 732d6fb..2186d65 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/internal/OtherClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/internal/OtherClass_result.js
@@ -38,6 +38,12 @@ OtherClass = function() {
 OtherClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'OtherClass', qName: 'OtherClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('OtherClass', OtherClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/DifferentPackageAsConflict_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/DifferentPackageAsConflict_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/DifferentPackageAsConflict_result.js
index 27239b9..680e048 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/DifferentPackageAsConflict_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/DifferentPackageAsConflict_result.js
@@ -48,6 +48,12 @@ DifferentPackageAsConflict.prototype.testClass;
 DifferentPackageAsConflict.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'DifferentPackageAsConflict', qName: 'DifferentPackageAsConflict'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('DifferentPackageAsConflict', DifferentPackageAsConflict);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/Event_result.js
index 1382eb5..2a536c8 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/Event_result.js
@@ -39,6 +39,12 @@ Event = function() {
 Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Event', Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/mypackage/TestClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/mypackage/TestClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/mypackage/TestClass_result.js
index d181092..16fd128 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/mypackage/TestClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/mypackage/TestClass_result.js
@@ -50,6 +50,12 @@ mypackage.TestClass.prototype.event;
 mypackage.TestClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'TestClass', qName: 'mypackage.TestClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('mypackage.TestClass', mypackage.TestClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/otherpackage/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/otherpackage/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/otherpackage/Event_result.js
index d8ba2eb..b033e7c 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/otherpackage/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_different_package_as_conflict/otherpackage/Event_result.js
@@ -39,6 +39,12 @@ otherpackage.Event = function() {
 otherpackage.Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'otherpackage.Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('otherpackage.Event', otherpackage.Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/Event_result.js
index 1382eb5..2a536c8 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/Event_result.js
@@ -39,6 +39,12 @@ Event = function() {
 Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Event', Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/NoConflictNoWindow_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/NoConflictNoWindow_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/NoConflictNoWindow_result.js
index d0c7888..310f61d 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/NoConflictNoWindow_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/NoConflictNoWindow_result.js
@@ -48,6 +48,12 @@ NoConflictNoWindow.prototype.testClass;
 NoConflictNoWindow.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'NoConflictNoWindow', qName: 'NoConflictNoWindow'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('NoConflictNoWindow', NoConflictNoWindow);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/mypackage/TestClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/mypackage/TestClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/mypackage/TestClass_result.js
index acc3ecf..f091648 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/mypackage/TestClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_no_window/mypackage/TestClass_result.js
@@ -48,6 +48,12 @@ mypackage.TestClass.prototype.event;
 mypackage.TestClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'TestClass', qName: 'mypackage.TestClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('mypackage.TestClass', mypackage.TestClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/Event_result.js
index 1382eb5..2a536c8 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/Event_result.js
@@ -39,6 +39,12 @@ Event = function() {
 Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Event', Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/NoConflictUseWindow_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/NoConflictUseWindow_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/NoConflictUseWindow_result.js
index de67ca1..09dc7d8 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/NoConflictUseWindow_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/NoConflictUseWindow_result.js
@@ -48,6 +48,12 @@ NoConflictUseWindow.prototype.testClass;
 NoConflictUseWindow.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'NoConflictUseWindow', qName: 'NoConflictUseWindow'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('NoConflictUseWindow', NoConflictUseWindow);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/mypackage/TestClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/mypackage/TestClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/mypackage/TestClass_result.js
index acc3ecf..f091648 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/mypackage/TestClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_no_conflict_use_window/mypackage/TestClass_result.js
@@ -48,6 +48,12 @@ mypackage.TestClass.prototype.event;
 mypackage.TestClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'TestClass', qName: 'mypackage.TestClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('mypackage.TestClass', mypackage.TestClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/Event_result.js
index 1382eb5..2a536c8 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/Event_result.js
@@ -39,6 +39,12 @@ Event = function() {
 Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Event', Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/SamePackageAsConflict_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/SamePackageAsConflict_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/SamePackageAsConflict_result.js
index 7d264bc..190077a 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/SamePackageAsConflict_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/SamePackageAsConflict_result.js
@@ -48,6 +48,12 @@ SamePackageAsConflict.prototype.testClass;
 SamePackageAsConflict.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'SamePackageAsConflict', qName: 'SamePackageAsConflict'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('SamePackageAsConflict', SamePackageAsConflict);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/Event_result.js
index 2c62aff..718f1c0 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/Event_result.js
@@ -39,6 +39,12 @@ mypackage.Event = function() {
 mypackage.Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'mypackage.Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('mypackage.Event', mypackage.Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/TestClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/TestClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/TestClass_result.js
index 0950a77..a7b72a7 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/TestClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_same_package_as_conflict/mypackage/TestClass_result.js
@@ -50,6 +50,12 @@ mypackage.TestClass.prototype.event;
 mypackage.TestClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'TestClass', qName: 'mypackage.TestClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('mypackage.TestClass', mypackage.TestClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/Event_result.js
index 1382eb5..2a536c8 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/Event_result.js
@@ -39,6 +39,12 @@ Event = function() {
 Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Event', Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/UseWindow_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/UseWindow_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/UseWindow_result.js
index 162ee47..1660094 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/UseWindow_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/UseWindow_result.js
@@ -48,6 +48,12 @@ UseWindow.prototype.testClass;
 UseWindow.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'UseWindow', qName: 'UseWindow'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('UseWindow', UseWindow);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/mypackage/TestClass_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/mypackage/TestClass_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/mypackage/TestClass_result.js
index 0a15bf8..2342052 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/mypackage/TestClass_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/mypackage/TestClass_result.js
@@ -58,6 +58,12 @@ mypackage.TestClass.prototype.event2;
 mypackage.TestClass.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'TestClass', qName: 'mypackage.TestClass'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('mypackage.TestClass', mypackage.TestClass);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/otherpackage/Event_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/otherpackage/Event_result.js b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/otherpackage/Event_result.js
index d8ba2eb..b033e7c 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/otherpackage/Event_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/package_conflicts_use_window/otherpackage/Event_result.js
@@ -39,6 +39,12 @@ otherpackage.Event = function() {
 otherpackage.Event.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Event', qName: 'otherpackage.Event'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('otherpackage.Event', otherpackage.Event);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/super/Base_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/super/Base_result.js b/compiler.jx.tests/test-files/flexjs/projects/super/Base_result.js
index b30fc00..1306674 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/super/Base_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/super/Base_result.js
@@ -58,6 +58,12 @@ set: /** @this {Base} */ function(value) {
 Base.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Base', qName: 'Base'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Base', Base);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx.tests/test-files/flexjs/projects/super/Super_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/projects/super/Super_result.js b/compiler.jx.tests/test-files/flexjs/projects/super/Super_result.js
index fd3ad66..665c502 100644
--- a/compiler.jx.tests/test-files/flexjs/projects/super/Super_result.js
+++ b/compiler.jx.tests/test-files/flexjs/projects/super/Super_result.js
@@ -59,6 +59,12 @@ set: /** @this {Super} */ function(value) {
 Super.prototype.FLEXJS_CLASS_INFO = { names: [{ name: 'Super', qName: 'Super'}] };
 
 
+/**
+ * Prevent renaming of class. Needed for reflection.
+ */
+goog.exportSymbol('Super', Super);
+
+
 
 /**
  * Reflection

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
index ac4fc8d..67623a9 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/flexjs/JSFlexJSEmitterTokens.java
@@ -28,6 +28,7 @@ public enum JSFlexJSEmitterTokens implements IEmitterTokens
 {
     FLEXJS_CLASS_INFO("FLEXJS_CLASS_INFO"),
     FLEXJS_REFLECTION_INFO("FLEXJS_REFLECTION_INFO"),
+    GOOG_EXPORT_SYMBOL("goog.exportSymbol"),
     INDENT("  "),
     INTERFACES("interfaces"),
     LANGUAGE_QNAME("org.apache.flex.utils.Language"),

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java
index 5b76e4a..ac347d2 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/js/jx/PackageFooterEmitter.java
@@ -152,6 +152,26 @@ public class PackageFooterEmitter extends JSSubEmitter implements
 	    write(ASEmitterTokens.BLOCK_CLOSE);
 	    write(ASEmitterTokens.SEMICOLON);
 
+        if (!(tnode instanceof IInterfaceNode))
+        {
+		    writeNewline();
+		    writeNewline();
+		    writeNewline();
+		    doc.begin();
+		    writeNewline(" * Prevent renaming of class. Needed for reflection.");
+		    doc.end();
+		    write(JSFlexJSEmitterTokens.GOOG_EXPORT_SYMBOL);
+		    write(ASEmitterTokens.PAREN_OPEN);
+		    write(ASEmitterTokens.SINGLE_QUOTE);
+		    write(getEmitter().formatQualifiedName(tnode.getQualifiedName()));
+		    write(ASEmitterTokens.SINGLE_QUOTE);
+		    write(ASEmitterTokens.COMMA);
+		    write(ASEmitterTokens.SPACE);
+		    write(getEmitter().formatQualifiedName(tnode.getQualifiedName()));
+		    write(ASEmitterTokens.PAREN_CLOSE);
+		    write(ASEmitterTokens.SEMICOLON);
+        }
+
 	    collectReflectionData(tnode);
 	    IMetaTagNode[] metadata = null;
 	    IMetaTagsNode metadataTags = tnode.getMetaTags();

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
index 62e7feb..65140bf 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSEmitter.java
@@ -498,6 +498,23 @@ public class MXMLFlexJSEmitter extends MXMLEmitter implements
         write(formatQualifiedName(cname));
         write("' }] };");
         
+	    writeNewline();
+	    writeNewline();
+	    writeNewline();
+        writeNewline("/**");
+	    writeNewline(" * Prevent renaming of class. Needed for reflection.");
+        writeNewline(" */");
+	    write(JSFlexJSEmitterTokens.GOOG_EXPORT_SYMBOL);
+	    write(ASEmitterTokens.PAREN_OPEN);
+	    write(ASEmitterTokens.SINGLE_QUOTE);
+	    write(formatQualifiedName(cname));
+	    write(ASEmitterTokens.SINGLE_QUOTE);
+	    write(ASEmitterTokens.COMMA);
+	    write(ASEmitterTokens.SPACE);
+	    write(formatQualifiedName(cname));
+	    write(ASEmitterTokens.PAREN_CLOSE);
+	    write(ASEmitterTokens.SEMICOLON);
+
         emitReflectionData(cdef);
         writeNewline();
         writeNewline();

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/c051db72/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
----------------------------------------------------------------------
diff --git a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
index 1cf3855..2964250 100644
--- a/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
+++ b/compiler.jx/src/org/apache/flex/compiler/internal/codegen/mxml/flexjs/MXMLFlexJSPublisher.java
@@ -491,8 +491,9 @@ public class MXMLFlexJSPublisher extends JSGoogPublisher implements IJSPublisher
 
     private void appendExportSymbol(String path, String projectName) throws IOException
     {
-        writeFile(path, "\n\n// Ensures the symbol will be visible after compiler renaming.\n" + "goog.exportSymbol('"
-                + projectName + "', " + projectName + ");\n", true);
+    	//every file should already have exportsymbol
+        //writeFile(path, "\n\n// Ensures the symbol will be visible after compiler renaming.\n" + "goog.exportSymbol('"
+        //        + projectName + "', " + projectName + ");\n", true);
     }
 
     private void appendEncodedCSS(String path, String projectName) throws IOException


Mime
View raw message