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 { ApolloServer } from "@apollo/server";
|
||||||
import { startStandaloneServer } from "@apollo/server/standalone";
|
import { startStandaloneServer } from "@apollo/server/standalone";
|
||||||
import { resolvers } from "./resolvers";
|
import { resolvers } from "./resolvers";
|
||||||
import { loadTestData } from "./loaders/testData";
|
import { loadTestData } from "./loaders/loadTestData";
|
||||||
import { ServerContext } from "./serverContext";
|
import { ServerContext } from "./ServerContext";
|
||||||
import { UnoptimizedInMemoryRepository } from "./repositories/unoptimizedInMemoryRepository";
|
import { UnoptimizedInMemoryRepository } from "./repositories/UnoptimizedInMemoryRepository";
|
||||||
import { RepositoryDataLoader } from "./loaders/repositoryDataLoader";
|
import { RepositoryDataLoader } from "./loaders/RepositoryDataLoader";
|
||||||
|
|
||||||
const typeDefs = readFileSync("./schema.graphqls", "utf8");
|
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 timeout = 10000;
|
||||||
const systemIdsToSupport = ["263"];
|
const systemIdsToSupport = ["263"];
|
||||||
@@ -23,7 +23,7 @@ export class RepositoryDataLoader {
|
|||||||
private shouldBeRunning: boolean = false;
|
private shouldBeRunning: boolean = false;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private repository: Repository,
|
private repository: GetterSetterRepository,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
public async start() {
|
public async start() {
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
// Mock data
|
// 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[] = [
|
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 Promise.all(systems.map(async (system) => {
|
||||||
await repository.addOrUpdateSystem(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.
|
* The repository is not designed to have write locks in place.
|
||||||
* Objects passed from/to the repository should be treated
|
* Objects passed from/to the repository should be treated
|
||||||
* as disposable.
|
* as disposable.
|
||||||
*/
|
*/
|
||||||
export interface Repository {
|
export interface GetterSetterRepository {
|
||||||
// Getter methods
|
// Getter methods
|
||||||
|
|
||||||
getSystems(): Promise<ISystem[]>;
|
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.
|
* An unoptimized in memory repository.
|
||||||
* (I would optimize it with actual data structures, but I'm
|
* (I would optimize it with actual data structures, but I'm
|
||||||
* switching to another data store later anyways)
|
* switching to another data store later anyways)
|
||||||
*/
|
*/
|
||||||
export class UnoptimizedInMemoryRepository implements Repository {
|
export class UnoptimizedInMemoryRepository implements GetterSetterRepository {
|
||||||
private systems: ISystem[] = [];
|
private systems: ISystem[] = [];
|
||||||
private stops: IStop[] = [];
|
private stops: IStop[] = [];
|
||||||
private routes: IRoute[] = [];
|
private routes: IRoute[] = [];
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import { Coordinates, Eta, OrderedStop, Resolvers, Route, Shuttle, Stop, System } from "./generated/graphql";
|
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> = {
|
export const resolvers: Resolvers<ServerContext> = {
|
||||||
Query: {
|
Query: {
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
import { Repository } from "./repositories/repository";
|
|
||||||
|
|
||||||
export interface ServerContext {
|
|
||||||
repository: Repository
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user