syncope-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Francesco Chicchiriccò (JIRA) <>
Subject [jira] [Commented] (SYNCOPE-956) Allow Javascript-based customizations
Date Mon, 10 Oct 2016 14:43:21 GMT


Francesco Chicchiriccò commented on SYNCOPE-956:

The idea is to:
 # define a new {{ExtensionScript}} entity with {{key}}, {{type}} and {{content}} properties
  ## {{key}} is the script's mnemonic name
  ## {{type}} is one of [ImplementationLookup#Type|]
  ## {{content}} is the actual JS script
# adjust other entities so that a script name can be optionally provided for customization
# define customization Java classes which will act as script wrappers so that, when a script
is required for a given customization, such parametric Java classes will be used instead,
delegating the actual logic to the selected script

An example implementation of wrapper Java class is provided for {{PullActions}} at

This would require to update the {{PullJobDelegate#doExecuteProvisioning}} method from


> Allow Javascript-based customizations
> -------------------------------------
>                 Key: SYNCOPE-956
>                 URL:
>             Project: Syncope
>          Issue Type: New Feature
>            Reporter: Francesco Chicchiriccò
>              Labels: javascript
>             Fix For: 2.1.0
> The core can be customized in [several ways|];
all customizations require to be written as Java classes - which is generally good but requires
redeploy to be made effective, unless some class reloading mechanism is in place (as JRebel).
> By leveraging Java 8's [Nashorn|]
- which also provides interesting execution performance, we could overcome such limitation
and allow to write customizations in Javascript, which can be immediately available for execution
at runtime.
> Once implemented in the core, such feature will require editing capabilities to be added
to console and IDE plugins.

This message was sent by Atlassian JIRA

View raw message