Re: Skin Name in Macro
"Maksim Lin for technical support mailling lists" <[email protected]> Thu, 31 Jul 2008 09:25:00 +1000
| Newsgroups | gmane.comp.java.helma.general |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format.
------_=_NextPart_001_01C8F29B.7CE3CE17
Content-Type: text/plain;
charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Hi Julian,
Yes and no.
No, its currently not exposed to JS but Yes the info is all there in the
Java code.
Its actually a little convoluted as:
* the current skin object (Java Skin class) is a private member variable
called "activeSkin" of the ReponseTrans class.
* ReponseTrans is a private member variable called "res" of the
ReponseBean class.=20
Because the above 2 variables are private, they are currently not
accessible to JS.
But even if they were, the Skin class has no reference to the resource
(eg. skin file) that created it, which is probably what you actually
want.
Sooooo, I've whipped a quick patch (attached) that gives access to the
current skisn resource name, eg.
function doSomething_macro() {
writeln("I was called from the
Skin:"+res.getResponseTransaction().activeSkin.getName());
}
The patch is against current helma trunk. I'l also add this to bugzilla
in the hope of getting it into the Helma mainline as this is not the
first time I've needed access to the res.res (ReponseTrans) so would be
nice to have it accessible in JS outside this particular usecase.
thanks,
Maks.
ps. I've updated as well the comment of ResponseTrans which is clearly
out of date and wrong.
> -----Original Message-----
> From: [email protected]=20
> [mailto:[email protected]] On Behalf Of Julian Tree
> Sent: Wednesday, 30 July 2008 22:50
> To: Helma User Mailing List
> Subject: [Helma-user] Skin Name in Macro
>=20
> Hi,
>=20
> Within a macro can I find out which template it is called from?
>=20
> Julian
>=20
> _______________________________________________
> Helma-user mailing list
> [email protected]
> http://helma.org/mailman/listinfo/helma-user
>=20
------_=_NextPart_001_01C8F29B.7CE3CE17
Content-Type: application/octet-stream;
name="helma-access-activeSkin-patch.diff"
Content-Transfer-Encoding: base64
Content-Description: helma-access-activeSkin-patch.diff
Content-Disposition: attachment; filename="helma-access-activeSkin-patch.diff"
SW5kZXg6IEM6L3dvcmtzcGFjZV8zXzIvaGVsbWEtdHJ1bmsvc3JjL2hlbG1hL2ZyYW1ld29yay9j
b3JlL1NraW4uamF2YQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIEM6L3dvcmtzcGFjZV8zXzIvaGVsbWEtdHJ1
bmsvc3JjL2hlbG1hL2ZyYW1ld29yay9jb3JlL1NraW4uamF2YQkocmV2aXNpb24gOTE2MikNCisr
KyBDOi93b3Jrc3BhY2VfM18yL2hlbG1hLXRydW5rL3NyYy9oZWxtYS9mcmFtZXdvcmsvY29yZS9T
a2luLmphdmEJKHdvcmtpbmcgY29weSkNCkBAIC00Miw2ICs0Miw3IEBADQogICAgIHByaXZhdGUg
SGFzaFNldCBzYW5kYm94Ow0KICAgICBwcml2YXRlIEhhc2hNYXAgc3Vic2tpbnM7DQogICAgIHBy
aXZhdGUgU2tpbiBwYXJlbnRTa2luID0gdGhpczsNCisgICAgcHJpdmF0ZSBTdHJpbmcgbmFtZTsN
CiANCiAgICAgc3RhdGljIHByaXZhdGUgZmluYWwgaW50IFBBUlNFX01BQ1JPTkFNRSA9IDA7DQog
ICAgIHN0YXRpYyBwcml2YXRlIGZpbmFsIGludCBQQVJTRV9QQVJBTSA9IDE7DQpAQCAtNjUsNiAr
NjYsMTYgQEANCiAgICAgc3RhdGljIHByaXZhdGUgZmluYWwgaW50IEZBSUxfREVGQVVMVCA9IDA7
DQogICAgIHN0YXRpYyBwcml2YXRlIGZpbmFsIGludCBGQUlMX1NJTEVOVCA9IDE7DQogICAgIHN0
YXRpYyBwcml2YXRlIGZpbmFsIGludCBGQUlMX1ZFUkJPU0UgPSAyOw0KKyAgICANCisgICAgDQor
ICAgIC8qKg0KKyAgICAgKiBDcmVhdGUgYSBza2luIHdpdGggdGhlIG5hbWUgb2YgdGhlIHJlc291
cmNlIHRoYXQgaXRzIHNvdXJjZSBjYW1lIGZyb20sDQorICAgICAqIHdpdGhvdXQgYW55IHJlc3Ry
aWN0aW9ucyBvbiB3aGljaCBtYWNyb3MgYXJlIGFsbG93ZWQgdG8gYmUgY2FsbGVkIGZyb20gaXQu
DQorICAgICAqLw0KKyAgICBwdWJsaWMgU2tpbihjaGFyW10gY2hhcmFjdGVyQnVmZmVyLCBpbnQg
cmVhZCwgQXBwbGljYXRpb24gYXBwLCBTdHJpbmcgcmVzb3VyY2VOYW1lKSB7DQorCQl0aGlzKGNo
YXJhY3RlckJ1ZmZlciwgcmVhZCwgYXBwKTsNCisgICAgCXRoaXMubmFtZSA9IHJlc291cmNlTmFt
ZTsNCisJfQ0KIA0KICAgICAvKioNCiAgICAgICogQ3JlYXRlIGEgc2tpbiB3aXRob3V0IGFueSBy
ZXN0cmljdGlvbnMgb24gd2hpY2ggbWFjcm9zIGFyZSBhbGxvd2VkIHRvIGJlIGNhbGxlZCBmcm9t
IGl0DQpAQCAtMTE2LDkgKzEyNywxNiBAQA0KICAgICAgICAgcGFyc2UoKTsNCiAgICAgfQ0KIA0K
LSAgICBwdWJsaWMgc3RhdGljIFNraW4gZ2V0U2tpbihSZXNvdXJjZSByZXMsIEFwcGxpY2F0aW9u
IGFwcCkgdGhyb3dzIElPRXhjZXB0aW9uIHsNCi0gICAgICAgIFN0cmluZyBlbmNvZGluZyA9IGFw
cC5nZXRQcm9wZXJ0eSgic2tpbkNoYXJzZXQiKTsNCisgICANCisNCisJcHVibGljIHN0YXRpYyBT
a2luIGdldFNraW4oUmVzb3VyY2UgcmVzLCBBcHBsaWNhdGlvbiBhcHApIHRocm93cyBJT0V4Y2Vw
dGlvbiB7DQorICAgIAlTdHJpbmcgZW5jb2RpbmcgPSBhcHAuZ2V0UHJvcGVydHkoInNraW5DaGFy
c2V0Iik7DQogICAgICAgICBSZWFkZXIgcmVhZGVyOw0KKyAgICAgICAgU3RyaW5nIHJlc05hbWUg
PSAiIjsNCisgICAgICAgIGlmIChyZXMgIT0gbnVsbCAmJiByZXMuZ2V0TmFtZSgpICE9IG51bGwp
IHsNCisgICAgICAgIAlyZXNOYW1lID0gcmVzLmdldE5hbWUoKTsNCisgICAgICAgIH0NCisgICAg
ICAgIA0KICAgICAgICAgaWYgKGVuY29kaW5nID09IG51bGwpIHsNCiAgICAgICAgICAgICByZWFk
ZXIgPSBuZXcgSW5wdXRTdHJlYW1SZWFkZXIocmVzLmdldElucHV0U3RyZWFtKCkpOw0KICAgICAg
ICAgfSBlbHNlIHsNCkBAIC0xMzgsNyArMTU2LDggQEANCiAgICAgICAgIH0gZmluYWxseSB7DQog
ICAgICAgICAgICAgcmVhZGVyLmNsb3NlKCk7DQogICAgICAgICB9DQotICAgICAgICByZXR1cm4g
bmV3IFNraW4oY2hhcmFjdGVyQnVmZmVyLCByZWFkLCBhcHApOw0KKyAgICAgICAgDQorICAgICAg
ICByZXR1cm4gbmV3IFNraW4oY2hhcmFjdGVyQnVmZmVyLCByZWFkLCBhcHAsIHJlc05hbWUpOw0K
ICAgICB9DQogDQogICAgIC8qKg0KQEAgLTMxOCw2ICszMzcsMTEgQEANCiANCiAgICAgICAgIHNh
bmRib3guYWRkKG1hY3JvbmFtZSk7DQogICAgIH0NCisgICAgDQorICAgIHB1YmxpYyBTdHJpbmcg
Z2V0TmFtZSgpIHsNCisgICAgCXJldHVybiB0aGlzLm5hbWU7DQorICAgIH0NCisgICAgDQogDQog
ICAgIHByaXZhdGUgT2JqZWN0IHByb2Nlc3NQYXJhbWV0ZXIoT2JqZWN0IHZhbHVlLCBSZW5kZXJD
b250ZXh0IGN4KQ0KICAgICAgICAgICAgIHRocm93cyBFeGNlcHRpb24gew0KSW5kZXg6IEM6L3dv
cmtzcGFjZV8zXzIvaGVsbWEtdHJ1bmsvc3JjL2hlbG1hL2ZyYW1ld29yay9SZXNwb25zZUJlYW4u
amF2YQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQ0KLS0tIEM6L3dvcmtzcGFjZV8zXzIvaGVsbWEtdHJ1bmsvc3JjL2hl
bG1hL2ZyYW1ld29yay9SZXNwb25zZUJlYW4uamF2YQkocmV2aXNpb24gOTE2MikNCisrKyBDOi93
b3Jrc3BhY2VfM18yL2hlbG1hLXRydW5rL3NyYy9oZWxtYS9mcmFtZXdvcmsvUmVzcG9uc2VCZWFu
LmphdmEJKHdvcmtpbmcgY29weSkNCkBAIC02NTcsNSArNjU3LDkgQEANCiAgICAgcHVibGljIHZv
aWQgYWJvcnQoKSB0aHJvd3MgQWJvcnRFeGNlcHRpb24gew0KICAgICAgICAgdGhyb3cgbmV3IEFi
b3J0RXhjZXB0aW9uKCk7DQogICAgIH0NCisgICAgDQorICAgIHB1YmxpYyBSZXNwb25zZVRyYW5z
IGdldFJlc3BvbnNlVHJhbnNhY3Rpb24oKSB7DQorICAgIAlyZXR1cm4gdGhpcy5yZXM7DQorICAg
IH0NCiANCiB9DQpJbmRleDogQzovd29ya3NwYWNlXzNfMi9oZWxtYS10cnVuay9zcmMvaGVsbWEv
ZnJhbWV3b3JrL1Jlc3BvbnNlVHJhbnMuamF2YQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIEM6L3dvcmtzcGFj
ZV8zXzIvaGVsbWEtdHJ1bmsvc3JjL2hlbG1hL2ZyYW1ld29yay9SZXNwb25zZVRyYW5zLmphdmEJ
KHJldmlzaW9uIDkxNjIpDQorKysgQzovd29ya3NwYWNlXzNfMi9oZWxtYS10cnVuay9zcmMvaGVs
bWEvZnJhbWV3b3JrL1Jlc3BvbnNlVHJhbnMuamF2YQkod29ya2luZyBjb3B5KQ0KQEAgLTMwLDcg
KzMwLDEyIEBADQogDQogLyoqDQogICogQSBUcmFuc21pdHRlciBmb3IgYSByZXNwb25zZSB0byB0
aGUgc2VydmxldCBjbGllbnQuIE9iamVjdHMgb2YgdGhpcw0KLSAqIGNsYXNzIGFyZSBkaXJlY3Rs
eSBleHBvc2VkIHRvIEphdmFTY3JpcHQgYXMgZ2xvYmFsIHByb3BlcnR5IHJlcy4NCisgKiBjbGFz
cyBhcmUgSU4tZGlyZWN0bHkgZXhwb3NlZCB0byBKYXZhU2NyaXB0IHZpYSBtZXRob2RzIG9mIHRo
ZSBSZXNwb25zZUJlYW4gY2xhc3MNCisgKiBvYmplY3RzIG9mIHdoaWNoIGFyZSBleHBvc2VkIHRv
IEphdmFzY3JpcHQgYXMgdGhlIGdsb2JhbCBwcm9wZXJ0eSByZXMuIA0KKyAqIA0KKyAqIE9iamVj
dHMgb2YgdGhpcyBjbGFzcyBhcmUgYWxzbyBkaXJlY3RseSBhY2Nlc3NpYmxlIHZpYSB0aGUgZ2V0
UmVzcG9uc2VUcmFuc2FjdGlvbigpIG1ldGhvZCANCisgKiBvZiB0aGUgUmVzcG9uc2VCZWFuIGNs
YXNzLiANCisgKiANCiAgKi8NCiBwdWJsaWMgZmluYWwgY2xhc3MgUmVzcG9uc2VUcmFucyBleHRl
bmRzIFdyaXRlciBpbXBsZW1lbnRzIFNlcmlhbGl6YWJsZSB7DQogDQo=
------_=_NextPart_001_01C8F29B.7CE3CE17
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Helma-user mailing list
[email protected]
http://helma.org/mailman/listinfo/helma-user
------_=_NextPart_001_01C8F29B.7CE3CE17--