started refactor of data-sync-service

This commit is contained in:
Boki 2025-06-21 13:48:22 -04:00
parent 67833a2fd7
commit 3ae9de8376
27 changed files with 1754 additions and 1465 deletions

View file

@ -1,6 +1,6 @@
import { Hono } from 'hono';
import { getLogger } from '@stock-bot/logger';
import { enhancedSyncManager } from '../services/enhanced-sync-manager';
import { QueueManager } from '@stock-bot/queue';
const logger = getLogger('stats-routes');
const stats = new Hono();
@ -8,8 +8,18 @@ const stats = new Hono();
// Statistics endpoints
stats.get('/exchanges', async c => {
try {
const statsData = await enhancedSyncManager.getExchangeStats();
return c.json(statsData);
const queueManager = QueueManager.getInstance();
const exchangesQueue = queueManager.getQueue('exchanges');
const job = await exchangesQueue.addJob('get-exchange-stats', {
handler: 'exchanges',
operation: 'get-exchange-stats',
payload: {},
});
// Wait for job to complete and return result
const result = await job.waitUntilFinished();
return c.json(result);
} catch (error) {
logger.error('Failed to get exchange stats', { error });
return c.json({ error: error instanceof Error ? error.message : 'Unknown error' }, 500);
@ -18,8 +28,18 @@ stats.get('/exchanges', async c => {
stats.get('/provider-mappings', async c => {
try {
const statsData = await enhancedSyncManager.getProviderMappingStats();
return c.json(statsData);
const queueManager = QueueManager.getInstance();
const exchangesQueue = queueManager.getQueue('exchanges');
const job = await exchangesQueue.addJob('get-provider-mapping-stats', {
handler: 'exchanges',
operation: 'get-provider-mapping-stats',
payload: {},
});
// Wait for job to complete and return result
const result = await job.waitUntilFinished();
return c.json(result);
} catch (error) {
logger.error('Failed to get provider mapping stats', { error });
return c.json({ error: error instanceof Error ? error.message : 'Unknown error' }, 500);