package com.adobe.arise.database { import flash.data.SQLConnection; import flash.data.SQLStatement; import flash.events.SQLEvent; public class Topics extends DBOperation { public function Topics(responder:DatabaseResponder, sql:XML, connection:SQLConnection) { super(responder, sql, connection); } public function getUnique():void { var stmt:SQLStatement = this.getSQLStatement(); stmt.addEventListener(SQLEvent.RESULT, function(e:SQLEvent):void { var dbe:DatabaseEvent = new DatabaseEvent(DatabaseEvent.RESULT_EVENT); dbe.data = stmt.getResult().data; responder.dispatchEvent(dbe); }); stmt.text = sql.topics.selectDistinct; stmt.execute(); } public function getUnread():void { var stmt:SQLStatement = this.getSQLStatement(); stmt.addEventListener(SQLEvent.RESULT, function(e:SQLEvent):void { var dbe:DatabaseEvent = new DatabaseEvent(DatabaseEvent.RESULT_EVENT); var result:Array = stmt.getResult().data as Array; var o:Object = new Object(); for each (var row:Object in result) { o[row.topic] = row.unread; } dbe.data = o; responder.dispatchEvent(dbe); }); stmt.text = sql.topics.selectUnread; stmt.execute(); } } }