Upgrade to ExtJS 3.0.0 - Released 07/06/2009
[extjs.git] / docs / source / AirConnection.html
diff --git a/docs/source/AirConnection.html b/docs/source/AirConnection.html
new file mode 100644 (file)
index 0000000..58bf932
--- /dev/null
@@ -0,0 +1,87 @@
+<html>\r
+<head>\r
+  <title>The source code</title>\r
+    <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />\r
+    <script type="text/javascript" src="../resources/prettify/prettify.js"></script>\r
+</head>\r
+<body  onload="prettyPrint();">\r
+    <pre class="prettyprint lang-js"> Ext.sql.AirConnection = Ext.extend(Ext.sql.Connection, {\r
+       // abstract methods\r
+    open : function(db){\r
+        this.conn = new air.SQLConnection();\r
+               var file = air.File.applicationDirectory.resolvePath(db);\r
+               this.conn.open(file);\r
+        this.openState = true;\r
+               this.fireEvent('open', this);\r
+    },\r
+\r
+       close : function(){\r
+        this.conn.close();\r
+        this.fireEvent('close', this);\r
+    },\r
+\r
+       createStatement : function(type){\r
+               var stmt = new air.SQLStatement();\r
+               stmt.sqlConnection = this.conn;\r
+               return stmt;\r
+       },\r
+\r
+    exec : function(sql){\r
+        var stmt = this.createStatement('exec');\r
+               stmt.text = sql;\r
+               stmt.execute();\r
+    },\r
+\r
+       execBy : function(sql, args){\r
+               var stmt = this.createStatement('exec');\r
+               stmt.text = sql;\r
+               this.addParams(stmt, args);\r
+               stmt.execute();\r
+       },\r
+\r
+       query : function(sql){\r
+               var stmt = this.createStatement('query');\r
+               stmt.text = sql;\r
+               stmt.execute(this.maxResults);\r
+               return this.readResults(stmt.getResult());\r
+       },\r
+\r
+       queryBy : function(sql, args){\r
+               var stmt = this.createStatement('query');\r
+               stmt.text = sql;\r
+               this.addParams(stmt, args);\r
+               stmt.execute(this.maxResults);\r
+               return this.readResults(stmt.getResult());\r
+       },\r
+\r
+    addParams : function(stmt, args){\r
+               if(!args){ return; }\r
+               for(var key in args){\r
+                       if(args.hasOwnProperty(key)){\r
+                               if(!isNaN(key)){\r
+                                       var v = args[key];\r
+                                       if(Ext.isDate(v)){\r
+                                               v = v.format(Ext.sql.Proxy.DATE_FORMAT);\r
+                                       }\r
+                                       stmt.parameters[parseInt(key)] = v;\r
+                               }else{\r
+                                       stmt.parameters[':' + key] = args[key];\r
+                               }\r
+                       }\r
+               }\r
+               return stmt;\r
+       },\r
+\r
+    readResults : function(rs){\r
+        var r = [];\r
+        if(rs && rs.data){\r
+                   var len = rs.data.length;\r
+               for(var i = 0; i < len; i++) {\r
+                   r[r.length] = rs.data[i];\r
+               }\r
+        }\r
+        return r;\r
+    }\r
+});</pre>    \r
+</body>\r
+</html>
\ No newline at end of file