No description, website, or topics provided.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.gitignore
README.md
oracleAdapter.js
package.json

README.md

image_squidhome@2x.png

waterline-oracle

Provides easy access to oracle databases from Sails.js & Waterline.

This module is a Waterline/Sails adapter, an early implementation of a rapidly-developing, tool-agnostic data standard. Its goal is to provide a set of declarative interfaces, conventions, and best-practices for integrating with all sorts of data sources. Not just databases-- external APIs, proprietary web services, or even hardware.

Strict adherence to an adapter specification enables the (re)use of built-in generic test suites, standardized documentation, reasonable expectations around the API for your users, and overall, a more pleasant development experience for everyone.

Installation

  • Add following dependency to package.json :

"waterline-oracle-adapter": "AnyPresence/waterline-oracle-adapter#TAG_VERSION" (make sure to replace TAG_VERSION with a valid one)

  • In config/connections.js, add following adapter configuration:

    storage_adapter_33: { adapter: 'waterline-oracle',
    username: props.getProperty("ORACLE_USERNAME"),
    password: props.getProperty("ORACLE_PASSWORD"),
    database: props.getProperty("ORACLE_DATABASE"),
    host: props.getProperty("ORACLE_HOST"),
    port: props.getProperty("ORACLE_PORT"),
    },

    where properties are set in .env file in root application folder.

! Take in consideration that you will require to provide proper authorization configuration for the models. This is a sample Authorizations.js file to have access to defined columns over a Person model:

module.exports = { 'v1person': { 'requiresAuthentication': false,

'Unauthenticated Default': {
  'permittedScopes': [ 'all', 'exactMatch', 'count', 'countExactMatch' ],
  'objectLevelPermissions': [ 'create', 'read', 'update', 'delete' ],
  'fieldLevelPermissions': {
    'creatable': [ 'age', 'name', 'lastname', 'id' ],
    'updatable': [ 'age', 'name', 'lastname', 'id' ],
    'readable' : [ 'age', 'name', 'lastname', 'id' ]
  }
},

}, };

creatable, updatable, and readable arrays specifies for the Unauthenticated Default role to which fields of the v1person model has access to create, update, and read determined fields.