@ovotech/apollo-datasource-soap
TypeScript icon, indicating that this package has built-in type declarations

4.1.0 • Public • Published

Apollo SOAPDataSource

CircleCI npm (scoped)

SOAPDataSource is responsible for calling a soap client. Integrates with the cache, following the example of Apollo Data Sources.

Using

yarn add @ovotech/apollo-datasource-soap

This module ships with TypeScript types.

import { SOAPDataSource } from '@ovotech/apollo-datasource-soap';
import { createClientAsync } from 'soap';

class MySOAPDataSource extends SOAPDataSource {
  async get() {
    return await this.callSoapMethod('myFunc', { someArg: 'val' });
  }

  async getFull() {
    return await this.callSoapServiceMethod('myService', 'myPort', 'myFunc', { someArg: 'val' });
  }

  async rawClientCall() {
    const client = await this.getClient();
    return await client.myFuncAsync({ something: 'other' });
  }
}

const client = await createClientAsync('...some.wsdl'));
const ds = new MySOAPDataSource(client);
// or load client async
const ds = new MySOAPDataSource(() => createClientAsync('...some.wsdl')));

Running the tests

yarn test

Coding style (linting, etc) tests

Style is maintained with prettier and tslint

yarn lint

Deployment

To deploy a new version, push to master and then create a new release. CircleCI will automatically build and deploy a the version to the npm registry.

Contributing

Have a bug? File an issue with a simple example that reproduces this so we can take a look & confirm.

Want to make a change? Submit a PR, explain why it's useful, and make sure you've updated the docs (this file) and the tests (see test/S3DataSource.spec.ts). You can run the tests with SERVICES=s3 localstack start and yarn test.

Responsible Team

  • Boost Internal Tools (BIT)

License

This project is licensed under Apache 2 - see the LICENSE file for details

Readme

Keywords

none

Package Sidebar

Install

npm i @ovotech/apollo-datasource-soap

Weekly Downloads

74

Version

4.1.0

License

Apache-2.0

Unpacked Size

22.6 kB

Total Files

29

Last publish

Collaborators

  • ovox
  • oep-accounts-bot
  • ovo.backstage.admins
  • bookings-team
  • orion-bot
  • bizval-bot
  • oeptariffs
  • props
  • metering-reads-health-bot
  • ovotech-identity
  • paceteamkaluza
  • trading-and-dispatch
  • retail-payg-tech
  • accrecovo
  • ovo.trading.tech
  • qe-team
  • ovotech-smart-thermostat
  • rise-team
  • engagement-insights
  • myovo-self-serve-service-account
  • mars-rover
  • ape-team
  • kaluza-devex
  • ohs-aurora
  • kaluza-rnr
  • ipa-bot
  • kawbot
  • data.discovery.ovo
  • ovotech-sg
  • ovotech-qs
  • ovoenergyapps
  • homemoves
  • ovo-oot-bot
  • cp-ui-tooling
  • ovo-bit-tech
  • sir_hiss