flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From erikdebr...@apache.org
Subject [06/10] git commit: [flex-falcon] - [FalconJX] renamed and updated test files
Date Fri, 19 Apr 2013 11:55:05 GMT
[FalconJX] renamed and updated test files

The FlexJS test files (slightly modified versions of the FlexJSTest_again example project) were renamed and updated to reflect the latest version of FlexJS.

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>


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

Branch: refs/heads/develop
Commit: 7d794b3462168699a74b5d01cac5456c194e419a
Parents: e6dc403
Author: Erik de Bruin <erik@ixsoftware.nl>
Authored: Fri Apr 19 13:16:33 2013 +0200
Committer: Erik de Bruin <erik@ixsoftware.nl>
Committed: Fri Apr 19 13:16:33 2013 +0200

----------------------------------------------------------------------
 .../flexjs/files/FlexJSTest_2013_03_11.mxml        |   51 -
 .../flexjs/files/FlexJSTest_2013_03_11_result.js   |  195 ----
 .../test-files/flexjs/files/FlexJSTest_again.mxml  |   51 +
 .../flexjs/files/FlexJSTest_again_result.js        |  199 ++++
 .../test-files/flexjs/files/MyController.as        |   92 ++
 .../test-files/flexjs/files/MyController_result.js |  106 ++
 .../test-files/flexjs/files/MyInitialView.mxml     |  125 +++
 .../flexjs/files/MyInitialView_2013_03_11.mxml     |   77 --
 .../files/MyInitialView_2013_03_11_result.js       |  576 ----------
 .../flexjs/files/MyInitialView_result.js           |  869 +++++++++++++++
 .../test-files/flexjs/files/MyModel.as             |   59 +
 .../test-files/flexjs/files/MyModel_result.js      |   63 ++
 12 files changed, 1564 insertions(+), 899 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11.mxml
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11.mxml b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11.mxml
deleted file mode 100644
index 2f3cbbd..0000000
--- a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11.mxml
+++ /dev/null
@@ -1,51 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<basic:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:basic="library://ns.apache.org/flexjs/basic" 
-				   xmlns:models="models.*" 
-				   xmlns:controllers="controllers.*"
-				   initialize="MyModel(model).labelText='Hello World'"
-				   >
-	<basic:valuesImpl>
-		<basic:SimpleCSSValuesImpl />
-	</basic:valuesImpl>
-	<basic:initialView>
-		<local:MyInitialView />
-	</basic:initialView>
-	<basic:model>
-		<models:MyModel />
-	</basic:model>
-	<basic:controller>
-		<controllers:MyController />
-	</basic:controller>
-    <basic:beads>
-        <basic:HTTPService id="service">
-            <basic:LazyCollection id="collection">
-                <basic:inputParser>
-                    <basic:JSONInputParser />
-                </basic:inputParser>
-                <basic:itemConverter>
-                    <local:StockDataJSONItemConverter />
-                </basic:itemConverter> 
-            </basic:LazyCollection>
-        </basic:HTTPService>
-    </basic:beads>
-</basic:Application>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
deleted file mode 100644
index 9c019fc..0000000
--- a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_2013_03_11_result.js
+++ /dev/null
@@ -1,195 +0,0 @@
-goog.provide('FlexJSTest_2013_03_11');
-
-goog.require('org.apache.flex.core.Application');
-goog.require('org.apache.flex.core.SimpleCSSValuesImpl');
-goog.require('MyInitialView');
-goog.require('models.MyModel');
-goog.require('controllers.MyController');
-goog.require('org.apache.flex.net.HTTPService');
-goog.require('org.apache.flex.net.dataConverters.LazyCollection');
-goog.require('org.apache.flex.net.JSONInputParser');
-goog.require('StockDataJSONItemConverter');
-
-/**
- * @constructor
- * @extends {org.apache.flex.core.Application}
- */
-FlexJSTest_2013_03_11 = function() {
-	goog.base(this);
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.core.SimpleCSSValuesImpl}
-	 */
-	this.$ID0;
-	
-	/**
-	 * @private
-	 * @type {MyInitialView}
-	 */
-	this.$ID1;
-	
-	/**
-	 * @private
-	 * @type {models.MyModel}
-	 */
-	this.$ID2;
-	
-	/**
-	 * @private
-	 * @type {controllers.MyController}
-	 */
-	this.$ID3;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.net.HTTPService}
-	 */
-	this.service;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.net.dataConverters.LazyCollection}
-	 */
-	this.collection;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.net.JSONInputParser}
-	 */
-	this.$ID4;
-	
-	/**
-	 * @private
-	 * @type {StockDataJSONItemConverter}
-	 */
-	this.$ID5;
-	
-	/**
-	 * @private
-	 * @type {Array}
-	 */
-	this.mxmldd;
-	
-	/**
-	 * @private
-	 * @type {Array}
-	 */
-	this.mxmldp;
-};
-goog.inherits(FlexJSTest_2013_03_11, org.apache.flex.core.Application);
-
-/**
- * @this {FlexJSTest_2013_03_11}
- * @expose
- * @param {org.apache.flex.events.Event} event
- */
-FlexJSTest_2013_03_11.prototype.$EH0 = function(event)
-{
-	var self = this;
-	this.model/** Cast to models.MyModel */.set_labelText('Hello World');
-};
-
-/**
- * @this {FlexJSTest_2013_03_11}
- * @return {org.apache.flex.net.HTTPService}
- */
-FlexJSTest_2013_03_11.prototype.get_service = function()
-{
-	return this.service;
-};
-
-/**
- * @this {FlexJSTest_2013_03_11}
- * @param {org.apache.flex.net.HTTPService} value
- */
-FlexJSTest_2013_03_11.prototype.set_service = function(value)
-{
-	if (value != this.service)
-		this.service = value;
-};
-
-/**
- * @this {FlexJSTest_2013_03_11}
- * @return {org.apache.flex.net.dataConverters.LazyCollection}
- */
-FlexJSTest_2013_03_11.prototype.get_collection = function()
-{
-	return this.collection;
-};
-
-/**
- * @this {FlexJSTest_2013_03_11}
- * @param {org.apache.flex.net.dataConverters.LazyCollection} value
- */
-FlexJSTest_2013_03_11.prototype.set_collection = function(value)
-{
-	if (value != this.collection)
-		this.collection = value;
-};
-
-/**
- * @override
- * @this {FlexJSTest_2013_03_11}
- * @return {Array} the Array of UI element descriptors.
- */
-FlexJSTest_2013_03_11.prototype.get_MXMLDescriptor = function()
-{
-	if (this.mxmldd == undefined)
-	{
-		/** @type {Array} */
-		var arr = goog.base(this, 'get_MXMLDescriptor');
-		/** @type {Array} */
-		var data = [
-];
-	
-		if (arr)
-			this.mxmldd = arr.concat(data);
-		else
-			this.mxmldd = data;
-	}
-	return this.mxmldd;
-};
-
-/**
- * @override
- * @this {FlexJSTest_2013_03_11}
- * @return {Array} the Array of UI element descriptors.
- */
-FlexJSTest_2013_03_11.prototype.get_MXMLProperties = function()
-{
-	if (this.mxmldp == undefined)
-	{
-		/** @type {Array} */
-		var arr = goog.base(this, 'get_MXMLProperties');
-		/** @type {Array} */
-		var data = [
-5,
-'model',
-false,
-[models.MyModel, 1, '_id', true, '$ID2', 0, 0, null],
-'valuesImpl',
-false,
-[org.apache.flex.core.SimpleCSSValuesImpl, 1, '_id', true, '$ID0', 0, 0, null],
-'initialView',
-false,
-[MyInitialView, 1, '_id', true, '$ID1', 0, 0, null],
-'controller',
-false,
-[controllers.MyController, 1, '_id', true, '$ID3', 0, 0, null],
-'beads',
-null, [org.apache.flex.net.HTTPService, 2, 'id', true, 'service', 'beads', null, [org.apache.flex.net.dataConverters.LazyCollection, 3, 'id', true, 'collection', 'inputParser', false, [org.apache.flex.net.JSONInputParser, 1, '_id', true, '$ID4', 0, 0, null], 'itemConverter', false, [StockDataJSONItemConverter, 1, '_id', true, '$ID5', 0, 0, null], 0, 0, null], 0, 0, null],
-0,
-1,
-'initialize',
-this.$EH0
-];
-	
-		if (arr)
-			this.mxmldp = arr.concat(data);
-		else
-			this.mxmldp = data;
-	}
-	return this.mxmldp;
-};
-

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again.mxml
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again.mxml b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again.mxml
new file mode 100644
index 0000000..2f3cbbd
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again.mxml
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<basic:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:basic="library://ns.apache.org/flexjs/basic" 
+				   xmlns:models="models.*" 
+				   xmlns:controllers="controllers.*"
+				   initialize="MyModel(model).labelText='Hello World'"
+				   >
+	<basic:valuesImpl>
+		<basic:SimpleCSSValuesImpl />
+	</basic:valuesImpl>
+	<basic:initialView>
+		<local:MyInitialView />
+	</basic:initialView>
+	<basic:model>
+		<models:MyModel />
+	</basic:model>
+	<basic:controller>
+		<controllers:MyController />
+	</basic:controller>
+    <basic:beads>
+        <basic:HTTPService id="service">
+            <basic:LazyCollection id="collection">
+                <basic:inputParser>
+                    <basic:JSONInputParser />
+                </basic:inputParser>
+                <basic:itemConverter>
+                    <local:StockDataJSONItemConverter />
+                </basic:itemConverter> 
+            </basic:LazyCollection>
+        </basic:HTTPService>
+    </basic:beads>
+</basic:Application>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/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
new file mode 100644
index 0000000..0e9dc85
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/FlexJSTest_again_result.js
@@ -0,0 +1,199 @@
+goog.provide('FlexJSTest_again');
+
+goog.require('org.apache.flex.core.Application');
+goog.require('org.apache.flex.core.SimpleCSSValuesImpl');
+goog.require('MyInitialView');
+goog.require('models.MyModel');
+goog.require('controllers.MyController');
+goog.require('org.apache.flex.net.HTTPService');
+goog.require('org.apache.flex.net.dataConverters.LazyCollection');
+goog.require('org.apache.flex.net.JSONInputParser');
+goog.require('StockDataJSONItemConverter');
+goog.require('org.apache.flex.events.Event');
+
+/**
+ * @constructor
+ * @extends {org.apache.flex.core.Application}
+ */
+FlexJSTest_again = function() {
+	goog.base(this);
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.core.SimpleCSSValuesImpl}
+	 */
+	this.$ID0;
+	
+	/**
+	 * @private
+	 * @type {MyInitialView}
+	 */
+	this.$ID1;
+	
+	/**
+	 * @private
+	 * @type {models.MyModel}
+	 */
+	this.$ID2;
+	
+	/**
+	 * @private
+	 * @type {controllers.MyController}
+	 */
+	this.$ID3;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.net.HTTPService}
+	 */
+	this.service;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.net.dataConverters.LazyCollection}
+	 */
+	this.collection;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.net.JSONInputParser}
+	 */
+	this.$ID4;
+	
+	/**
+	 * @private
+	 * @type {StockDataJSONItemConverter}
+	 */
+	this.$ID5;
+	
+	/**
+	 * @private
+	 * @type {Array}
+	 */
+	this.mxmldd;
+	
+	/**
+	 * @private
+	 * @type {Array}
+	 */
+	this.mxmldp;
+};
+goog.inherits(FlexJSTest_again, org.apache.flex.core.Application);
+
+/**
+ * @this {FlexJSTest_again}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+FlexJSTest_again.prototype.$EH0 = function(event)
+{
+	this.model/** Cast to models.MyModel */.set_labelText('Hello World');
+};
+
+/**
+ * @expose
+ * @this {FlexJSTest_again}
+ * @return {org.apache.flex.net.HTTPService}
+ */
+FlexJSTest_again.prototype.get_service = function()
+{
+	return this.service;
+};
+
+/**
+ * @expose
+ * @this {FlexJSTest_again}
+ * @param {org.apache.flex.net.HTTPService} value
+ */
+FlexJSTest_again.prototype.set_service = function(value)
+{
+	if (value != this.service)
+		this.service = value;
+};
+
+/**
+ * @expose
+ * @this {FlexJSTest_again}
+ * @return {org.apache.flex.net.dataConverters.LazyCollection}
+ */
+FlexJSTest_again.prototype.get_collection = function()
+{
+	return this.collection;
+};
+
+/**
+ * @expose
+ * @this {FlexJSTest_again}
+ * @param {org.apache.flex.net.dataConverters.LazyCollection} value
+ */
+FlexJSTest_again.prototype.set_collection = function(value)
+{
+	if (value != this.collection)
+		this.collection = value;
+};
+
+/**
+ * @override
+ * @this {FlexJSTest_again}
+ * @return {Array} the Array of UI element descriptors.
+ */
+FlexJSTest_again.prototype.get_MXMLDescriptor = function()
+{
+	if (this.mxmldd == undefined)
+	{
+		/** @type {Array} */
+		var arr = goog.base(this, 'get_MXMLDescriptor');
+		/** @type {Array} */
+		var data = [
+];
+	
+		if (arr)
+			this.mxmldd = arr.concat(data);
+		else
+			this.mxmldd = data;
+	}
+	return this.mxmldd;
+};
+
+/**
+ * @override
+ * @this {FlexJSTest_again}
+ * @return {Array} the Array of UI element descriptors.
+ */
+FlexJSTest_again.prototype.get_MXMLProperties = function()
+{
+	if (this.mxmldp == undefined)
+	{
+		/** @type {Array} */
+		var arr = goog.base(this, 'get_MXMLProperties');
+		/** @type {Array} */
+		var data = [
+5,
+'model',
+false,
+[models.MyModel, 1, '_id', true, '$ID2', 0, 0, null],
+'valuesImpl',
+false,
+[org.apache.flex.core.SimpleCSSValuesImpl, 1, '_id', true, '$ID0', 0, 0, null],
+'initialView',
+false,
+[MyInitialView, 1, '_id', true, '$ID1', 0, 0, null],
+'controller',
+false,
+[controllers.MyController, 1, '_id', true, '$ID3', 0, 0, null],
+'beads',
+null, [org.apache.flex.net.HTTPService, 2, 'id', true, 'service', 'beads', null, [org.apache.flex.net.dataConverters.LazyCollection, 3, 'id', true, 'collection', 'inputParser', false, [org.apache.flex.net.JSONInputParser, 1, '_id', true, '$ID4', 0, 0, null], 'itemConverter', false, [StockDataJSONItemConverter, 1, '_id', true, '$ID5', 0, 0, null], 0, 0, null], 0, 0, null],
+0,
+1,
+'initialize',
+this.$EH0
+];
+	
+		if (arr)
+			this.mxmldp = arr.concat(data);
+		else
+			this.mxmldp = data;
+	}
+	return this.mxmldp;
+};
+

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyController.as
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyController.as b/compiler.jx.tests/test-files/flexjs/files/MyController.as
new file mode 100644
index 0000000..d7b0547
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/MyController.as
@@ -0,0 +1,92 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 controllers
+{
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IDocument;
+	import org.apache.flex.events.Event;
+	
+	
+	import models.MyModel;
+	
+	public class MyController implements IDocument
+	{
+		public function MyController(app:Application = null)
+		{
+			if (app)
+			{
+				this.app = app as FlexJSTest_again;
+				app.addEventListener("viewChanged", viewChangeHandler);
+			}
+		}
+		
+		private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+		private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+		private var app:FlexJSTest_again;
+		
+		private function viewChangeHandler(event:Event):void
+		{
+			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
+			app.initialView.addEventListener("listChanged", listChangedHandler);
+			app.initialView.addEventListener("cityListChanged", cityListChangeHandler);
+			app.initialView.addEventListener("transferClicked", transferClickHandler);
+			app.initialView.addEventListener("comboBoxChanged", comboBoxChangeHandler);
+		}
+		
+		private function buttonClickHandler(event:Event):void
+		{
+			var sym:String = MyInitialView(app.initialView).symbol;
+			app.service.url = queryBegin + sym + queryEnd;
+			app.service.send();
+			app.service.addEventListener("complete", completeHandler);
+		}
+		
+		private function completeHandler(event:Event):void
+		{
+			MyModel(app.model).labelText = app.collection.getItemAt(0) as String;
+		}
+		
+		private function listChangedHandler(event:Event):void
+		{
+			MyModel(app.model).labelText = MyInitialView(app.initialView).symbol;
+		}
+		
+		private function cityListChangeHandler(event:Event):void
+		{
+			MyModel(app.model).labelText = MyInitialView(app.initialView).city;
+		}
+		
+		private function transferClickHandler(event:Event):void
+		{
+			MyModel(app.model).labelText = MyInitialView(app.initialView).inputText;
+		}
+		
+		private function comboBoxChangeHandler(event:Event):void
+		{
+			MyModel(app.model).labelText = MyInitialView(app.initialView).comboBoxValue;
+		}
+		
+		public function setDocument(document:Object, id:String = null):void
+		{
+			this.app = document as FlexJSTest_again;
+			app.addEventListener("viewChanged", viewChangeHandler);
+		}
+		
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyController_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyController_result.js b/compiler.jx.tests/test-files/flexjs/files/MyController_result.js
new file mode 100644
index 0000000..1fb0156
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/MyController_result.js
@@ -0,0 +1,106 @@
+goog.provide('controllers.MyController');
+
+/**
+ * @constructor
+ * @implements {org.apache.flex.core.IDocument}
+ * @param {org.apache.flex.core.Application=} app
+ */
+controllers.MyController = function(app) {
+	app = typeof app !== 'undefined' ? app : null;
+	if (app) {
+		this.app = (is(app, FlexJSTest_again) ? app : null);
+		app.addEventListener("viewChanged", goog.bind(this.viewChangeHandler, this));
+	}
+};
+
+/**
+ * @private
+ * @type {string}
+ */
+controllers.MyController.prototype.queryBegin = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+
+/**
+ * @private
+ * @type {string}
+ */
+controllers.MyController.prototype.queryEnd = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+
+/**
+ * @private
+ * @type {FlexJSTest_again}
+ */
+controllers.MyController.prototype.app;
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.viewChangeHandler = function(event) {
+	this.app.initialView.addEventListener("buttonClicked", goog.bind(this.buttonClickHandler, this));
+	this.app.initialView.addEventListener("listChanged", goog.bind(this.listChangedHandler, this));
+	this.app.initialView.addEventListener("cityListChanged", goog.bind(this.cityListChangeHandler, this));
+	this.app.initialView.addEventListener("transferClicked", goog.bind(this.transferClickHandler, this));
+	this.app.initialView.addEventListener("comboBoxChanged", goog.bind(this.comboBoxChangeHandler, this));
+};
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.buttonClickHandler = function(event) {
+	var /** @type {string} */ sym = this.app.initialView/** Cast to MyInitialView */.get_symbol();
+	this.app.get_service().set_url(this.queryBegin + sym + this.queryEnd);
+	this.app.get_service().send();
+	this.app.get_service().addEventListener("complete", goog.bind(this.completeHandler, this));
+};
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.completeHandler = function(event) {
+	this.app.model/** Cast to models.MyModel */.set_labelText((is(this.app.get_collection().getItemAt(0), String) ? this.app.get_collection().getItemAt(0) : null));
+};
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.listChangedHandler = function(event) {
+	this.app.model/** Cast to models.MyModel */.set_labelText(this.app.initialView/** Cast to MyInitialView */.get_symbol());
+};
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.cityListChangeHandler = function(event) {
+	this.app.model/** Cast to models.MyModel */.set_labelText(this.app.initialView/** Cast to MyInitialView */.get_city());
+};
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.transferClickHandler = function(event) {
+	this.app.model/** Cast to models.MyModel */.set_labelText(this.app.initialView/** Cast to MyInitialView */.get_inputText());
+};
+
+/**
+ * @private
+ * @param {org.apache.flex.events.Event} event
+ */
+controllers.MyController.prototype.comboBoxChangeHandler = function(event) {
+	this.app.model/** Cast to models.MyModel */.set_labelText(this.app.initialView/** Cast to MyInitialView */.get_comboBoxValue());
+};
+
+/**
+ * @expose
+ * @param {Object} document
+ * @param {string=} id
+ */
+controllers.MyController.prototype.setDocument = function(document, id) {
+	id = typeof id !== 'undefined' ? id : null;
+	this.app = (is(document, FlexJSTest_again) ? document : null);
+	this.app.addEventListener("viewChanged", goog.bind(this.viewChangeHandler, this));
+};
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyInitialView.mxml b/compiler.jx.tests/test-files/flexjs/files/MyInitialView.mxml
new file mode 100644
index 0000000..69fdf71
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/MyInitialView.mxml
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<basic:ViewBase xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:basic="library://ns.apache.org/flexjs/basic" 
+			   >
+    <fx:Script>
+        <![CDATA[            
+			import org.apache.flex.events.CustomEvent;
+			import org.apache.flex.events.Event;
+			import org.apache.flex.utils.Timer;
+			
+			private var timer:org.apache.flex.utils.Timer;
+			
+			public function get symbol():String
+			{
+				return list.selectedItem as String;
+			}
+			
+			public function get city():String
+			{
+				return cityList.selectedItem as String;
+			}
+			
+			public function get inputText():String
+			{
+				return input.text;
+			}
+			
+			public function get comboBoxValue():String
+			{
+				return String(comboBox.selectedItem);
+			}
+			
+			public function startTimer():void
+			{
+				timer = new org.apache.flex.utils.Timer(1000);
+				timer.addEventListener('timer', timerHandler);
+				timer.start()				
+			}
+			
+			public function timerHandler(event:org.apache.flex.events.Event):void
+			{
+				timerLabel.text = timer.currentCount.toString();	
+			}
+        ]]>
+    </fx:Script>
+	<basic:Label id="lbl" x="100" y="25" >
+		<basic:beads>
+			<basic:SimpleBinding eventName="labelTextChanged"
+								 sourceID="applicationModel"
+								 sourcePropertyName="labelText"
+								 destinationPropertyName="text" />
+		</basic:beads>
+	</basic:Label>
+	<basic:TextButton text="Start Timer" x="100" y="75" click="startTimer()" />
+	<basic:TextButton text="Stop Timer" x="100" y="100" click="timer.removeEventListener('timer', timerHandler);timer.stop()" />
+	<basic:Label id="timerLabel" x="100" y="125" />
+	
+	<basic:List id="cityList"  x="200" y="75" width="100" height="75" change="dispatchEvent(new CustomEvent('cityListChanged'))">
+		<basic:beads>
+			<basic:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="cities"
+				destinationPropertyName="dataProvider" />
+		</basic:beads>
+	</basic:List>
+	
+	<basic:TextArea x="320" y="25" width="150" height="75">
+		<basic:beads>
+			<basic:SimpleBinding eventName="labelTextChanged"
+								 sourceID="applicationModel"
+								 sourcePropertyName="labelText"
+								 destinationPropertyName="text" />
+		</basic:beads>
+	</basic:TextArea>
+	<basic:TextInput id="input" x="320" y="110" />
+	<basic:TextButton text="Transfer" x="320" y="138" click="dispatchEvent(new CustomEvent('transferClicked'))" />
+	
+	<basic:CheckBox id="checkbox" x="320" y="170" text="Check Me" />
+	
+	<basic:RadioButton groupName="group1" text="Apples" value="0" x="100" y="150" />
+	<basic:RadioButton groupName="group1" text="Oranges" value="1" x="100" y="170" selected="true" />
+	<basic:RadioButton groupName="group1" text="Grapes" value="2" x="100" y="190" />
+	
+	<basic:RadioButton groupName="group2" text="Red" value="red" x="100" y="250" selected="true" />
+	<basic:RadioButton groupName="group2" text="Green" value="green" x="100" y="270" />
+	<basic:RadioButton groupName="group2" text="Blue" value="blue" x="100" y="290"  />
+	
+	<basic:DropDownList id="list" x="200" y="200" width="100" height="24" change="dispatchEvent(new CustomEvent('listChanged'))">
+		<basic:beads>
+			<basic:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="strings"
+				destinationPropertyName="dataProvider" />
+		</basic:beads>
+	</basic:DropDownList>
+	<basic:TextButton text="OK" x="200" y="230" click="dispatchEvent(new CustomEvent('buttonClicked'))" />
+	
+	<basic:ComboBox id="comboBox" x="320" y="200" width="100" change="dispatchEvent(new CustomEvent('comboBoxChanged'))">
+		<basic:beads>
+			<basic:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="cities"
+				destinationPropertyName="dataProvider" />
+		</basic:beads>
+	</basic:ComboBox>
+    
+</basic:ViewBase>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11.mxml
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11.mxml b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11.mxml
deleted file mode 100644
index 3285084..0000000
--- a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11.mxml
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<basic:ViewBase xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:basic="library://ns.apache.org/flexjs/basic" 
-			   >
-    <fx:Script>
-        <![CDATA[            
-            public function get symbol():String
-            {
-                return list.selectedItem as String;
-            }
-            
-            public function get inputText():String
-            {
-            	return input.text;
-            }
-        ]]>
-    </fx:Script>
-	<basic:Label id="lbl" x="100" y="25" >
-		<basic:beads>
-			<basic:SimpleBinding eventName="labelTextChanged"
-								 sourceID="applicationModel"
-								 sourcePropertyName="labelText"
-								 destinationPropertyName="text" />
-		</basic:beads>
-	</basic:Label>
-	<basic:TextButton text="OK" x="100" y="50" click="dispatchEvent(new Event('buttonClicked'))" />
-    <basic:List id="list" x="200" y="25" width="100" height="200" change="dispatchEvent(new Event('listChanged'))">
-        <basic:beads>
-            <basic:ConstantBinding
-                                 sourceID="applicationModel"
-                                 sourcePropertyName="strings"
-                                 destinationPropertyName="dataProvider" />
-        </basic:beads>
-    </basic:List>
-    
-    
-    <basic:TextArea x="320" y="25" width="150" height="75">
-		<basic:beads>
-			<basic:SimpleBinding eventName="labelTextChanged"
-								 sourceID="applicationModel"
-								 sourcePropertyName="labelText"
-								 destinationPropertyName="text" />
-		</basic:beads>
-    </basic:TextArea>
-    <basic:TextInput id="input" x="320" y="110" />
-    <basic:TextButton text="Transfer" x="320" y="138" click="dispatchEvent(new Event('transferClicked'))" />
-    
-    <basic:CheckBox id="checkbox" x="320" y="170" text="Check Me" />
-    
-    <basic:RadioButton groupName="group1" text="Apples" value="0" x="100" y="130" />
-    <basic:RadioButton groupName="group1" text="Oranges" value="1" x="100" y="150" selected="true" />
-    <basic:RadioButton groupName="group1" text="Grapes" value="2" x="100" y="170" />
-    
-    <basic:RadioButton groupName="group2" text="Red" value="red" x="100" y="230" selected="true" />
-    <basic:RadioButton groupName="group2" text="Green" value="green" x="100" y="250" />
-    <basic:RadioButton groupName="group2" text="Blue" value="blue" x="100" y="270"  />
-    
-    
-</basic:ViewBase>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
deleted file mode 100644
index dc1f4dc..0000000
--- a/compiler.jx.tests/test-files/flexjs/files/MyInitialView_2013_03_11_result.js
+++ /dev/null
@@ -1,576 +0,0 @@
-goog.provide('MyInitialView_2013_03_11');
-
-goog.require('org.apache.flex.core.ViewBase');
-goog.require('org.apache.flex.html.staticControls.Label');
-goog.require('org.apache.flex.binding.SimpleBinding');
-goog.require('org.apache.flex.html.staticControls.TextButton');
-goog.require('org.apache.flex.html.staticControls.List');
-goog.require('org.apache.flex.binding.ConstantBinding');
-goog.require('org.apache.flex.html.staticControls.TextArea');
-goog.require('org.apache.flex.html.staticControls.TextInput');
-goog.require('org.apache.flex.html.staticControls.CheckBox');
-goog.require('org.apache.flex.html.staticControls.RadioButton');
-
-/**
- * @constructor
- * @extends {org.apache.flex.core.ViewBase}
- */
-MyInitialView_2013_03_11 = function() {
-	goog.base(this);
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.Label}
-	 */
-	this.lbl;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.binding.SimpleBinding}
-	 */
-	this.$ID0;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.TextButton}
-	 */
-	this.$ID1;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.List}
-	 */
-	this.list;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.binding.ConstantBinding}
-	 */
-	this.$ID2;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.TextArea}
-	 */
-	this.$ID3;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.binding.SimpleBinding}
-	 */
-	this.$ID4;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.TextInput}
-	 */
-	this.input;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.TextButton}
-	 */
-	this.$ID5;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.CheckBox}
-	 */
-	this.checkbox;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.RadioButton}
-	 */
-	this.$ID6;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.RadioButton}
-	 */
-	this.$ID7;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.RadioButton}
-	 */
-	this.$ID8;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.RadioButton}
-	 */
-	this.$ID9;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.RadioButton}
-	 */
-	this.$ID10;
-	
-	/**
-	 * @private
-	 * @type {org.apache.flex.html.staticControls.RadioButton}
-	 */
-	this.$ID11;
-	
-	/**
-	 * @private
-	 * @type {Array}
-	 */
-	this.mxmldd;
-	
-	/**
-	 * @private
-	 * @type {Array}
-	 */
-	this.mxmldp;
-};
-goog.inherits(MyInitialView_2013_03_11, org.apache.flex.core.ViewBase);
-
-/**
- * @return {string}
- */
-MyInitialView_2013_03_11.prototype.get_symbol = function() {
-	var self = this;
-	return (is(self.list.get_selectedItem(), String) ? self.list.get_selectedItem() : null);
-};
-
-/**
- * @return {string}
- */
-MyInitialView_2013_03_11.prototype.get_inputText = function() {
-	var self = this;
-	return self.input.get_text();
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @expose
- * @param {org.apache.flex.events.Event} event
- */
-MyInitialView_2013_03_11.prototype.$EH0 = function(event)
-{
-	var self = this;
-	this.dispatchEvent(new flash.events.Event('buttonClicked'));
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @expose
- * @param {org.apache.flex.events.Event} event
- */
-MyInitialView_2013_03_11.prototype.$EH1 = function(event)
-{
-	var self = this;
-	this.dispatchEvent(new flash.events.Event('listChanged'));
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @expose
- * @param {org.apache.flex.events.Event} event
- */
-MyInitialView_2013_03_11.prototype.$EH2 = function(event)
-{
-	var self = this;
-	this.dispatchEvent(new flash.events.Event('transferClicked'));
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @return {org.apache.flex.html.staticControls.Label}
- */
-MyInitialView_2013_03_11.prototype.get_lbl = function()
-{
-	return this.lbl;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @param {org.apache.flex.html.staticControls.Label} value
- */
-MyInitialView_2013_03_11.prototype.set_lbl = function(value)
-{
-	if (value != this.lbl)
-		this.lbl = value;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @return {org.apache.flex.html.staticControls.List}
- */
-MyInitialView_2013_03_11.prototype.get_list = function()
-{
-	return this.list;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @param {org.apache.flex.html.staticControls.List} value
- */
-MyInitialView_2013_03_11.prototype.set_list = function(value)
-{
-	if (value != this.list)
-		this.list = value;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @return {org.apache.flex.html.staticControls.TextInput}
- */
-MyInitialView_2013_03_11.prototype.get_input = function()
-{
-	return this.input;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @param {org.apache.flex.html.staticControls.TextInput} value
- */
-MyInitialView_2013_03_11.prototype.set_input = function(value)
-{
-	if (value != this.input)
-		this.input = value;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @return {org.apache.flex.html.staticControls.CheckBox}
- */
-MyInitialView_2013_03_11.prototype.get_checkbox = function()
-{
-	return this.checkbox;
-};
-
-/**
- * @this {MyInitialView_2013_03_11}
- * @param {org.apache.flex.html.staticControls.CheckBox} value
- */
-MyInitialView_2013_03_11.prototype.set_checkbox = function(value)
-{
-	if (value != this.checkbox)
-		this.checkbox = value;
-};
-
-/**
- * @override
- * @this {MyInitialView_2013_03_11}
- * @return {Array} the Array of UI element descriptors.
- */
-MyInitialView_2013_03_11.prototype.get_MXMLDescriptor = function()
-{
-	if (this.mxmldd == undefined)
-	{
-		/** @type {Array} */
-		var arr = goog.base(this, 'get_MXMLDescriptor');
-		/** @type {Array} */
-		var data = [
-org.apache.flex.html.staticControls.Label,
-4,
-'id',
-true,
-'lbl',
-'y',
-true,
-25,
-'x',
-true,
-100,
-'beads',
-null, [org.apache.flex.binding.SimpleBinding, 5, '_id', true, '$ID0', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'labelText', 'eventName', true, 'labelTextChanged', 'destinationPropertyName', true, 'text', 0, 0, null],
-0,
-0,
-null,
-org.apache.flex.html.staticControls.TextButton,
-4,
-'_id',
-true,
-'$ID1',
-'text',
-true,
-'OK',
-'y',
-true,
-50,
-'x',
-true,
-100,
-0,
-1,
-'click',
-this.$EH0,
-null,
-org.apache.flex.html.staticControls.List,
-6,
-'id',
-true,
-'list',
-'height',
-true,
-200,
-'width',
-true,
-100,
-'y',
-true,
-25,
-'x',
-true,
-200,
-'beads',
-null, [org.apache.flex.binding.ConstantBinding, 4, '_id', true, '$ID2', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'strings', 'destinationPropertyName', true, 'dataProvider', 0, 0, null],
-0,
-1,
-'change',
-this.$EH1,
-null,
-org.apache.flex.html.staticControls.TextArea,
-6,
-'_id',
-true,
-'$ID3',
-'height',
-true,
-75,
-'width',
-true,
-150,
-'y',
-true,
-25,
-'x',
-true,
-320,
-'beads',
-null, [org.apache.flex.binding.SimpleBinding, 5, '_id', true, '$ID4', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'labelText', 'eventName', true, 'labelTextChanged', 'destinationPropertyName', true, 'text', 0, 0, null],
-0,
-0,
-null,
-org.apache.flex.html.staticControls.TextInput,
-3,
-'id',
-true,
-'input',
-'y',
-true,
-110,
-'x',
-true,
-320,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.TextButton,
-4,
-'_id',
-true,
-'$ID5',
-'text',
-true,
-'Transfer',
-'y',
-true,
-138,
-'x',
-true,
-320,
-0,
-1,
-'click',
-this.$EH2,
-null,
-org.apache.flex.html.staticControls.CheckBox,
-4,
-'id',
-true,
-'checkbox',
-'text',
-true,
-'Check Me',
-'y',
-true,
-170,
-'x',
-true,
-320,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.RadioButton,
-6,
-'_id',
-true,
-'$ID6',
-'text',
-true,
-'Apples',
-'groupName',
-true,
-'group1',
-'value',
-true,
-0,
-'y',
-true,
-130,
-'x',
-true,
-100,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.RadioButton,
-7,
-'_id',
-true,
-'$ID7',
-'selected',
-true,
-true,
-'text',
-true,
-'Oranges',
-'groupName',
-true,
-'group1',
-'value',
-true,
-1,
-'y',
-true,
-150,
-'x',
-true,
-100,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.RadioButton,
-6,
-'_id',
-true,
-'$ID8',
-'text',
-true,
-'Grapes',
-'groupName',
-true,
-'group1',
-'value',
-true,
-2,
-'y',
-true,
-170,
-'x',
-true,
-100,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.RadioButton,
-7,
-'_id',
-true,
-'$ID9',
-'selected',
-true,
-true,
-'text',
-true,
-'Red',
-'groupName',
-true,
-'group2',
-'value',
-true,
-16711680,
-'y',
-true,
-230,
-'x',
-true,
-100,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.RadioButton,
-6,
-'_id',
-true,
-'$ID10',
-'text',
-true,
-'Green',
-'groupName',
-true,
-'group2',
-'value',
-true,
-32768,
-'y',
-true,
-250,
-'x',
-true,
-100,
-0,
-0,
-null,
-org.apache.flex.html.staticControls.RadioButton,
-6,
-'_id',
-true,
-'$ID11',
-'text',
-true,
-'Blue',
-'groupName',
-true,
-'group2',
-'value',
-true,
-255,
-'y',
-true,
-270,
-'x',
-true,
-100,
-0,
-0,
-null
-];
-	
-		if (arr)
-			this.mxmldd = arr.concat(data);
-		else
-			this.mxmldd = data;
-	}
-	return this.mxmldd;
-};
-
-/**
- * @override
- * @this {MyInitialView_2013_03_11}
- * @return {Array} the Array of UI element descriptors.
- */
-MyInitialView_2013_03_11.prototype.get_MXMLProperties = function()
-{
-	if (this.mxmldp == undefined)
-	{
-		/** @type {Array} */
-		var arr = goog.base(this, 'get_MXMLProperties');
-		/** @type {Array} */
-		var data = [
-];
-	
-		if (arr)
-			this.mxmldp = arr.concat(data);
-		else
-			this.mxmldp = data;
-	}
-	return this.mxmldp;
-};
-

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/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
new file mode 100644
index 0000000..a546188
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/MyInitialView_result.js
@@ -0,0 +1,869 @@
+goog.provide('MyInitialView');
+
+goog.require('org.apache.flex.core.ViewBase');
+goog.require('org.apache.flex.html.staticControls.Label');
+goog.require('org.apache.flex.binding.SimpleBinding');
+goog.require('org.apache.flex.html.staticControls.TextButton');
+goog.require('org.apache.flex.html.staticControls.List');
+goog.require('org.apache.flex.binding.ConstantBinding');
+goog.require('org.apache.flex.html.staticControls.TextArea');
+goog.require('org.apache.flex.html.staticControls.TextInput');
+goog.require('org.apache.flex.html.staticControls.CheckBox');
+goog.require('org.apache.flex.html.staticControls.RadioButton');
+goog.require('org.apache.flex.html.staticControls.DropDownList');
+goog.require('org.apache.flex.html.staticControls.ComboBox');
+goog.require('org.apache.flex.events.Event');
+goog.require('flash.events.Event');
+goog.require('org.apache.flex.utils.Timer');
+goog.require('org.apache.flex.events.CustomEvent');
+
+/**
+ * @constructor
+ * @extends {org.apache.flex.core.ViewBase}
+ */
+MyInitialView = function() {
+	goog.base(this);
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.Label}
+	 */
+	this.lbl;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.binding.SimpleBinding}
+	 */
+	this.$ID0;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.TextButton}
+	 */
+	this.$ID1;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.TextButton}
+	 */
+	this.$ID2;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.Label}
+	 */
+	this.timerLabel;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.List}
+	 */
+	this.cityList;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.binding.ConstantBinding}
+	 */
+	this.$ID3;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.TextArea}
+	 */
+	this.$ID4;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.binding.SimpleBinding}
+	 */
+	this.$ID5;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.TextInput}
+	 */
+	this.input;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.TextButton}
+	 */
+	this.$ID6;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.CheckBox}
+	 */
+	this.checkbox;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.RadioButton}
+	 */
+	this.$ID7;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.RadioButton}
+	 */
+	this.$ID8;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.RadioButton}
+	 */
+	this.$ID9;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.RadioButton}
+	 */
+	this.$ID10;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.RadioButton}
+	 */
+	this.$ID11;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.RadioButton}
+	 */
+	this.$ID12;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.DropDownList}
+	 */
+	this.list;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.binding.ConstantBinding}
+	 */
+	this.$ID13;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.TextButton}
+	 */
+	this.$ID14;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.html.staticControls.ComboBox}
+	 */
+	this.comboBox;
+	
+	/**
+	 * @private
+	 * @type {org.apache.flex.binding.ConstantBinding}
+	 */
+	this.$ID15;
+	
+	/**
+	 * @private
+	 * @type {Array}
+	 */
+	this.mxmldd;
+	
+	/**
+	 * @private
+	 * @type {Array}
+	 */
+	this.mxmldp;
+};
+goog.inherits(MyInitialView, org.apache.flex.core.ViewBase);
+
+/**
+ * @private
+ * @type {org.apache.flex.utils.org.apache.flex.utils.Timer}
+ */
+MyInitialView.prototype.timer;
+
+/**
+ * @expose
+ * @return {string}
+ */
+MyInitialView.prototype.get_symbol = function() {
+	return (is(this.get_list().get_selectedItem(), String) ? this.get_list().get_selectedItem() : null);
+};
+
+/**
+ * @expose
+ * @return {string}
+ */
+MyInitialView.prototype.get_city = function() {
+	return (is(this.get_cityList().get_selectedItem(), String) ? this.get_cityList().get_selectedItem() : null);
+};
+
+/**
+ * @expose
+ * @return {string}
+ */
+MyInitialView.prototype.get_inputText = function() {
+	return this.get_input().get_text();
+};
+
+/**
+ * @expose
+ * @return {string}
+ */
+MyInitialView.prototype.get_comboBoxValue = function() {
+	return String(this.get_comboBox().get_selectedItem());
+};
+
+/**
+ * @expose
+ */
+MyInitialView.prototype.startTimer = function() {
+	this.timer = new org.apache.flex.utils.Timer(1000);
+	this.timer.addEventListener('timer', goog.bind(this.timerHandler, this));
+	this.timer.start();
+};
+
+/**
+ * @expose
+ * @param {org.apache.flex.events.org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.timerHandler = function(event) {
+	this.get_timerLabel().set_text(this.timer.get_currentCount().toString());
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.$EH0 = function(event)
+{
+	this.startTimer();
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.$EH1 = function(event)
+{
+	this.timer.removeEventListener('timer', goog.bind(this.timerHandler, this));
+	this.timer.stop();
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.$EH2 = function(event)
+{
+	this.dispatchEvent(new org.apache.flex.events.CustomEvent('cityListChanged'));
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.$EH3 = function(event)
+{
+	this.dispatchEvent(new org.apache.flex.events.CustomEvent('transferClicked'));
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.$EH4 = function(event)
+{
+	this.dispatchEvent(new org.apache.flex.events.CustomEvent('listChanged'));
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {org.apache.flex.events.Event} event
+ */
+MyInitialView.prototype.$EH5 = function(event)
+{
+	this.dispatchEvent(new org.apache.flex.events.CustomEvent('buttonClicked'));
+};
+
+/**
+ * @this {MyInitialView}
+ * @expose
+ * @param {flash.events.Event} event
+ */
+MyInitialView.prototype.$EH6 = function(event)
+{
+	this.dispatchEvent(new org.apache.flex.events.CustomEvent('comboBoxChanged'));
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.Label}
+ */
+MyInitialView.prototype.get_lbl = function()
+{
+	return this.lbl;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.Label} value
+ */
+MyInitialView.prototype.set_lbl = function(value)
+{
+	if (value != this.lbl)
+		this.lbl = value;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.Label}
+ */
+MyInitialView.prototype.get_timerLabel = function()
+{
+	return this.timerLabel;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.Label} value
+ */
+MyInitialView.prototype.set_timerLabel = function(value)
+{
+	if (value != this.timerLabel)
+		this.timerLabel = value;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.List}
+ */
+MyInitialView.prototype.get_cityList = function()
+{
+	return this.cityList;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.List} value
+ */
+MyInitialView.prototype.set_cityList = function(value)
+{
+	if (value != this.cityList)
+		this.cityList = value;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.TextInput}
+ */
+MyInitialView.prototype.get_input = function()
+{
+	return this.input;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.TextInput} value
+ */
+MyInitialView.prototype.set_input = function(value)
+{
+	if (value != this.input)
+		this.input = value;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.CheckBox}
+ */
+MyInitialView.prototype.get_checkbox = function()
+{
+	return this.checkbox;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.CheckBox} value
+ */
+MyInitialView.prototype.set_checkbox = function(value)
+{
+	if (value != this.checkbox)
+		this.checkbox = value;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.DropDownList}
+ */
+MyInitialView.prototype.get_list = function()
+{
+	return this.list;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.DropDownList} value
+ */
+MyInitialView.prototype.set_list = function(value)
+{
+	if (value != this.list)
+		this.list = value;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @return {org.apache.flex.html.staticControls.ComboBox}
+ */
+MyInitialView.prototype.get_comboBox = function()
+{
+	return this.comboBox;
+};
+
+/**
+ * @expose
+ * @this {MyInitialView}
+ * @param {org.apache.flex.html.staticControls.ComboBox} value
+ */
+MyInitialView.prototype.set_comboBox = function(value)
+{
+	if (value != this.comboBox)
+		this.comboBox = value;
+};
+
+/**
+ * @override
+ * @this {MyInitialView}
+ * @return {Array} the Array of UI element descriptors.
+ */
+MyInitialView.prototype.get_MXMLDescriptor = function()
+{
+	if (this.mxmldd == undefined)
+	{
+		/** @type {Array} */
+		var arr = goog.base(this, 'get_MXMLDescriptor');
+		/** @type {Array} */
+		var data = [
+org.apache.flex.html.staticControls.Label,
+4,
+'id',
+true,
+'lbl',
+'y',
+true,
+25,
+'x',
+true,
+100,
+'beads',
+null, [org.apache.flex.binding.SimpleBinding, 5, '_id', true, '$ID0', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'labelText', 'eventName', true, 'labelTextChanged', 'destinationPropertyName', true, 'text', 0, 0, null],
+0,
+0,
+null,
+org.apache.flex.html.staticControls.TextButton,
+4,
+'_id',
+true,
+'$ID1',
+'text',
+true,
+'Start Timer',
+'y',
+true,
+75,
+'x',
+true,
+100,
+0,
+1,
+'click',
+this.$EH0,
+null,
+org.apache.flex.html.staticControls.TextButton,
+4,
+'_id',
+true,
+'$ID2',
+'text',
+true,
+'Stop Timer',
+'y',
+true,
+100,
+'x',
+true,
+100,
+0,
+1,
+'click',
+this.$EH1,
+null,
+org.apache.flex.html.staticControls.Label,
+3,
+'id',
+true,
+'timerLabel',
+'y',
+true,
+125,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.List,
+6,
+'id',
+true,
+'cityList',
+'height',
+true,
+75,
+'width',
+true,
+100,
+'y',
+true,
+75,
+'x',
+true,
+200,
+'beads',
+null, [org.apache.flex.binding.ConstantBinding, 4, '_id', true, '$ID3', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'cities', 'destinationPropertyName', true, 'dataProvider', 0, 0, null],
+0,
+1,
+'change',
+this.$EH2,
+null,
+org.apache.flex.html.staticControls.TextArea,
+6,
+'_id',
+true,
+'$ID4',
+'height',
+true,
+75,
+'width',
+true,
+150,
+'y',
+true,
+25,
+'x',
+true,
+320,
+'beads',
+null, [org.apache.flex.binding.SimpleBinding, 5, '_id', true, '$ID5', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'labelText', 'eventName', true, 'labelTextChanged', 'destinationPropertyName', true, 'text', 0, 0, null],
+0,
+0,
+null,
+org.apache.flex.html.staticControls.TextInput,
+3,
+'id',
+true,
+'input',
+'y',
+true,
+110,
+'x',
+true,
+320,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.TextButton,
+4,
+'_id',
+true,
+'$ID6',
+'text',
+true,
+'Transfer',
+'y',
+true,
+138,
+'x',
+true,
+320,
+0,
+1,
+'click',
+this.$EH3,
+null,
+org.apache.flex.html.staticControls.CheckBox,
+4,
+'id',
+true,
+'checkbox',
+'text',
+true,
+'Check Me',
+'y',
+true,
+170,
+'x',
+true,
+320,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.RadioButton,
+6,
+'_id',
+true,
+'$ID7',
+'text',
+true,
+'Apples',
+'groupName',
+true,
+'group1',
+'value',
+true,
+0,
+'y',
+true,
+150,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.RadioButton,
+7,
+'_id',
+true,
+'$ID8',
+'selected',
+true,
+true,
+'text',
+true,
+'Oranges',
+'groupName',
+true,
+'group1',
+'value',
+true,
+1,
+'y',
+true,
+170,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.RadioButton,
+6,
+'_id',
+true,
+'$ID9',
+'text',
+true,
+'Grapes',
+'groupName',
+true,
+'group1',
+'value',
+true,
+2,
+'y',
+true,
+190,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.RadioButton,
+7,
+'_id',
+true,
+'$ID10',
+'selected',
+true,
+true,
+'text',
+true,
+'Red',
+'groupName',
+true,
+'group2',
+'value',
+true,
+16711680,
+'y',
+true,
+250,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.RadioButton,
+6,
+'_id',
+true,
+'$ID11',
+'text',
+true,
+'Green',
+'groupName',
+true,
+'group2',
+'value',
+true,
+32768,
+'y',
+true,
+270,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.RadioButton,
+6,
+'_id',
+true,
+'$ID12',
+'text',
+true,
+'Blue',
+'groupName',
+true,
+'group2',
+'value',
+true,
+255,
+'y',
+true,
+290,
+'x',
+true,
+100,
+0,
+0,
+null,
+org.apache.flex.html.staticControls.DropDownList,
+6,
+'id',
+true,
+'list',
+'height',
+true,
+24,
+'width',
+true,
+100,
+'y',
+true,
+200,
+'x',
+true,
+200,
+'beads',
+null, [org.apache.flex.binding.ConstantBinding, 4, '_id', true, '$ID13', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'strings', 'destinationPropertyName', true, 'dataProvider', 0, 0, null],
+0,
+1,
+'change',
+this.$EH4,
+null,
+org.apache.flex.html.staticControls.TextButton,
+4,
+'_id',
+true,
+'$ID14',
+'text',
+true,
+'OK',
+'y',
+true,
+230,
+'x',
+true,
+200,
+0,
+1,
+'click',
+this.$EH5,
+null,
+org.apache.flex.html.staticControls.ComboBox,
+5,
+'id',
+true,
+'comboBox',
+'width',
+true,
+100,
+'y',
+true,
+200,
+'x',
+true,
+320,
+'beads',
+null, [org.apache.flex.binding.ConstantBinding, 4, '_id', true, '$ID15', 'sourceID', true, 'applicationModel', 'sourcePropertyName', true, 'cities', 'destinationPropertyName', true, 'dataProvider', 0, 0, null],
+0,
+1,
+'change',
+this.$EH6,
+null
+];
+	
+		if (arr)
+			this.mxmldd = arr.concat(data);
+		else
+			this.mxmldd = data;
+	}
+	return this.mxmldd;
+};
+
+/**
+ * @override
+ * @this {MyInitialView}
+ * @return {Array} the Array of UI element descriptors.
+ */
+MyInitialView.prototype.get_MXMLProperties = function()
+{
+	if (this.mxmldp == undefined)
+	{
+		/** @type {Array} */
+		var arr = goog.base(this, 'get_MXMLProperties');
+		/** @type {Array} */
+		var data = [
+];
+	
+		if (arr)
+			this.mxmldp = arr.concat(data);
+		else
+			this.mxmldp = data;
+	}
+	return this.mxmldp;
+};
+

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyModel.as
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyModel.as b/compiler.jx.tests/test-files/flexjs/files/MyModel.as
new file mode 100644
index 0000000..1dc23e6
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/MyModel.as
@@ -0,0 +1,59 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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 models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+		}
+		
+		private var _labelText:String;
+		
+		public function get labelText():String
+		{
+			return _labelText;
+		}
+		
+		public function set labelText(value:String):void
+		{
+			if (value != _labelText)
+			{
+				_labelText = value;
+				dispatchEvent(new Event("labelTextChanged"));
+			}
+		}
+        
+        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
+        public function get strings():Array
+        {
+            return _strings;
+        }
+		
+		private var _cities:Array = ["London", "Miami", "Paris", "Sydney", "Tokyo"];
+		public function get cities():Array
+		{
+			return _cities;
+		}
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/7d794b34/compiler.jx.tests/test-files/flexjs/files/MyModel_result.js
----------------------------------------------------------------------
diff --git a/compiler.jx.tests/test-files/flexjs/files/MyModel_result.js b/compiler.jx.tests/test-files/flexjs/files/MyModel_result.js
new file mode 100644
index 0000000..38422d6
--- /dev/null
+++ b/compiler.jx.tests/test-files/flexjs/files/MyModel_result.js
@@ -0,0 +1,63 @@
+goog.provide('models.MyModel');
+
+/**
+ * @constructor
+ * @extends {org.apache.flex.events.EventDispatcher}
+ */
+models.MyModel = function() {
+	goog.base(this);
+}
+goog.inherits(models.MyModel, org.apache.flex.events.EventDispatcher);
+
+/**
+ * @private
+ * @type {string}
+ */
+models.MyModel.prototype._labelText;
+
+/**
+ * @expose
+ * @return {string}
+ */
+models.MyModel.prototype.get_labelText = function() {
+	return this._labelText;
+};
+
+/**
+ * @expose
+ * @param {string} value
+ */
+models.MyModel.prototype.set_labelText = function(value) {
+	if (value != this._labelText) {
+		this._labelText = value;
+		this.dispatchEvent(new org.apache.flex.events.Event("labelTextChanged"));
+	}
+};
+
+/**
+ * @private
+ * @type {Array}
+ */
+models.MyModel.prototype._strings = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
+
+/**
+ * @expose
+ * @return {Array}
+ */
+models.MyModel.prototype.get_strings = function() {
+	return this._strings;
+};
+
+/**
+ * @private
+ * @type {Array}
+ */
+models.MyModel.prototype._cities = ["London", "Miami", "Paris", "Sydney", "Tokyo"];
+
+/**
+ * @expose
+ * @return {Array}
+ */
+models.MyModel.prototype.get_cities = function() {
+	return this._cities;
+};
\ No newline at end of file


Mime
View raw message