dbr_hdl = dbr.dbrCreate(dbr_name, level, group_list) group = '0' # query the CDB to see if successful dbr_state = ffi.new('DBR_State_t*') res = dbr.dbrQuery(dbr_hdl, dbr_state, dbr.DBR_STATE_MASK_ALL) test_in = "Hello World!" res = dbr.dbrPut(dbr_hdl, test_in, "testTup", group) res = dbr.dbrPut(dbr_hdl, "Goodbye", "testTup", group) print 'Put ' + test_in + ' and Goodbye' out_size = ffi.new('int64_t*') out_size[0] = 1024 q = dbr.createBuf('char[]', out_size[0]) group_t = 0 res = dbr.dbrRead(dbr_hdl, q, out_size, "testTup", "", group, dbr.DBR_FLAGS_NOWAIT) print 'Read returned: ' + q[:] res = dbr.dbrGet(dbr_hdl, q, out_size, "testTup", "", group, dbr.DBR_FLAGS_NONE) print 'Get returned: ' + q[:] #read again to check for failing out_size[0] = 1024 q = dbr.createBuf('char[]', out_size[0]) res = dbr.dbrRead(dbr_hdl, q, out_size, "testTup", "", group, dbr.DBR_FLAGS_NONE) print 'Read returned: ' + q[:] res = dbr.dbrGet(dbr_hdl, q, out_size, "testTup", "", group, dbr.DBR_FLAGS_NONE) print 'Get returned: ' + q[:] print 'Delete Data Broker' res = dbr.dbrDelete(dbr_name) print 'Exit Status: ' + dbr.getErrorMessage(res)
test_in = "Hello World!" res = dbr.dbrPut(dbr_hdl, test_in, "HelloTuple", group) res = dbr.dbrPut(dbr_hdl, "Goodbye World!", "GoodbyeTuple", group) ###### #test the directory command and list all tuple names/keys out_size = ffi.new('int64_t*') size = 1024 rsize = ffi.new('int64_t*') count = 1000 res,keys = dbr.dbrDirectory(dbr_hdl, "*", group, count, size, rsize) print 'Keys on DBR: ' + str(keys[:]) out_size[0] = 1024 q = dbr.createBuf('char[]', out_size[0]) res = dbr.dbrRead(dbr_hdl, q, out_size, keys[0], "", group, dbr.DBR_FLAGS_NOWAIT) print 'Read returned: ' + q[:] res = dbr.dbrGet(dbr_hdl, q, out_size, keys[0], "", group, dbr.DBR_FLAGS_NONE) print 'Get returned: ' + q[:] #read again to check for failing out_size[0] = 1024 q = dbr.createBuf('char[]', out_size[0]) res = dbr.dbrRead(dbr_hdl, q, out_size, keys[1], "", group, dbr.DBR_FLAGS_NONE) print 'Read returned: ' + q[:] res = dbr.dbrGet(dbr_hdl, q, out_size, keys[1], "", group, dbr.DBR_FLAGS_NONE) print 'Get returned: ' + q[:] print 'Delete Data Broker' res = dbr.dbrDelete(dbr_name) print 'Exit Status: ' + dbr.getErrorMessage(res)