Skip to content

Migrate Workshop/HistoricalAccess server Node Manager to AsyncCustomNodeManager #764

Description

@romanett

Part of #753.

Goal

Migrate the HistoricalAccess Workshop server sample to AsyncCustomNodeManager, including its historian read/update paths. It builds its address space by hand (no generated model), so Step 2 (Fluent) does not apply.

Scope

  • Workshop/HistoricalAccess/Server/HistoricalAccessNodeManager.csHistoricalAccessServerNodeManager : CustomNodeManager2
  • Workshop/HistoricalAccess/Server/HistoricalAccess Server.csproj and its node-manager registration
  • Related history helper types under Workshop/HistoricalAccess/Server

Do not touch the client or the Tester project.

Step 1 — AsyncCustomNodeManager

  1. Base class CustomNodeManager2AsyncCustomNodeManager; constructor base(server, configuration, <namespaceUri>).
  2. CreateAddressSpaceoverride async ValueTask CreateAddressSpaceAsync(...); LoadPredefinedNodesLoadPredefinedNodesAsync.
  3. Convert history handling to the async history interfaces: IHistoryReadAsyncNodeManager / IHistoryUpdateAsyncNodeManager (raw data, modified, processed/aggregate reads, and history update/delete). Convert read/write callbacks to async handlers.
  4. Remove lock (Lock) blocks — use base async locking.
  5. Register via IAsyncNodeManagerFactory.

Acceptance criteria

  • HistoricalAccessServerNodeManager derives from AsyncCustomNodeManager; history read/update goes through the async interfaces; no CustomNodeManager2 / lock (Lock) remains.
  • HistoricalAccess Server builds/starts; the client performs raw/processed history reads and history updates successfully.

References

  • docs/AsyncServerSupport.md (UA-.NETStandard) — async history-read/update interfaces.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions