Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

gcloud-datastore-model

Package Overview
Dependencies
Maintainers
3
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gcloud-datastore-model

A wrapper around gcloud dataset for storing, retrieving and querying entities

  • 1.3.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
1
Maintainers
3
Weekly downloads
 
Created
Source

gcloud-datastore-model

Circle CI

A wrapper around the gcloud-node dataset functions for storing, retrieving and basic querying of Google Cloud Datastore entities.

Features

  • Created and updated dates stored and returned in _metadata properties
  • Assigns an id to the model based on the datastore key
  • Returns promises
  • Raises events

Install

npm install gcloud-datastore-model --save

Usage

const dataset = require('gcloud').datastore.dataset({
  projectId: 'my-project',
  credentials: {}
});

const DatastoreModel = require('gcloud-datastore-model')(dataset);

DatastoreModel.insert(dataset.key(['Kind', 'myid']), {test: 'value'})
  .then(model => console.log);

DatastoreModel.on('inserted', model => console.log);

/* model:
{
  id: 'myid',
  test: 'value',
  _metadata: {
    created: Thu Dec 03 2015 16:04:05 GMT+0000 (GMT)
    uppdated: Thu Dec 03 2015 16:04:05 GMT+0000 (GMT)
  }
}
*/

API

All functions return promises.

  • insert(key, model) - inserts a new model into the datastore. Errors when key already exists.
  • update(key, model) - updates an existing model in the datastore. Errors with an EntityNotFoundError if the key does not exist.
  • get(key) - retrieves a model from the datastore. Errors with an EntityNotFoundError if the key does not exist.
  • getMany(keys) - retrieves multiple models from the datastore. Ignores keys that do not exist.
  • delete(key) - deletes a model from the datastore. Errors with an EntityNotFoundError if the key does not exist.
  • find(query) - executes a datastore query.

Parameters:

  • key - A gcloud-node dataset key object e.g. dataset.key(['Person', '1'])
  • model - Attributes to persist to datastore e.g. {firstname: 'John', lastname: 'Smith', age: 30}

Events:

  • on('inserted', (model, key) => {}) - emitted when a new model is successfully inserted
  • on('updated', (model, key) => {}) - emitted when an existing model is successfully updated
  • on('deleted', key => {}) - emitted when an existing model is successfully deleted

Development

The tests in this module use the gcd tool to test against a local Google Cloud Datastore. Install Docker compose and run docker-compose up dev from the code directory to start gcd and a file watcher that will automatically run the tests when making code changes.

Keywords

FAQs

Package last updated on 31 Dec 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc