mirror of
https://github.com/brendan-ch/project-inter-server.git
synced 2026-04-17 07:50:31 +00:00
rename files for consistency
This commit is contained in:
5
src/ServerContext.ts
Normal file
5
src/ServerContext.ts
Normal file
@@ -0,0 +1,5 @@
|
||||
import { GetterSetterRepository } from "./repositories/GetterSetterRepository";
|
||||
|
||||
export interface ServerContext {
|
||||
repository: GetterSetterRepository
|
||||
}
|
||||
@@ -2,10 +2,10 @@ import { readFileSync } from "fs";
|
||||
import { ApolloServer } from "@apollo/server";
|
||||
import { startStandaloneServer } from "@apollo/server/standalone";
|
||||
import { resolvers } from "./resolvers";
|
||||
import { loadTestData } from "./loaders/testData";
|
||||
import { ServerContext } from "./serverContext";
|
||||
import { UnoptimizedInMemoryRepository } from "./repositories/unoptimizedInMemoryRepository";
|
||||
import { RepositoryDataLoader } from "./loaders/repositoryDataLoader";
|
||||
import { loadTestData } from "./loaders/loadTestData";
|
||||
import { ServerContext } from "./ServerContext";
|
||||
import { UnoptimizedInMemoryRepository } from "./repositories/UnoptimizedInMemoryRepository";
|
||||
import { RepositoryDataLoader } from "./loaders/RepositoryDataLoader";
|
||||
|
||||
const typeDefs = readFileSync("./schema.graphqls", "utf8");
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { IOrderedStop, IRoute, IShuttle, IStop, ISystem, Repository } from "../repositories/repository";
|
||||
import { IOrderedStop, IRoute, IShuttle, IStop, ISystem, GetterSetterRepository } from "../repositories/GetterSetterRepository";
|
||||
|
||||
const timeout = 10000;
|
||||
const systemIdsToSupport = ["263"];
|
||||
@@ -23,7 +23,7 @@ export class RepositoryDataLoader {
|
||||
private shouldBeRunning: boolean = false;
|
||||
|
||||
constructor(
|
||||
private repository: Repository,
|
||||
private repository: GetterSetterRepository,
|
||||
) {}
|
||||
|
||||
public async start() {
|
||||
@@ -1,5 +1,5 @@
|
||||
// Mock data
|
||||
import { IEta, IOrderedStop, IRoute, IShuttle, IStop, ISystem, Repository } from "../repositories/repository";
|
||||
import { IEta, IOrderedStop, IRoute, IShuttle, IStop, ISystem, GetterSetterRepository } from "../repositories/GetterSetterRepository";
|
||||
|
||||
const systems: ISystem[] = [
|
||||
{
|
||||
@@ -103,7 +103,7 @@ const etas: IEta[] = [
|
||||
}
|
||||
];
|
||||
|
||||
export async function loadTestData(repository: Repository) {
|
||||
export async function loadTestData(repository: GetterSetterRepository) {
|
||||
await Promise.all(systems.map(async (system) => {
|
||||
await repository.addOrUpdateSystem(system);
|
||||
}));
|
||||
@@ -49,12 +49,12 @@ export interface IOrderedStop {
|
||||
}
|
||||
|
||||
/**
|
||||
* Repository interface for data derived from Passio API.
|
||||
* GetterRepository interface for data derived from Passio API.
|
||||
* The repository is not designed to have write locks in place.
|
||||
* Objects passed from/to the repository should be treated
|
||||
* as disposable.
|
||||
*/
|
||||
export interface Repository {
|
||||
export interface GetterSetterRepository {
|
||||
// Getter methods
|
||||
|
||||
getSystems(): Promise<ISystem[]>;
|
||||
@@ -1,11 +1,11 @@
|
||||
import { IEntityWithId, IEta, IOrderedStop, IRoute, IShuttle, IStop, ISystem, Repository } from "./repository";
|
||||
import { IEntityWithId, IEta, IOrderedStop, IRoute, IShuttle, IStop, ISystem, GetterSetterRepository } from "./GetterSetterRepository";
|
||||
|
||||
/**
|
||||
* An unoptimized in memory repository.
|
||||
* (I would optimize it with actual data structures, but I'm
|
||||
* switching to another data store later anyways)
|
||||
*/
|
||||
export class UnoptimizedInMemoryRepository implements Repository {
|
||||
export class UnoptimizedInMemoryRepository implements GetterSetterRepository {
|
||||
private systems: ISystem[] = [];
|
||||
private stops: IStop[] = [];
|
||||
private routes: IRoute[] = [];
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Coordinates, Eta, OrderedStop, Resolvers, Route, Shuttle, Stop, System } from "./generated/graphql";
|
||||
import { ServerContext } from "./serverContext";
|
||||
import { ServerContext } from "./ServerContext";
|
||||
|
||||
export const resolvers: Resolvers<ServerContext> = {
|
||||
Query: {
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
import { Repository } from "./repositories/repository";
|
||||
|
||||
export interface ServerContext {
|
||||
repository: Repository
|
||||
}
|
||||
Reference in New Issue
Block a user