Initial commit: Cloud Instances API
Multi-cloud VM instance database with Cloudflare Workers - Linode, Vultr, AWS connector integration - D1 database with regions, instances, pricing - Query API with filtering, caching, pagination - Cron-based auto-sync (daily + 6-hourly) - Health monitoring endpoint Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
38
src/repositories/index.ts
Normal file
38
src/repositories/index.ts
Normal file
@@ -0,0 +1,38 @@
|
||||
/**
|
||||
* Repositories Index
|
||||
* Export all repository classes for easy importing
|
||||
*/
|
||||
|
||||
export { BaseRepository } from './base';
|
||||
export { ProvidersRepository } from './providers';
|
||||
export { RegionsRepository } from './regions';
|
||||
export { InstancesRepository } from './instances';
|
||||
export { PricingRepository } from './pricing';
|
||||
|
||||
import { ProvidersRepository } from './providers';
|
||||
import { RegionsRepository } from './regions';
|
||||
import { InstancesRepository } from './instances';
|
||||
import { PricingRepository } from './pricing';
|
||||
|
||||
/**
|
||||
* Repository factory for creating repository instances
|
||||
*/
|
||||
export class RepositoryFactory {
|
||||
constructor(private db: D1Database) {}
|
||||
|
||||
get providers(): ProvidersRepository {
|
||||
return new ProvidersRepository(this.db);
|
||||
}
|
||||
|
||||
get regions(): RegionsRepository {
|
||||
return new RegionsRepository(this.db);
|
||||
}
|
||||
|
||||
get instances(): InstancesRepository {
|
||||
return new InstancesRepository(this.db);
|
||||
}
|
||||
|
||||
get pricing(): PricingRepository {
|
||||
return new PricingRepository(this.db);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user