// CLASS HEADER
#include "module-loader.h"
+// EXTERNAL INCLUDES
+#include <dali/public-api/common/vector-wrapper.h>
+
// INTERNAL INCLUDES
#include <v8-utils.h>
ModuleLoader::ModuleLoader()
{
-
}
ModuleLoader::~ModuleLoader()
V8Utils::GetFileContents( fileName, contents );
+ if( contents.empty() )
+ {
+ return false;
+ }
+
return ExecuteScript( isolate, contents, fileName );
}
/**
- * ### var module = require("module-name");
+ * ### var module = require("moduleName");
*
*
* There is no standard for modules or the 'require' keyword in JavaScript.<br />
* from an object literal with name-value pairs (exports object) to a function.
*
* // my_first_module.js
- * module.exports = function() { log("hello-world"); }
+ * module.exports = function() { log("helloWorld"); }
*
* <br />
*
* #### Exporting as a constructor
*
*
- * // ImageActor.js
- * function ImageActor( position, orientation, image, name )
+ * // ImageView.js
+ * function ImageView( position, orientation, image, name )
* {
- * this = new dali.ImageActor( image );
+ * this = new dali.Control("ImageView");
+ * this.image = image;
* this.position = position;
* this.orientation = orientation;
* this.name = name;
* }
- * module.exports = ImageActor;
+ * module.exports = ImageView;
*
* <br />
*
* // main.js
*
- * var ImageActor = require(" ImageActor.js");
+ * var ImageView = require(" ImageView.js");
*
- * var imageActor = new ImageActor( position, orientation, image, "my first image actor");
+ * var imageView = new ImageView( position, orientation, image, "my first image view");
*
* #### Exporting as a singleton
*
* @for ModuleLoader
*
*/
-void ModuleLoader::Require(const v8::FunctionCallbackInfo< v8::Value >& args,
-
- v8::Persistent<v8::ObjectTemplate>& globalObjectTemplate )
+void ModuleLoader::Require(const v8::FunctionCallbackInfo< v8::Value >& args )
{
v8::Isolate* isolate = args.GetIsolate();
v8::HandleScope handleScope( isolate );
args.GetReturnValue().Set( moduleExports );
}
+
+void ModuleLoader::StorePreBuiltModule( v8::Isolate* isolate, v8::Local<v8::Object>& exportObject, const std::string& name )
+{
+ StoreModule( "", name, name, isolate, exportObject );
+}
+
void ModuleLoader::StoreScriptInfo( const std::string& sourceFileName )
{
V8Utils::GetFileDirectory( sourceFileName, mCurrentScriptPath);