File Information
Library:
Package:
Header: Poco/OSP/JS/JSExecutor.h
Description
An extension of the Poco::JS::Core::TimedJSExecutor for executing JavaScript code within an OSP environment.
Will stop the executing JavaScript when the containing bundle is stopped.
Adds the following global JavaScript objects:
- bundle (Poco::OSP::Bundle wrapper)
- properties (bundle properties wrapper)
- serviceRegistry (Poco::OSP::ServiceRegistry wrapper)
- logger (bundle context logger wrapper)
- HTTPRequest (HTTP request constructor)
- DBSession (Database session constructor)
Inheritance
Direct Base Classes: Poco::JS::Core::TimedJSExecutor
All Base Classes: Poco::JS::Core::JSExecutor, Poco::JS::Core::TimedJSExecutor, Poco::RefCountedObject, Poco::Runnable
Member Summary
Member Functions: bundle, context, handleError, handleMemoryWarning, handleOutOfMemory, onBundleStopped, setupGlobalObject, setupGlobalObjectTemplate
Inherited Functions: addModuleRegistry, addModuleSearchPath, attachToCurrentThread, buildStackTrace, call, callInContext, cancelTerminate, cancelTimer, cleanup, compile, current, duplicate, globalContext, handleError, handleMemoryWarning, handleOutOfMemory, importModule, include, includeScript, isRunning, isTerminating, isolate, referenceCount, release, reportError, require, resolveModule, run, runImpl, schedule, scriptCompleted, scriptContext, setImmediate, setInterval, setTimeout, setWrapperProperty, setup, setupGlobalObject, setupGlobalObjectTemplate, sleep, stop, terminate, timer, uri
Types Aliases
Ptr
using Ptr = Poco::AutoPtr < TimedJSExecutor >;
Constructors
TimedJSExecutor
TimedJSExecutor(
Poco::OSP::BundleContext::Ptr pContext,
Poco::OSP::Bundle::Ptr pBundle,
const std::string & source,
const Poco::URI & sourceURI,
const std::vector < std::string > & moduleSearchPaths,
Poco::UInt64 memoryLimit
);
Creates the TimedJSExecutor.
Destructor
~TimedJSExecutor
~TimedJSExecutor();
Destroys the TimedJSExecutor.
Member Functions
bundle
Poco::OSP::Bundle::Ptr bundle() const;
Returns the bundle containing the script.
context
Poco::OSP::BundleContext::Ptr context() const;
Returns the bundle context.
handleError
void handleError(
const ErrorInfo & errorInfo
);
handleMemoryWarning
void handleMemoryWarning(
std::size_t currentHeapLimit,
std::size_t initialHeapLimit
);
handleOutOfMemory
void handleOutOfMemory(
std::size_t currentHeapLimit,
std::size_t initialHeapLimit
);
onBundleStopped
void onBundleStopped(
const void * pSender,
Poco::OSP::BundleEvent & ev
);
setupGlobalObject
void setupGlobalObject(
v8::Local < v8::Object > & global,
v8::Isolate * pIsolate
);
setupGlobalObjectTemplate
void setupGlobalObjectTemplate(
v8::Local < v8::ObjectTemplate > & global,
v8::Isolate * pIsolate
);