UNPKG

pebblebed

Version:

Simplified interactions with Google Datastore for NodeJS

44 lines (34 loc) 2.15 kB
import { warn } from "../Messaging"; import { DatastoreQueryResponse, InternalDatastoreQuery } from "../"; import { Key } from "@google-cloud/datastore"; export class PebblebedCacheStore { cacheOnSave = true; cacheOnLoad = true; cacheOnQuery = true; async getEntitiesByKeys(keys: Key[]): Promise<null | any[]> { warn(`Pebblebed: Caching: Trying to get cached entities before a load, but getEntitiesByKeys() hasn't been implemented in your cache store yet.`); return null; } async setEntitiesAfterLoadOrSave(entities: any[], secondsToCache: number) { warn(`Pebblebed: Caching: Trying to cache entities after a load or save, but setEntitiesAfterLoadOrSave() hasn't been implemented in your cache store yet.`); } async setQueryResponse(queryResponse: DatastoreQueryResponse<any>, queryHash: string, secondsToCache: number, queryObject?: InternalDatastoreQuery) { warn(`Pebblebed: Caching: Trying to cache entities after a query, but setQueryResponse() hasn't been implemented in your cache store yet.`); } async getQueryResponse<T = any>(queryHash: string, queryObject?: InternalDatastoreQuery): Promise<DatastoreQueryResponse<T>> { warn(`Pebblebed: Caching: Trying to get a query result from the cache, but getQueryResponse() hasn't been implemented in your cache store yet.`); return null as any; } async flushQueryResponse(queryHash: string, queryObject?: InternalDatastoreQuery) { warn(`Pebblebed: Caching: Trying to flush a query result out of the cache, but flushQueryResponse() hasn't been implemented in your cache store yet.`); } async flushEntitiesByKeys(keys: Key[]) { warn(`Pebblebed: Caching: Trying to flush entities by keys, but flushEntitiesByKeys() hasn't been implemented in your cache store yet.`); } async flushEntities() { warn(`Pebblebed: Caching: Trying to flush entities, but flushEntities() hasn't been implemented in your cache store yet.`); } async flushQueries() { warn(`Pebblebed: Caching: Trying to flush queries, but flushQueries() hasn't been implemented in your cache store yet.`); } }