0.4.3 • Published 1 year ago

@exasol/extension-manager-interface v0.4.3

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

Extension Manager Interface

Build Status npm version

Quality Gate Status

This is the interface definition for Exasol extensions that can be installed by the Exasol extension-manager.

Creating New Extensions

This section describes how to create a new extension.

Base Extension Types

You have the following options for creating a new extensions:

Generic Interface

The generic extension interface is defined in src/api.ts. It is the most flexible option but requires implementing all extension methods from scratch.

Example: row-level-security-lua

Java SCRIPT Base

The base extension interface for Java SCRIPT based extension is defined in src/base/index.ts. It is useful for extensions that only consist of one or multiple Java SCRIPT UDFs and don't use instances.

Example: cloud-storage-extension

Java VIRTUAL SCHEMA Base

The base extension interface for Java VIRTUAL SCHEMAs is defined in src/base-vs/index.ts. It is useful for JDBC or document based Virtual Schemas that are based on Java UDFs.

Examples:

Testing Extensions

Create unit tests for new extensions with Jest. In your test call the function testJavaVirtualSchemaBaseExtension() to also run shared unit tests:

import { testJavaVirtualSchemaBaseExtension } from '@exasol/extension-manager-interface/dist/base-vs-test/vsTestBase';
import { createExtension } from "./extension";

// ...

testJavaVirtualSchemaBaseExtension(createExtension);

These shared tests verify the following criteria:

  • Parameter IDs don't contain a dot .
  • Parameter IDs are unique
  • The extension contains at least one version

Additional Information

0.4.3

1 year ago

0.4.2

1 year ago

0.3.0

2 years ago

0.2.0

2 years ago

0.4.1

2 years ago

0.4.0

2 years ago

0.3.1

2 years ago

0.1.16

2 years ago

0.1.12

3 years ago

0.1.13

3 years ago

0.1.14

3 years ago

0.1.15

3 years ago

0.1.10

3 years ago

0.1.11

3 years ago

0.1.2

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.9

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.1

3 years ago