Helma 1.5 Javascript LibrariesThe following is a proposal for how the helmaLib should be restructured and included in the release of Helma 1.5. The goal of this proposal is to include a library in a format that is open (not zipped) and easily accessible/approachable/transparent for newbies. It should leverage the newly added repository capabilities in a way that is ideal for these kinds of libraries and should allow them to be used efficiently in current and future applications. For Helma 1.5, the libraries would be spread over two sub-directories in ./helma/modules, so that extensions to the core javascript prototypes would be in ./modules/core/ and other prototypes such as Aspects, File, Ssh, Search, etc, in ./modules/helma/ Applications and modules that depend on any of these libraries would use app.addRepository() in the global scope of there code files (not inside of functions) to let Helma take care of these dependencies. For example:
Dependencies within the library are automatically taken care of using the same approach. In the above example, Zip.js requires File.js and Search.js requires lucene.jar. The code in the files Array.js and String.js would directly extend these core javascript prototypes. The file structure would look as follows:
In addition, the modules directory in Helma 1.5 would still also contain the helmaTools.zip repository. I've attached a zip file of the modules directory that basically implements this, but have not yet committed this to CVS. There it could either replace apps/helmaLib or get its own CVS module named apps/modules. |
navigation
Download
Community
Weblog
Mailing Lists
IRC Channel
Documentation
Introductions
Tools
Reference
Project
Roadmap
Bug Reporting
Source
Helma NG Wiki
Wiki
Tags
Updates
Related Projects
Sites using Helma
Shop
search
all tags
Tagsapps (1) bugs (2) class (1) community (2) compatibility (1) concurrency (1) continuations (2) Documentation (6) dogfood (1) formatting (1) functions (1) gobi (1) helma (7) helma 1.6 (17) helma 1.7 (8) helma 1.x (4) Helma 1x (0) helma 2 (11) helma ng (20) hopobject (1) howto sample code xml-rpc (1) html (1) inheritance (5) introspection (1) java (3) javascript (5) jetty (4) JSDoc (1) lazy (1) marius person (1) metaprogramming (3) modules (5) oop (1) organization (2) ORM (2) parsing (1) plugins (1) project (2) projects (1) prototype (2) prototype scope rhino functions this (0) Rabbit (2) Reference (1) REPL (1) rhino (5) roadmap (3) scope (1) shell (1) shop (0) Skin Rendering (5) Snippets (1) source svn (1) sugar (3) templates (13) testing (5) this (1) Tobi (10) web.xml (2) xml (1) Pages linking to this page: Wiki Overview Text Draft, wiki |