UNPKG

kvclient-js

Version:

Oracle NoSQL Database node.js Client API.

92 lines (81 loc) 3.59 kB
/*- * * This file is part of Oracle NoSQL Database * Copyright (C) 2011, 2014 Oracle and/or its affiliates. All rights reserved. * * If you have received this file as part of Oracle NoSQL Database the * following applies to the work as a whole: * * Oracle NoSQL Database server software is free software: you can * redistribute it and/or modify it under the terms of the GNU Affero * General Public License as published by the Free Software Foundation, * version 3. * * Oracle NoSQL Database is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Affero General Public License for more details. * * If you have received this file as part of Oracle NoSQL Database Client or * distributed separately the following applies: * * Oracle NoSQL Database client software is free software: you can * redistribute it and/or modify it under the terms of the Apache License * as published by the Apache Software Foundation, version 2.0. * * You should have received a copy of the GNU Affero General Public License * and/or the Apache License in the LICENSE file along with Oracle NoSQL * Database client or server distribution. If not, see * <http://www.gnu.org/licenses/> * or * <http://www.apache.org/licenses/LICENSE-2.0>. * * An active Oracle commercial licensing agreement for this product supersedes * these licenses and in such case the license notices, but not the copyright * notice, may be removed by you in connection with your distribution that is * in accordance with the commercial licensing terms. * * For more information please contact: * * berkeleydb-info_us@oracle.com * */ var kvClient = require('kvclient-js'); var kvTypes = kvClient.Types; var configuration = new kvClient.Configuration(); configuration.securityProperties.TRANSPORT = "SSL"; configuration.startLocalProxy = true; configuration.kvStoreHelperHosts = "oracle.com:666" var store = kvClient.createStore(configuration); store.on('open', function () { var primaryKey = {id:777}; var row = {id:777, user:"John Doe", quota:150}; var durability = kvTypes.newDurability( kvTypes.ReplicaAckPolicy.ALL, kvTypes.ReplicaAckPolicy.ALL, kvTypes.SyncPolicy.NO_SYNC); var writeOptions = kvClient.newWriteOptions( durability, kvTypes.ReturnChoice.ALL, 1000 ); var readOptions = kvClient.newReadOptions( kvTypes.Consistency.NONE_REQUIRED, 1000 ); store.put('table', row, writeOptions, function(error, result) { console.log("put() newVersion:" + result.newVersion); store.get('table', primaryKey, readOptions, function(error, result) { console.log("get() row: "); console.log(result.row); console.log("version: " + result.version); // iterate over the fields and values for (var key in row) { if (row.hasOwnProperty(key)) { console.log(key + " -> " + row[key]); } } store.deleteRow('table', primaryKey, writeOptions, function(error, previousRow) { console.log("get() previousRow: "); console.log(previousRow); }); }); }); store.close(); }); store.open();