@Override public void run() { HazelcastProperties hzProperties = getNodeEngine().getProperties(); if (! hzProperties.getBoolean(GroupProperty.SCRIPTING_ENABLED)) { throw new AccessControlException("Using ScriptEngine is not allowed on this Hazelcast member."); } ScriptEngineManager scriptEngineManager = ScriptEngineManagerContext.getScriptEngineManager(); ScriptEngine engine = scriptEngineManager.getEngineByName(engineName); if (engine == null) { throw new IllegalArgumentException("Could not find ScriptEngine named '" + engineName + "'."); } engine.put("hazelcast", getNodeEngine().getHazelcastInstance()); try { this.result = engine.eval(script); } catch (ScriptException e) { // ScriptException's cause is not serializable - we don't need the cause HazelcastException hazelcastException = new HazelcastException(e.getMessage()); hazelcastException.setStackTrace(e.getStackTrace()); throw hazelcastException; } }
@Override public void run() { ManagementCenterConfig managementCenterConfig = getNodeEngine().getConfig().getManagementCenterConfig(); if (!managementCenterConfig.isScriptingEnabled()) { throw new AccessControlException("Using ScriptEngine is not allowed on this Hazelcast member."); } ScriptEngineManager scriptEngineManager = ScriptEngineManagerContext.getScriptEngineManager(); ScriptEngine engine = scriptEngineManager.getEngineByName(engineName); if (engine == null) { throw new IllegalArgumentException("Could not find ScriptEngine named '" + engineName + "'."); } engine.put("hazelcast", getNodeEngine().getHazelcastInstance()); try { this.result = engine.eval(script); } catch (ScriptException e) { // ScriptException's cause is not serializable - we don't need the cause HazelcastException hazelcastException = new HazelcastException(e.getMessage()); hazelcastException.setStackTrace(e.getStackTrace()); throw hazelcastException; } }