You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Sebb (Closed) (JIRA)" <ji...@apache.org> on 2011/12/14 10:30:31 UTC

[jira] [Closed] (JEXL-115) Add support for asynchronous script execution and cancellation

     [ https://issues.apache.org/jira/browse/JEXL-115?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sebb closed JEXL-115.
---------------------

    
> Add support for asynchronous script execution and cancellation
> --------------------------------------------------------------
>
>                 Key: JEXL-115
>                 URL: https://issues.apache.org/jira/browse/JEXL-115
>             Project: Commons JEXL
>          Issue Type: New Feature
>            Reporter: Henri Biestro
>            Assignee: Henri Biestro
>             Fix For: 2.1
>
>
> WHY:
> To allow proper sandboxing and let users run their own script, it is necessary to control the time a script is allowed to run and avoid runaway executions (for instance while(true); ).
> WHAT:
> Support for asynchronuous execution is usually based on Runnable/Callable/Future and Thread interruption. The Callable interface seems the most versatile so a method to transform a Script into a Callable seems in order. Thread interruption is in most cases an indication that must be checked (besides locking methods) somehow.
> HOW:
> Creating a Callable from a Script, Context (and arguments) is straightforward. Checking thread interruption can be performed in the Interpreter loop at "key" points namely getting/setting properties, calling methods/functions, resolving identifiers and of course, within loop constructs (for, while). 
> BACKGROUND:
> http://apache-commons.680414.n4.nabble.com/jexl-JEXL-Secure-Sandbox-tt3626959.html

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira