class AdHocSubProcessPropertyReader extends SubProcessPropertyReader {

    public ScriptTypeValue getAdHocCompletionCondition() {
        if (process.getCompletionCondition() instanceof FormalExpression) {
            FormalExpression completionCondition = (FormalExpression) process.getCompletionCondition();
            return new ScriptTypeValue(
                    Scripts.scriptLanguageFromUri(completionCondition.getLanguage(), Scripts.LANGUAGE.MVEL.language()),
                    FormalExpressionBodyHandler.of(completionCondition).getBody()
            );
        } else {
            return new ScriptTypeValue(Scripts.LANGUAGE.MVEL.language(), "autocomplete");
        }
    }

    public  AdHocSubProcessPropertyReader(AdHocSubProcess element, BPMNDiagram diagram, DefinitionResolver definitionResolver);

}