UNPKG

@wmfs/statebox

Version:

Orchestrate Node functions using Amazon States Language

30 lines (22 loc) 778 B
class Resources { constructor () { this.resolvers = new Map() } resolve (resource, resourceConfig, stateMachineName) { if (!resource) { throw new Error('No \'Resource\' property set?') } const parts = [...resource.split(':'), ''] const resourceType = parts[0].trim() const resourceName = parts[1].trim() const resolver = this.resolvers.get(resourceType) if (!resolver) { throw new Error(`Unknown resource type '${resourceType}' in '${resource}'`) } return resolver(resourceName, resourceConfig, stateMachineName) } // resolveResource registerResolver (resourceType, resolver) { this.resolvers.set(resourceType, resolver) } // registerResolver } // class Resources module.exports = () => new Resources()