* Do not rely on Java classes to implement IPathElement.
Implement all necessary features such as href() and getChildElement() ourselves instead. * Add missing classes to class.properties. * Display actual line numbers in function source macro.
This commit is contained in:
parent
c9463fe57a
commit
694139d897
6 changed files with 47 additions and 26 deletions
|
@ -7,14 +7,6 @@ function constructor(name) {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* of no use, just to avoid error message
|
|
||||||
*/
|
|
||||||
function onRequest() {
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* return true/false to determine if application is running
|
* return true/false to determine if application is running
|
||||||
*/
|
*/
|
||||||
|
@ -25,4 +17,19 @@ function isActive() {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method used by Helma for URL composition.
|
||||||
|
*/
|
||||||
|
function href(action) {
|
||||||
|
var base = root.href() + this.name + "/";
|
||||||
|
return action ? base + action : base;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method used by Helma request path resolution.
|
||||||
|
*/
|
||||||
|
function getChildElement(name) {
|
||||||
|
if (name == "api")
|
||||||
|
return this.getDoc();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
/**
|
/**
|
||||||
* get the prototype of any doc-object (either a prototype, a function or a tag)
|
* Get the prototype of any doc-object (either a prototype, a function or a tag)
|
||||||
*/
|
*/
|
||||||
function getDocPrototype(obj) {
|
function getDocPrototype(obj) {
|
||||||
var tmp = obj;
|
var tmp = obj;
|
||||||
while (tmp != null && tmp.getType() != this.PROTOTYPE) {
|
while (tmp != null && tmp.getType() != this.PROTOTYPE) {
|
||||||
|
@ -11,12 +11,19 @@ function getDocPrototype(obj) {
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* get a prototype of this docapplication, ie get on of the children of this object
|
* Get a prototype of this docapplication, ie get on of the children of this object
|
||||||
*/
|
*/
|
||||||
function getPrototype(name) {
|
function getPrototype(name) {
|
||||||
return this.getChildElement("prototype_" + name);
|
return this.getChildElement("prototype_" + name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method used by Helma for URL composition.
|
||||||
|
*/
|
||||||
|
function href(action) {
|
||||||
|
var base = this.getParentElement().href() + "api/";
|
||||||
|
return action ? base + action : base;
|
||||||
|
}
|
||||||
|
|
||||||
function getDir(dir, obj) {
|
function getDir(dir, obj) {
|
||||||
dir.mkdir();
|
dir.mkdir();
|
||||||
|
|
|
@ -129,8 +129,9 @@ function source_macro(param) {
|
||||||
sourcecode = sourcecode.replace(r, "");
|
sourcecode = sourcecode.replace(r, "");
|
||||||
|
|
||||||
var arr = sourcecode.split("<br />");
|
var arr = sourcecode.split("<br />");
|
||||||
|
var line = this.getStartLine ? this.getStartLine() : 1;
|
||||||
for (var i = 0; i < arr.length; i++) {
|
for (var i = 0; i < arr.length; i++) {
|
||||||
res.write('<font color="#aaaaaa">' + (i + 1) + ':</font> ');
|
res.write('<font color="#aaaaaa">' + (line++) + ':</font> ');
|
||||||
if (i < 99) {
|
if (i < 99) {
|
||||||
res.write(' ');
|
res.write(' ');
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,14 +1,3 @@
|
||||||
///**
|
|
||||||
// * utility function for head_macro, rendering link to app and to prototype
|
|
||||||
// */
|
|
||||||
//function getPath() {
|
|
||||||
// var appObj = this.getParentElement ();
|
|
||||||
// var str = appObj.getPath();
|
|
||||||
// str += '/<a href="' + this.href("main") + '">' + this.name + '</a>';
|
|
||||||
// return( str );
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
|
||||||
function translateType(filter) {
|
function translateType(filter) {
|
||||||
if (filter == "actions")
|
if (filter == "actions")
|
||||||
return Packages.helma.doc.DocElement.ACTION;
|
return Packages.helma.doc.DocElement.ACTION;
|
||||||
|
@ -24,9 +13,18 @@ function translateType(filter) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the application we're part of.
|
||||||
|
*/
|
||||||
function getApplication() {
|
function getApplication() {
|
||||||
return this.getParentElement();
|
return this.getParentElement();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method used by Helma for URL composition.
|
||||||
|
*/
|
||||||
|
function href(action) {
|
||||||
|
var base = this.getParentElement().href()
|
||||||
|
+ this.getElementName() + "/";
|
||||||
|
return action ? base + action : base;
|
||||||
|
}
|
||||||
|
|
|
@ -55,5 +55,11 @@ function getApp(name) {
|
||||||
return appObj;
|
return appObj;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method used by Helma path resolution.
|
||||||
|
*/
|
||||||
|
function getChildElement(name) {
|
||||||
|
return this.getApp(name);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -21,5 +21,7 @@ helma.framework.core.Application = Application
|
||||||
helma.doc.DocApplication = DocApplication
|
helma.doc.DocApplication = DocApplication
|
||||||
helma.doc.DocPrototype = DocPrototype
|
helma.doc.DocPrototype = DocPrototype
|
||||||
helma.doc.DocFunction = DocFunction
|
helma.doc.DocFunction = DocFunction
|
||||||
|
helma.doc.DocProperties = DocFunction
|
||||||
|
helma.doc.DocSkin = DocFunction
|
||||||
helma.doc.DocTag = DocTag
|
helma.doc.DocTag = DocTag
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue