I am trying to use the library called assql serving for operations with mysql. In use, I saw that she works with a method called AsyncResponder the mx.rpc package that is available only for Flex applications ... My question is, how can I do to use this method in the conventional AS3, or use another function to solve my problem?
package {
import com.maclema.mysql.Statement;
import com.maclema.mysql.Connection;
import com.maclema.mysql.ResultSet;
import mx.rpc.AsyncResponder;
import com.maclema.mysql.MySqlToken;
import com.maclema.util.ResultsUtil;
import flash.display.MovieClip;
import flash.events.Event;
public class CRUD extends MovieClip{
//The MySql Connection
private var con:Connection;
public function CRUD() {
onCreationComplete();
}
private function onCreationComplete():void {
con = new Connection("localhost", 3306, "root", "", "banricoop-game");
con.addEventListener(Event.CONNECT, handleConnected);
con.connect();
}
private function handleConnected(event:Event):void {
getAllUsers();
}
private function getAllUsers():void {
var st:Statement = con.createStatement();
var token:MySqlToken = st.executeQuery("SELECT * FROM users");
token.info = "GetAllUsers";
token.addResponder(new AsyncResponder(result, fault, token));
}
private function getEmployee(userID:int):void {
var st:Statement = con.createStatement();
st.sql = "SELECT * FROM users WHERE id = ?";
st.setNumber(1, userID);
var token:MySqlToken = st.executeQuery();
token.info = "GetUser";
token.userID = userID;
token.addResponder(new AsyncResponder(result, fault, token));
}
private function result(data:Object, token:Object):void {
var rs:ResultSet;
if ( token.info == "GetAllUsers" ) {
rs = ResultSet(data);
trace("Found " + rs.size() + " employees!");
} else if ( token.info == "GetUser" ) {
rs = ResultSet(data);
if ( rs.next() ) {
trace("Employee " + token.employeeID + " username is '" + rs.getString("username") + "'");
}
else {
trace("No such employee for id " + token.employeeID);
}
}
}
private function fault(info:Object, token:Object):void {
trace(token.info + " Error: " + info);
}
}
}
Hugs!
You need to download the Flex SDK and add these libraries to your project:
So, you will be able to use in your AS3 only environment.