Class NymphDriverAbstract

A Nymph database driver.

Hierarchy

  • NymphDriver

Constructors

Properties

entityCache: {
    [k: string]: {
        cdate: number;
        data: EntityData;
        mdate: number;
        sdata: SerializedEntityData;
        tags: string[];
    };
} = {}

A cache to make entity retrieval faster.

Type declaration

entityCount: {
    [k: string]: number;
} = {}

A counter for the entity cache to determine the most accessed entities.

Type declaration

  • [k: string]: number
nymph: Nymph = ...
putDataCounter: number = 0

Protect against infinite loops.

Methods

  • Type Parameters

    Parameters

    • options: Options<T> & {
          return: "count";
      }
    • selectors: Selector[]
    • performQueryCallback: ((options, formattedSelectors, etype) => {
          result: any;
      })
        • (options, formattedSelectors, etype): {
              result: any;
          }
        • Parameters

          Returns {
              result: any;
          }

          • result: any
    • rowFetchCallback: (() => any)
        • (): any
        • Returns any

    • freeResultCallback: (() => void)
        • (): void
        • Returns void

    • getCountCallback: ((row) => number)
        • (row): number
        • Parameters

          • row: any

          Returns number

    • getGUIDCallback: ((row) => string)
        • (row): string
        • Parameters

          • row: any

          Returns string

    • getTagsAndDatesCallback: ((row) => {
          cdate: number;
          mdate: number;
          tags: string[];
      })
        • (row): {
              cdate: number;
              mdate: number;
              tags: string[];
          }
        • Parameters

          • row: any

          Returns {
              cdate: number;
              mdate: number;
              tags: string[];
          }

          • cdate: number
          • mdate: number
          • tags: string[]
    • getDataNameAndSValueCallback: ((row) => {
          name: string;
          svalue: string;
      })
        • (row): {
              name: string;
              svalue: string;
          }
        • Parameters

          • row: any

          Returns {
              name: string;
              svalue: string;
          }

          • name: string
          • svalue: string

    Returns {
        process: (() => number | Error);
        result: any;
    }

    • process: (() => number | Error)
        • (): number | Error
        • Returns number | Error

    • result: any
  • Type Parameters

    Parameters

    • options: Options<T> & {
          return: "guid";
      }
    • selectors: Selector[]
    • performQueryCallback: ((options, formattedSelectors, etype) => {
          result: any;
      })
        • (options, formattedSelectors, etype): {
              result: any;
          }
        • Parameters

          Returns {
              result: any;
          }

          • result: any
    • rowFetchCallback: (() => any)
        • (): any
        • Returns any

    • freeResultCallback: (() => void)
        • (): void
        • Returns void

    • getCountCallback: ((row) => number)
        • (row): number
        • Parameters

          • row: any

          Returns number

    • getGUIDCallback: ((row) => string)
        • (row): string
        • Parameters

          • row: any

          Returns string

    • getTagsAndDatesCallback: ((row) => {
          cdate: number;
          mdate: number;
          tags: string[];
      })
        • (row): {
              cdate: number;
              mdate: number;
              tags: string[];
          }
        • Parameters

          • row: any

          Returns {
              cdate: number;
              mdate: number;
              tags: string[];
          }

          • cdate: number
          • mdate: number
          • tags: string[]
    • getDataNameAndSValueCallback: ((row) => {
          name: string;
          svalue: string;
      })
        • (row): {
              name: string;
              svalue: string;
          }
        • Parameters

          • row: any

          Returns {
              name: string;
              svalue: string;
          }

          • name: string
          • svalue: string

    Returns {
        process: (() => string[] | Error);
        result: any;
    }

    • process: (() => string[] | Error)
        • (): string[] | Error
        • Returns string[] | Error

    • result: any
  • Type Parameters

    Parameters

    • options: Options<T>
    • selectors: Selector[]
    • performQueryCallback: ((options, formattedSelectors, etype) => {
          result: any;
      })
        • (options, formattedSelectors, etype): {
              result: any;
          }
        • Parameters

          Returns {
              result: any;
          }

          • result: any
    • rowFetchCallback: (() => any)
        • (): any
        • Returns any

    • freeResultCallback: (() => void)
        • (): void
        • Returns void

    • getCountCallback: ((row) => number)
        • (row): number
        • Parameters

          • row: any

          Returns number

    • getGUIDCallback: ((row) => string)
        • (row): string
        • Parameters

          • row: any

          Returns string

    • getTagsAndDatesCallback: ((row) => {
          cdate: number;
          mdate: number;
          tags: string[];
      })
        • (row): {
              cdate: number;
              mdate: number;
              tags: string[];
          }
        • Parameters

          • row: any

          Returns {
              cdate: number;
              mdate: number;
              tags: string[];
          }

          • cdate: number
          • mdate: number
          • tags: string[]
    • getDataNameAndSValueCallback: ((row) => {
          name: string;
          svalue: string;
      })
        • (row): {
              name: string;
              svalue: string;
          }
        • Parameters

          • row: any

          Returns {
              name: string;
              svalue: string;
          }

          • name: string
          • svalue: string

    Returns {
        process: (() => Error | ReturnType<T["factorySync"]>[]);
        result: any;
    }

    • process: (() => Error | ReturnType<T["factorySync"]>[])
        • (): Error | ReturnType<T["factorySync"]>[]
        • Returns Error | ReturnType<T["factorySync"]>[]

    • result: any
  • Parameters

    • filename: string
    • saveEntityCallback: ((guid, tags, sdata, etype) => Promise<void>)
        • (guid, tags, sdata, etype): Promise<void>
        • Parameters

          Returns Promise<void>

    • saveUIDCallback: ((name, value) => Promise<void>)
        • (name, value): Promise<void>
        • Parameters

          • name: string
          • value: number

          Returns Promise<void>

    • startTransactionCallback: null | (() => Promise<void>) = null
    • commitTransactionCallback: null | (() => Promise<void>) = null

    Returns Promise<boolean>

  • Parameters

    • selectors: FormattedSelector[]
    • callback: ((key, value, typeIsOr, typeIsNot) => string)
        • (key, value, typeIsOr, typeIsNot): string
        • Parameters

          • key: string
          • value: any
          • typeIsOr: boolean
          • typeIsNot: boolean

          Returns string

    Returns string[]

  • Pull an entity from the cache.

    Type Parameters

    Parameters

    • guid: string

      The entity's GUID.

    • className: string

      The entity's class.

    • useSkipAc: boolean = false

      Whether to tell the entity to use skip_ac.

    Returns null | T

    The entity or null if it's not cached.

  • Push an entity onto the cache.

    Parameters

    • guid: string

      The entity's GUID.

    • cdate: number

      The entity's cdate.

    • mdate: number

      The entity's mdate.

    • tags: string[]

      The entity's tags.

    • data: EntityData

      The entity's data.

    • sdata: SerializedEntityData

      The entity's sdata.

    Returns void

  • Parameters

    • entity: EntityInterface
    • saveNewEntityCallback: ((entity, guid, tags, data, sdata, cdate, etype) => Promise<boolean>)
        • (entity, guid, tags, data, sdata, cdate, etype): Promise<boolean>
        • Parameters

          Returns Promise<boolean>

    • saveExistingEntityCallback: ((entity, guid, tags, data, sdata, mdate, etype) => Promise<boolean>)
        • (entity, guid, tags, data, sdata, mdate, etype): Promise<boolean>
        • Parameters

          Returns Promise<boolean>

    • startTransactionCallback: null | (() => Promise<void>) = null
    • commitTransactionCallback: null | ((success) => Promise<boolean>) = null

    Returns Promise<boolean>

Generated using TypeDoc