Entity

    Module @expo/entity-cache-adapter-redis

    @expo/entity-cache-adapter-redis

    ioredis cache adapter for @expo/entity.

    Documentation

    During EntityCompanionProvider instantiation:

    import Redis from 'ioredis';

    const genericRedisCacherContext = {
    redisClient: new Redis(new URL(process.env['REDIS_URL']!).toString()),
    makeKeyFn(...parts: string[]): string {
    const delimiter = ':';
    const escapedParts = parts.map((part) =>
    part.replace('\\', '\\\\').replace(delimiter, `\\${delimiter}`)
    );
    return escapedParts.join(delimiter);
    },
    cacheKeyPrefix: 'ent-',
    ttlSecondsPositive: 86400, // 1 day
    ttlSecondsNegative: 600, // 10 minutes
    };

    export const createDefaultEntityCompanionProvider = (
    metricsAdapter: IEntityMetricsAdapter = new NoOpEntityMetricsAdapter()
    ): EntityCompanionProvider => {
    return new EntityCompanionProvider(
    metricsAdapter,
    {
    ...
    },
    {
    ['redis']: {
    cacheAdapterProvider: new RedisCacheAdapterProvider(genericRedisCacheContext),
    },
    }
    );
    };

    Enumerations

    RedisCacheInvalidationStrategy

    Classes

    GenericRedisCacher
    RedisCacheAdapterProvider

    Interfaces

    GenericRedisCacheContext
    IRedis
    IRedisTransaction

    Variables

    redisTransformerMap

    Functions

    getSurroundingCacheKeyVersionsForInvalidation
    wrapNativeRedisCallAsync
    MMNEPVFCICPMFPCPTTAAATR