Skip to Content
Client LibrariesDotnetGetting Started

Getting Started

Installation

# Haupt-Client dotnet add package ProcessCube.Engine.Client # Mit .NET Generic Host Integration dotnet add package ProcessCube.Engine.Client.Extensions.Hosting # Mit OAuth 2.0 Authentifizierung dotnet add package ProcessCube.Engine.Client.Extensions.OAuth20

Voraussetzungen

  • .NET 6.0 oder höher (Hosting-Extension)
  • .NET Standard 2.1 (Client, Core, OAuth20)
  • Eine laufende ProcessCube® Engine

ClientFactory

Die ClientFactory ist der zentrale Einstiegspunkt für alle API-Clients. Sie erzeugt typisierte Clients für jeden Bereich der Engine-API.

using ProcessCube.Engine; Uri engineUrl = new Uri("http://localhost:56000"); // Verschiedene Clients erstellen IProcessDefinitionsClient processDefinitions = ClientFactory.CreateProcessDefinitionsClient(engineUrl); IProcessInstancesClient processInstances = ClientFactory.CreateProcessInstancesClient(engineUrl); IUserTaskClient userTasks = ClientFactory.CreateUserTaskClient(engineUrl); IExternalTaskClient externalTasks = ClientFactory.CreateExternalTaskClient(engineUrl); IEventClient events = ClientFactory.CreateEventClient(engineUrl); IFlowNodeInstancesClient flowNodes = ClientFactory.CreateFlowNodeInstancesClient(engineUrl); IApplicationInfoClient appInfo = ClientFactory.CreateApplicationInfoClient(engineUrl);

Mit Authentifizierung

Alle CreateXxxClient-Methoden akzeptieren einen optionalen IIdentityAccessor als zweiten Parameter:

using ProcessCube.Engine.Identities; IIdentityAccessor identityAccessor = new SimpleIdentityAccessor( new SimpleIdentity { UserId = "user-id", Token = "bearer-token" }); IProcessDefinitionsClient client = ClientFactory.CreateProcessDefinitionsClient(engineUrl, identityAccessor);

Async/Await

Alle Methoden sind asynchron und verwenden Task-basierte Muster mit CancellationToken:

IReadOnlyList<ProcessDefinition> definitions = await processDefinitions.GetProcessDefinitionsAsync(CancellationToken.None);

Verwenden Sie immer CancellationToken — insbesondere in ASP.NET Core Controllern und Hosted Services, um bei Timeouts oder Abbrüchen saubere Bereinigung zu ermöglichen.

Nächste Schritte