UNPKG

marketing-post-generator-mcp

Version:

A powerful MCP server for AI-powered marketing blog post generation with Claude integration

55 lines 1.51 kB
// Dependency Injection Container for the Marketing Post Generator MCP export class DIContainer { services = new Map(); factories = new Map(); singletons = new Set(); /** * Register a service factory with the container */ register(token, factory, singleton = true) { this.factories.set(token, factory); if (singleton) { this.singletons.add(token); } } /** * Resolve a service from the container */ resolve(token) { // Return cached instance for singletons if (this.singletons.has(token) && this.services.has(token)) { return this.services.get(token); } const factory = this.factories.get(token); if (!factory) { throw new Error(`Service not registered: ${token}`); } const instance = factory(); // Cache singleton instances if (this.singletons.has(token)) { this.services.set(token, instance); } return instance; } /** * Check if a service is registered */ has(token) { return this.factories.has(token); } /** * Clear all services and factories */ clear() { this.services.clear(); this.factories.clear(); this.singletons.clear(); } /** * Get all registered service tokens */ getRegisteredTokens() { return Array.from(this.factories.keys()); } } //# sourceMappingURL=DIContainer.js.map