func init // adds using namespace sys.add_use('System.Data.OracleClient') // initialize instance params = this.props('Constructor').value if(params == 'Constructor') params = '' elseif(params == 'Constructor2') params = '' + d("ConnectionStr") end sys.add_object(this.codename, 'OracleConnection', params) // initialize properties sys.set_undef_field('ConnectionString', 'ConnectionStr') // makes implementation methods for properties sys._prop_init('ConnectionString', 1, 0, 2) sys._prop_init('ConnectionTimeout', 1, 0, 1) sys._prop_init('Database', 1, 0, 2) sys._prop_init('DataSource', 1, 0, 2) sys._prop_init('ServerVersion', 1, 0, 2) sys._prop_init('State', 1, 0, 0) // makes implementation of methods as properties sys._mtd_as_prop_init('BeginTransaction()') sys._mtd_as_prop_init('CreateCommand()') sys._mtd_as_prop_init('GetSchema()') sys._mtd_as_prop_init('OracleConnection') // makes implementation of simple methods sys._method_init('Close') sys._method_init('Open') // initialize events sys.add_event_type('onInfoMessage', 'InfoMessage', 'OracleInfoMessageEvent', 'args') // initialize common events and properties include("DbConnection-init") end func doConstructor() blk.println(this.codename, ' = new OracleConnection();') end func doConstructor2(ConnectionStr) blk.println(this.codename, ' = new OracleConnection(', d("ConnectionStr"), ');') end func doConnectionStr(ConnectionStr) blk.println(this.codename, '.ConnectionString = ', d("ConnectionStr"), ';') end func doBeginTransaction2(il) if(linked("onBeginTransaction")) event("onBeginTransaction", this.codename + '.BeginTransaction(' + d("il") + ')') else blk.println(this.codename, '.BeginTransaction(', d("il"), ');') end end func doChangeDatabase(value) blk.println(this.codename, '.ChangeDatabase(', d("value"), ');') end func doClearAllPools() blk.println('OracleConnection.ClearAllPools();') end func doClearPool(connection) blk.println('OracleConnection.ClearPool(', d("connection"), ');') end func doEnlistDistributedTransaction(distributedTransaction) blk.println(this.codename, '.EnlistDistributedTransaction(', d("distributedTransaction"), ');') end func doEnlistTransaction(transaction) blk.println(this.codename, '.EnlistTransaction(', d("transaction"), ');') end func doGetSchema2(collectionName) if(linked("onGetSchema")) event("onGetSchema", this.codename + '.GetSchema(' + d("collectionName") + ')') else blk.println(this.codename, '.GetSchema(', d("collectionName"), ');') end end func doGetSchema3(collectionName, restrictionValues) if(linked("onGetSchema")) event("onGetSchema", this.codename + '.GetSchema(' + d("collectionName") + ', ' + d("restrictionValues") + ')') else blk.println(this.codename, '.GetSchema(', d("collectionName"), ', ', d("restrictionValues"), ');') end end include("DbConnection")