Search in sources :

Example 1 with StandardScriptEngineManager

use of org.forgerock.openam.scripting.StandardScriptEngineManager in project OpenAM by OpenRock.

the class ScriptingGuiceModule method configure.

@Override
protected void configure() {
    bind(ScriptValidator.class).to(StandardScriptValidator.class);
    bind(Logger.class).annotatedWith(Names.named("ScriptLogger")).toInstance(logger);
    install(new FactoryModuleBuilder().implement(new TypeLiteral<ScriptingService>() {
    }, ScriptConfigurationService.class).build(new TypeLiteral<ScriptingServiceFactory>() {
    }));
    install(new FactoryModuleBuilder().implement(new TypeLiteral<ScriptingDataStore>() {
    }, ScriptConfigurationDataStore.class).build(new TypeLiteral<ScriptingDataStoreFactory>() {
    }));
    bind(StandardScriptEngineManager.class).annotatedWith(Names.named(AUTHENTICATION_SERVER_SIDE.name())).toInstance(new StandardScriptEngineManager());
    bind(StandardScriptEngineManager.class).annotatedWith(Names.named(POLICY_CONDITION.name())).toInstance(new StandardScriptEngineManager());
    bind(StandardScriptEngineManager.class).annotatedWith(Names.named(OIDC_CLAIMS.name())).toInstance(new StandardScriptEngineManager());
    bind(RestletHttpClient.class).annotatedWith(Names.named(SupportedScriptingLanguage.JAVASCRIPT.name())).to(JavaScriptHttpClient.class);
    bind(RestletHttpClient.class).annotatedWith(Names.named(SupportedScriptingLanguage.GROOVY.name())).to(GroovyHttpClient.class);
    try {
        bind(Client.class).annotatedWith(Names.named("ScriptingHttpClient")).toInstance(new Client(new HttpClientHandler()));
    } catch (HttpApplicationException e) {
        logger.error("Failed to create HttpClientHandler", e);
    }
}
Also used : StandardScriptEngineManager(org.forgerock.openam.scripting.StandardScriptEngineManager) ScriptingService(org.forgerock.openam.scripting.service.ScriptingService) TypeLiteral(com.google.inject.TypeLiteral) FactoryModuleBuilder(com.google.inject.assistedinject.FactoryModuleBuilder) ScriptingDataStore(org.forgerock.openam.scripting.datastore.ScriptingDataStore) StandardScriptValidator(org.forgerock.openam.scripting.StandardScriptValidator) ScriptValidator(org.forgerock.openam.scripting.ScriptValidator) RestletHttpClient(org.forgerock.http.client.RestletHttpClient) JavaScriptHttpClient(org.forgerock.openam.scripting.api.http.JavaScriptHttpClient) Client(org.forgerock.http.Client) GroovyHttpClient(org.forgerock.openam.scripting.api.http.GroovyHttpClient) HttpClientHandler(org.forgerock.http.handler.HttpClientHandler) HttpApplicationException(org.forgerock.http.HttpApplicationException)

Example 2 with StandardScriptEngineManager

use of org.forgerock.openam.scripting.StandardScriptEngineManager in project OpenAM by OpenRock.

the class OidcClaimsExtensionTest method setupScript.

@BeforeClass
public void setupScript() throws Exception {
    String rawScript = IOUtils.readStream(this.getClass().getClassLoader().getResourceAsStream("oidc-claims-extension.groovy"));
    SupportedScriptingLanguage scriptType = SupportedScriptingLanguage.GROOVY;
    this.script = new ScriptObject("oidc-claims-script", rawScript, scriptType, null);
    StandardScriptEngineManager scriptEngineManager = new StandardScriptEngineManager();
    scriptEngineManager.registerEngineName(SupportedScriptingLanguage.GROOVY_ENGINE_NAME, new GroovyScriptEngineFactory());
    scriptEvaluator = new StandardScriptEvaluator(scriptEngineManager);
}
Also used : StandardScriptEngineManager(org.forgerock.openam.scripting.StandardScriptEngineManager) StandardScriptEvaluator(org.forgerock.openam.scripting.StandardScriptEvaluator) ScriptObject(org.forgerock.openam.scripting.ScriptObject) GroovyScriptEngineFactory(org.codehaus.groovy.jsr223.GroovyScriptEngineFactory) SupportedScriptingLanguage(org.forgerock.openam.scripting.SupportedScriptingLanguage) BeforeClass(org.testng.annotations.BeforeClass)

Example 3 with StandardScriptEngineManager

use of org.forgerock.openam.scripting.StandardScriptEngineManager in project OpenAM by OpenRock.

the class ScriptResourceTest method setUp.

@BeforeMethod
public void setUp() throws ResourceException {
    Logger logger = mock(Logger.class);
    ScriptingService scriptingService = new MockScriptingService();
    ScriptingServiceFactory serviceFactory = mock(ScriptingServiceFactory.class);
    when(serviceFactory.create(any(Subject.class), anyString())).thenReturn(scriptingService);
    ExceptionMappingHandler<ScriptException, ResourceException> errorHandler = new ScriptExceptionMappingHandler();
    scriptResource = new ScriptResource(logger, serviceFactory, errorHandler, new StandardScriptValidator(new StandardScriptEngineManager()));
    context = mock(Context.class);
    given(context.asContext(HttpContext.class)).willReturn(new HttpContext(json(object(field("headers", Collections.emptyMap()), field("parameters", Collections.emptyMap()))), null));
}
Also used : StandardScriptEngineManager(org.forgerock.openam.scripting.StandardScriptEngineManager) HttpContext(org.forgerock.json.resource.http.HttpContext) ScriptContext(org.forgerock.openam.scripting.ScriptConstants.ScriptContext) Context(org.forgerock.services.context.Context) ScriptingService(org.forgerock.openam.scripting.service.ScriptingService) HttpContext(org.forgerock.json.resource.http.HttpContext) StandardScriptValidator(org.forgerock.openam.scripting.StandardScriptValidator) Logger(org.slf4j.Logger) ScriptingServiceFactory(org.forgerock.openam.scripting.service.ScriptingServiceFactory) Subject(javax.security.auth.Subject) ScriptException(org.forgerock.openam.scripting.ScriptException) ResourceException(org.forgerock.json.resource.ResourceException) ScriptExceptionMappingHandler(org.forgerock.openam.scripting.rest.ScriptExceptionMappingHandler) ScriptResource(org.forgerock.openam.scripting.rest.ScriptResource) BeforeMethod(org.testng.annotations.BeforeMethod)

Example 4 with StandardScriptEngineManager

use of org.forgerock.openam.scripting.StandardScriptEngineManager in project OpenAM by OpenRock.

the class ObservedContextFactoryTest method setupTests.

@BeforeMethod
public void setupTests() {
    scriptEngineManager = new StandardScriptEngineManager();
    testContextFactory = new ObservedContextFactory(scriptEngineManager);
}
Also used : StandardScriptEngineManager(org.forgerock.openam.scripting.StandardScriptEngineManager) BeforeMethod(org.testng.annotations.BeforeMethod)

Aggregations

StandardScriptEngineManager (org.forgerock.openam.scripting.StandardScriptEngineManager)4 StandardScriptValidator (org.forgerock.openam.scripting.StandardScriptValidator)2 ScriptingService (org.forgerock.openam.scripting.service.ScriptingService)2 BeforeMethod (org.testng.annotations.BeforeMethod)2 TypeLiteral (com.google.inject.TypeLiteral)1 FactoryModuleBuilder (com.google.inject.assistedinject.FactoryModuleBuilder)1 Subject (javax.security.auth.Subject)1 GroovyScriptEngineFactory (org.codehaus.groovy.jsr223.GroovyScriptEngineFactory)1 Client (org.forgerock.http.Client)1 HttpApplicationException (org.forgerock.http.HttpApplicationException)1 RestletHttpClient (org.forgerock.http.client.RestletHttpClient)1 HttpClientHandler (org.forgerock.http.handler.HttpClientHandler)1 ResourceException (org.forgerock.json.resource.ResourceException)1 HttpContext (org.forgerock.json.resource.http.HttpContext)1 ScriptContext (org.forgerock.openam.scripting.ScriptConstants.ScriptContext)1 ScriptException (org.forgerock.openam.scripting.ScriptException)1 ScriptObject (org.forgerock.openam.scripting.ScriptObject)1 ScriptValidator (org.forgerock.openam.scripting.ScriptValidator)1 StandardScriptEvaluator (org.forgerock.openam.scripting.StandardScriptEvaluator)1 SupportedScriptingLanguage (org.forgerock.openam.scripting.SupportedScriptingLanguage)1