Information Technology Reference
In-Depth Information
The existing components and services
There are many existing components in the UberFire framework, and covering them all
will take a topic by itself. We will explore the most important components from the BPM
perspective, and how they help in the generation of a BPM system for jBPM6.
Some of the backend features that UberFire has that are important for jBPM6 are as fol-
lows:
Security framework : UberFire security is highly pluggable and assumes very
little by default. Any class that implements the
org.uberfire.security.auth.AuthenticationSource interface
can tell the framework which credentials are valid and which are not. The frame-
work comes with a starter set of AuthenticationSource implementations,
but you can implement your own, add it to your workbench class path, and config-
ure it using Java's standard ServiceLoader facility, by simply writing the full
class name in the META-INF/services/
org.uberfire.security.auth.AuthenticationSource file. If you
want more than one authentication source at a time, list each fully qualified class
name on its own line in the file; if your AuthenticationSource implementa-
tion also implements RoleProvider , then it can also provide role authorization.
Virtual File System API : UberFire provides a configurable virtual file system and
an implementation of said configurations using Git software configuration man-
agement ( http://git-scm.com ). This allows UberFire to store not only the know-
ledge assets created with the KIE workbench, but also perspective definitions and
geometries for users' customized layouts. The interface provided for the virtual file
system is created by backporting the NIO.2 API defined for Java 8 ( https://jcp.org/
en/jsr/detail?id=203 ) into the code base of UberFire. Just as the security frame-
work, it can be configured using Java's standard ServiceLoader facility by
writing content to the META-INF/services/
org.uberfire.java.nio.file.spi.FileSystemProvider file.
However, this isn't a recommended practice unless you know exactly what you're
doing.
Thanks to these backend features, a lot of other features can be easily provided. Among the
frontend features, we have the following:
Perspective generation : Perspectives provide a powerful mechanism for task-ori-
ented interaction with resources, multi-tasking, and information filtering. It
Search WWH ::




Custom Search