Показать сообщение отдельно
Старый 06.07.2011, 12:00
Kolyunya вне форума Посмотреть профиль Отправить личное сообщение для Kolyunya Найти все сообщения от Kolyunya
  № 1  
Ответить с цитированием
Kolyunya

Регистрация: Jul 2011
Сообщений: 21
По умолчанию Сложное взаимодействие классов

Здравствуйте. Ситуация такова:

Класс А:
- имеет метод С получающий URL файла в кач-ве параметра
- метод С начинает загружать файл и добавляет загрузчику слушателя Д, который запускается как только файл загружен
- слушатель Д парсит файл, как только он загружен


Класс Б:
- создает экз. класса А
- вызывает метод С, передает ему УРЛ файла



Вопрос: как мне в классе Б получить результат парсинга?
Прошу прощение за абстрактное описание проблемы, если ничего не понятно, я попробуй переформулировать.
Благодарю за помощь!


Класс А:
Код AS3:
package tools{
	import flash.net.URLRequest;
	import flash.net.URLLoader;
	import flash.events.Event;
	public class XmlToArr {
 
		private var playlistXml:XML;
		private var xmlUrlRequest:URLRequest;
		private var xmlUrlLoader:URLLoader;
		public function XmlToArr (xmlUrl:String) {
		}
 
		public function Convert (xmlUrl:String) {
			this.xmlUrlRequest = new URLRequest(xmlUrl);
			this.xmlUrlLoader = new URLLoader(this.xmlUrlRequest);
			this.xmlUrlLoader.addEventListener (Event.COMPLETE,listenerComplete);
		}
 
		private function listenerComplete (event:Event) {
			this.playlistXml = new XML(this.xmlUrlLoader);
		}
	}
}


Класс Б:
Код AS3:
package player{
	import tools.XmlToArr;
	import flash.display.MovieClip;
 
	public class Playlist extends MovieClip {
		private var playlistUrl:XML;
		public var playlistArr:Array;
 
		public function Playlist (playlistUrl:String):void {
			var newXmlToArr:XmlToArr = new XmlToArr(playlistUrl);
			newXmlToArr.Convert(playlistUrl);
		}
	}
}