GeoLeaf Core API - v3.19.0
    Preparing search index...
    • Pulls a declared layer, bounded by extent and cap, into the features store.

      Does not throw: every outcome is a report. An unreachable source, an unknown layer or an absent engine yield a named refused — a pull failing with zero and no motive is indistinguishable from a genuinely empty layer, and that confusion is what this closes.

      One OGC page is one transaction and one progress tick. An interruption therefore keeps what was already committed, and the persisted marker says the run did not finish — see report/pull-state.ts for why that marker carries no cursor.

      A layer declaring offline.source.delta is pulled as a DELTA once a complete pull of the same source and extent has left a mark: only datetime=<mark>/.. is asked, tombstones leave the device, and nothing is swept. Otherwise the pull is complete, and converges by removing what it did not return.

      When the layer is displayed, it is given what the store now holds as the run ends: the map follows the pull without a reload, and geoleaf:layer:updated announces it.

      Parameters

      • layerId: string

        Identifier of the layer to pull.

      • options: LayerPullOptions = {}

        Extent and abort signal.

      Returns Promise<LayerPullReport>

      The report of what was done.

      const report = await GeoLeaf?.Storage?.pullLayer?.("sites_rosario");
      if (report?.refused) console.warn("pas de rapatriement :", report.refused);
      else console.info(`${report?.written} écrites, ${report?.removed} retirées (${report?.mode})`);