 	import flash.utils.setTimeout;
 	import mx.core.IMXMLObject;
 	import robotlegs.bender.core.api.IContextBuilderBundle;
+	import robotlegs.bender.core.api.IContextConfig;
 	import robotlegs.bender.core.impl.ContextBuilder;
 
 	[DefaultProperty("configs")]
 	public class ContextBuilderTag extends ContextBuilder implements IMXMLObject
 	{
 
-		protected var _configs:Vector.<IContextBuilderBundle> = new Vector.<IContextBuilderBundle>;
+		/*============================================================================*/
+		/* Public Properties                                                          */
+		/*============================================================================*/
 
-		public function get configs():Vector.<IContextBuilderBundle>
+		private var _configs:Vector.<Object> = new Vector.<Object>;
+
+		public function get configs():Vector.<Object>
 		{
 			return _configs;
 		}
 
-		public function set configs(value:Vector.<IContextBuilderBundle>):void
+		public function set configs(value:Vector.<Object>):void
 		{
 			_configs = value;
 		}
 
-		protected var _contextView:DisplayObjectContainer;
+		private var _contextView:DisplayObjectContainer;
 
 		public function set contextView(value:DisplayObjectContainer):void
 		{
 			_contextView = value;
 		}
 
-		protected var _documentView:DisplayObjectContainer;
+		/*============================================================================*/
+		/* Private Properties                                                         */
+		/*============================================================================*/
+
+		private var _documentView:DisplayObjectContainer;
+
+		/*============================================================================*/
+		/* Public Functions                                                           */
+		/*============================================================================*/
 
 		public function initialized(document:Object, id:String):void
 		{

			setTimeout(configureBuilder, 1);
		}

		protected function configureBuilder():void
		{
			if (!context.contextView)
			{
				withContextView(_contextView || _documentView);
			}

			configs.forEach(function(config:IContextBuilderBundle, ... rest):void
			{
				withBundle(config['constructor'] as Class);
			}, this);

			configs = null;

			build();
		}

//------------------------------------------------------------------------------
//  Copyright (c) 2011 the original author or authors. All Rights Reserved. 
// 
//  NOTICE: You are permitted to use, modify, and distribute this file 
//  in accordance with the terms of the license agreement accompanying it. 
//------------------------------------------------------------------------------

package robotlegs.bender.mxml
