Socket
Book a DemoInstallSign in
Socket

@data-master/data-connector-config

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@data-master/data-connector-config

A flexible and extensible library for managing configuration settings for various data connectors in JavaScript/TypeScript applications. It provides a generic class, DataConnectorConfig, that allows users to define, manipulate, validate, and serialize con

1.0.0
latest
npmnpm
Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

Data Connector Config

npm version

Introduction

DataConnectorConfig is a versatile class designed to manage generic data connector configurations in JavaScript/TypeScript applications. It provides a flexible way to define, manipulate, validate, and serialize configurations for various data connectors.

Installation

You can install @data-master/data-connector-config via npm or yarn:

npm install @data-master/data-connector-config

Usage

Here's how you can use DataConnectorConfig in your project:

import { DataConnectorConfig } from '@data-master/data-connector-config';

// Create a new DataConnectorConfig instance
const config = new DataConnectorConfig({
    endpoint: 'https://example.com/api',
    timeout: 5000,
    nestedConfig: new DataConnectorConfig({
        nestedOption: 'value'
    })
});

// Validate the configuration
if (config.validate(['endpoint'])) {
    console.log('Configuration is valid');
} else {
    console.error('Configuration is invalid');
}

// Convert configuration to JSON
const jsonConfig = config.toJSON();
console.log(jsonConfig);

// Get configuration values
console.log(config.getConfig('endpoint'));

// Set configuration values
config.setConfig('newOption', 'newValue');

API

DataConnectorConfig(config, options = [], validate = false)

  • config: An optional object representing initial configuration values.
  • options: An optional array of strings representing available configuration options.
  • validate: An optional boolean indicating whether to validate configuration options.

setOptions(options)

Set available options for configuration.

  • options: An array of strings representing available options for configuration.

setConfigs(config, validate = false)

Set configuration options.

  • config: An object representing the configuration.
  • validate: An optional boolean indicating whether to validate configuration options.

setConfig(key, value, validate = false)

Set a configuration option.

  • key: The configuration option key.
  • value: The configuration option value.
  • validate: An optional boolean indicating whether to validate configuration options.

getConfig(key)

Get the configuration for the specified key.

  • key: The configuration option key.

getConfigs()

Get all configurations.

toJSON()

Convert the configuration to JSON.

validate(requiredFields = [], ignoreExtra = true)

Validate the configuration.

  • requiredFields: An optional array of strings representing required fields.
  • ignoreExtra: An optional boolean indicating whether to ignore extra fields.

Supported Connectors

MongoDB Connector

The MongoDBConfig class represents configuration for a MongoDB data connector. It extends DataConnectorConfig and provides specific getters and setters for MongoDB-related options.

Usage Example

import { MongoDBConfig } from '@data-master/data-connector-config';

const mongoConfig = new MongoDBConfig({
    username: 'user',
    password: 'pass',
    host: 'localhost',
    port: 27017
});

MySQL Connector

The MySQLConfig class represents configuration for a MySQL data connector. It extends DataConnectorConfig and provides specific getters and setters for MySQL-related options.

Usage Example

import { MySQLConfig } from '@data-master/data-connector-config';

const mysqlConfig = new MySQLConfig({
    host: 'localhost',
    user: 'root',
    password: 'password',
    database: 'mydb'
});

Snowflake Connector

The SnowflakeConfig class represents configuration for a Snowflake data connector. It extends DataConnectorConfig and provides specific getters and setters for Snowflake-related options.

Usage Example

import { SnowflakeConfig } from '@data-master/data-connector-config';

const snowflakeConfig = new SnowflakeConfig({
    username: 'user',
    password: 'pass',
    account: 'account-name',
    host: 'hostname.snowflakecomputing.com',
    database: 'mydb',
    schema: 'public'
});

License

This project is licensed under the GNU Affero General Public License v3.

Keywords

data

FAQs

Package last updated on 27 Mar 2024

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

About

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc

U.S. Patent No. 12,346,443 & 12,314,394. Other pending.