Cafienne Reference Guide

Cafienne Reference Guide

  • Overview
  • Getting Started
  • CMMN
  • Cafienne IDE
  • Cafienne Engine
  • Extensions
  • API Reference
  • Releases

›Releases

Overview

  • Cafienne
  • A short introduction
  • Product Overview

Getting Started

  • Introducing Cafienne Demo
  • Generic UI
  • How to use task UI rendering
  • Two business applications
  • Obtaining Cafienne Demo

Some CMMN

  • What is CMMN
  • Modelling the Case Plan
  • Modelling the Case File
  • Modelling the Case Team
  • Other things to model

Cafienne IDE

  • An IDE?
  • Designing
  • Tasks and Parameters
  • Expressions
  • Deploying
  • Debugging

Cafienne Engine

  • The Cafienne Engine
  • Authentication
  • Authorization
  • Pictorial overview
  • Logging
  • Configuration
  • Repository

Extensions

  • Do we need extensions?
  • Workflow
  • Business Identifiers

API Reference

  • Introducing the API
  • Joining the platform
  • Start a Case
  • Case Team membership
  • Executing the case
  • Retrieving cases and tasks
  • Casefile requests

Releases

  • Overview
  • 1.1.24
  • 1.1.23
  • 1.1.22
  • 1.1.21
  • 1.1.20
  • 1.1.19
  • 1.1.18
  • 1.1.17
  • 1.1.16
  • 1.1.15
  • 1.1.14
  • 1.1.13
  • 1.1.12
  • 1.1.11
  • 1.1.10
  • 1.1.9
  • 1.1.8
  • 1.1.7
  • 1.1.6
  • 1.1.5
  • 1.1.4
  • 1.1.3
  • 1.1.2
  • 1.1.1
  • 1.1.0

Cafienne Engine Release 1.1.18

Performance Booster

This release is all about performance on the REST APIs. The queries on user authentication have shifted to the moment it is needed, thereby reducing unnecessary database roundtrips. Furthermore this release has a set of small changes to make the engine more extensible from outside.

Performance

With the introduction of consent groups in release 1.1.16 it has become possible for users with a valid JWT token to access the case engine, even if they are not registered in the engine's tenant database. Every REST API call to the engine started with a database request to retrieve the full platform information on the user's background from the tenant and consent group tables. For cases and tasks another query to the case team tables was made to determine whether the user has access to the actual case and task instances. This behavior has been refactored to an "as-and-when-needed" implementation, providing more fine grained and fine tuned database requests, with some specific situations reaching a 600% performance improvement.

Security

The case statistics endpoint (GET /cases/stats/) has been removed for now, as it exposed a security threat.

Consent Group API alignment with Tenant APIs

Up until release 1.1.17, the Consent Group APIs consisted of group creation and adding or removing of individual group members. Group creation is restricted to tenant owners, and for that matter belongs in the tenant API rather than in the group APIs. Therefore the endpoint shifted from POST /consent-group/{tenant} to POST /tenant/{tenant}/consent-groups. The endpoint POST /consent-group/{tenant} now provides a means for group owners to replace the entire consent group in one shot (next to the more cumbersome alternative to update member by member).

Logging & debugging improvements

Some of the deeper engine internal logging has been refactored and improved to render more meaningful messages upon failures. Furthermore the case debug logging events have been improved, especially json structures are no printed as escaped strings, but as the native json itself.

Housekeeping

Some dependencies have been updated, including using the openjdk:17-slim jre as the base docker image. Logging inside the Akka HTTP Web Server has been improved. The internal sbt build structures have been refactored and improved. The default branch in github has changed from master to main.

Tickets closed

TicketDescription
290Big timers (>8 months ahead) cause engine crashes
291Case output parameter mapping to a different name has undefined effects
292Safe navigation spel-expression does not work on case file items
300Swagger documentation on deleting a tenant user is invalid
301Consent groups creation must be done in tenant routes
302GetCaseStatistics exposes security issue
303Dynamic tagging gives unnecessary WARNING when starting engine
← 1.1.191.1.17 →
  • Performance
  • Security
  • Consent Group API alignment with Tenant APIs
  • Logging & debugging improvements
  • Housekeeping
  • Tickets closed