See: Description
Interface | Description |
---|---|
GlobalContext |
A custom
SubjectMapper can call one of the get() methods of this interface to access data that is common all
subject mappers. |
SubjectMapper |
The SubjectMapper interface must be implemented by any custom
SubjectMapper class that
you write. |
SwitchableSubjectMapper | Deprecated
This interface exists purely to support a mode of TOBO that is inferior in many ways to the other supported TOBO modes.
|
Class | Description |
---|---|
Constants |
Constants used when interacting with the the Permissioning API
|
DefaultGlobalContext |
This class implements the
GlobalContext interface and is already deployed at the Permissioning Auth Module. |
Group |
A grouping of users and/or other groups.
|
Permissionable |
Classes that extend this class can be assigned permissions.
|
PermissioningDataSource |
When a
PermissioningDataSource is constructed it must be
supplied with a DataSource object. |
PermissionPublisher | |
RegexSuffixSubjectMapper |
This implementation of the
SubjectMapper interface maps subjects in the same manner as the default SubjectMapper (see the section on Mapping Logic, below),
but unlike the default SubjectMapper it permits multiple mappings to be added to it. |
SubjectMapping |
A convenience class that can be used by implementations of
SubjectMapper
to store the keys and subject mappings passed to its updateMappings method. |
SwitchByKeySubjectPatternMapper | Deprecated
See the deprecation warning in
SwitchableSubjectMapper . |
User |
Represents a permissioned user that is able to log on to Caplin Trader.
|
Enum | Description |
---|---|
Authorization |
Defines the allowed types of authorization that can be applied to an action.
|
Role |
Defines the possible roles for a
PermissioningDataSource |
Exception | Description |
---|---|
ActionAlreadyExistsException |
Thrown at runtime if one attempts to create a
Rule that specifies an action
which has already been specified by another, earlier created Rule . |
DuplicateNodeException |
Thrown when adding a
Permissionable to a group, when that Permissionable already exists as a member. |
InvalidHierarchyException |
Thrown if the hierarchy to be created is unacceptable.
|
NoTransactionInProgressException |
Thrown when an attempted operation requires a transaction to be in
progress; however one is not.
|
PermissionableNotFoundException |
Thrown when asking the
PermissioningDataSource for a Permissionable that has not been
added. |
TransactionInProgressException |
Thrown when an attempt is made to start a new transaction if another transaction
is still in progress.
|
The Caplin Permissioning Integration API provides classes and interfaces that allow you to create Permissioning Adapters.
A Permissioning Adapter sends permissioning data to Caplin Liberator. The source of the permissioning data may be a permission system that is not part of Caplin Platform, but which you want to integrate with Caplin Trader.
The Permissioning Integration API uses the services of the Caplin DataSource
for Java API (package com.caplin.datasource
and its subpackages),
allowing the Adapter to send permissioning data to Liberator
using the DataSource protocol, but without the need to write code at the
DataSource API level.
For additional information about how to use this API, see the documents Caplin Permissioning: Permissioning Overview And Concepts and Caplin Permissioning: How To Create A Permissioning DataSource.
Note: Previous versions of this API were called the Caplin Xaqua Permissioning DataSource API.
The Caplin Permissioning Integration API is part of the Caplin Integration Suite Software Development Kit (SDK) and contains the following components:
Follow the links below for further information about the Permissioning Integration API.
DataSource 5.0 Integration
The Permissioning Integration library has been updated to use DataSource for Java 5.0 API.
Simplified Construction
The construction of the
PermissioningDataSource
has
been simplified. The constructor now only takes a
DataSource
and a Role
.
If the PermissioningDataSource
is to have a slave
role, the slave name is now set by giving the DataSource
the --permission.rolename
argument when the
DataSource
is instantiated. If the PermissioningDataSource
has the master role, a slave name does not have to be set.
The setSlaveRole()
and setMasterRole()
methods of the PermissioningDataSource
have been removed as they are redundant.
Note: If you are upgrading from a version lower than 4.5.20 you should follow the upgrade instructions for all versions since your current version.
If you are upgrading from version 5.0.0 there are no changes that need to be implemented.
To upgrade to version 6.0.0, you must change the code of your
PermissioningDataSource
adapter(s) to allow for the
following changes to the API:
The legacy message mode was removed from the Permissioning
Integration 5.0 API. When using the legacy message mode, you
did not have to give your single
PermissioningDataSource
a role. As this mode is
no longer supported, you must always give each of your
PermissioningDataSources
a
Role
(and a slave name, if the
role is slave
). If upgrading from a system that
used the legacy message mode, you will have one
PermissioningDataSource
only and therefore should
give that single PermissioningDataSource
the
master role.
The PermissioningDataSource
constructor now only takes in a DataSource
and a
Role
.
See New Features.
For example code that shows how to construct both master and slave
PermissioningDataSources
using the V6.0.0 API,
see the document Caplin Permissioning: How To Create A
Permissioning DataSource.
The Permissioning DataSource 4.x SDK came with a Demo Permissioning DataSource that was configured using XML. The new Caplin Permissioning Integration for Java SDK does not contain a Demo Permissioning Adapter, and the Demo Permissioning XML is no longer supported.
If you have derived your existing Permissioning Adapter from the
Demo Permissioning DataSource, and have modified the Demo
Permissioning XML to define your own permissioning data,
you will need to change the code of the Permissioning Adapter.
The PermissioningDataSource
constructor no longer takes an InputStream
parameter specifying
the configuration. Therefore, you must change the DataSource
application to read and parse the XML directly, and supply the
extracted permissioning data to the Permissioning Integration API.
The User.setSubjectMapping(String, String)
method
has been removed and the
User.addSubjectMapping(String, Map)
method should be used instead to add subject mappings.
The PermissioningConnectionListener
and
PermissioningDataSourceListener
interfaces have
been removed. If you want to listen to peer status events you
can add a com.caplin.datasource.ConnectionListener
to DataSource
that is passed into the
PermissioningDataSource
.
For more detail on how to do this see the
package com.caplin.datasource
.
Please send bug reports and comments to Caplin support