ChromeClassResourceLoader & ChromeResourceLoaderManager
David Carr <[email protected]> Sun, 7 Dec 2003 02:20:18 -0500 (Eastern Standard Time)
| Newsgroups | gmane.comp.java.luxor-xul.devel |
|---|---|
| Message-ID | <Pine.WNT.4.56.0312070212460.3160@lydia> |
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to [email protected] for more info. --1243447-16195-1070781618=:3160 Content-Type: TEXT/PLAIN; charset=US-ASCII I noticed that these files had numerous fix and todo comments to allow proper loading of config and bootstrap entries. Attached are versions with implementations for those methods. The index file used by the ClassResourceLoader is just a properties file; the keys are ignored, and all values are added to the entries. ----------------------------- David Carr ----------------------------- Email: [email protected] AIM : davidmc24/Varzof Phone: 518-272-3901 Web : http://david.carr.name ----------------------------- --1243447-16195-1070781618=:3160 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="ChromeResourceLoaderManager.java" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.WNT.4.56.0312070220180.3160@lydia> Content-Description: Content-Disposition: attachment; filename="ChromeResourceLoaderManager.java" cGFja2FnZSBsdXhvci5jb3JlLmxvYWRlcjsNCg0KaW1wb3J0IGphdmEuaW8u SW5wdXRTdHJlYW07DQppbXBvcnQgamF2YS5uZXQuVVJMOw0KaW1wb3J0IGph dmEudXRpbC5BcnJheUxpc3Q7DQppbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9y Ow0KaW1wb3J0IGphdmEudXRpbC5MaXN0Ow0KDQppbXBvcnQgbHV4b3Iuc3Bp LkNocm9tZVJlc291cmNlTG9hZGVyOw0KDQpwdWJsaWMgY2xhc3MgQ2hyb21l UmVzb3VyY2VMb2FkZXJNYW5hZ2VyIGltcGxlbWVudHMgQ2hyb21lUmVzb3Vy Y2VMb2FkZXIgew0KCUFycmF5TGlzdCBfbG9hZGVycyA9IG5ldyBBcnJheUxp c3QoKTsNCg0KCXB1YmxpYyB2b2lkIGFkZFJlc291cmNlTG9hZGVyKENocm9t ZVJlc291cmNlTG9hZGVyIGxvYWRlcikgew0KCQlfbG9hZGVycy5hZGQobG9h ZGVyKTsNCgl9DQoNCglwdWJsaWMgVVJMIGdldFJlc291cmNlQXNVcmwoU3Ry aW5nIG5hbWUpIHsNCgkJZm9yIChJdGVyYXRvciBpdCA9IF9sb2FkZXJzLml0 ZXJhdG9yKCk7IGl0Lmhhc05leHQoKTspIHsNCgkJCUNocm9tZVJlc291cmNl TG9hZGVyIGxvYWRlciA9IChDaHJvbWVSZXNvdXJjZUxvYWRlcikgaXQubmV4 dCgpOw0KCQkJVVJMIHVybCA9IGxvYWRlci5nZXRSZXNvdXJjZUFzVXJsKG5h bWUpOw0KCQkJaWYgKHVybCAhPSBudWxsKSB7DQoJCQkJcmV0dXJuIHVybDsN CgkJCX0NCgkJfQ0KCQlyZXR1cm4gbnVsbDsNCgl9DQoNCglwdWJsaWMgSW5w dXRTdHJlYW0gZ2V0UmVzb3VyY2VBc1N0cmVhbShTdHJpbmcgbmFtZSkgew0K CQlmb3IgKEl0ZXJhdG9yIGl0ID0gX2xvYWRlcnMuaXRlcmF0b3IoKTsgaXQu aGFzTmV4dCgpOykgew0KCQkJQ2hyb21lUmVzb3VyY2VMb2FkZXIgbG9hZGVy ID0gKENocm9tZVJlc291cmNlTG9hZGVyKSBpdC5uZXh0KCk7DQoJCQlJbnB1 dFN0cmVhbSBpbiA9IGxvYWRlci5nZXRSZXNvdXJjZUFzU3RyZWFtKG5hbWUp Ow0KCQkJaWYgKGluICE9IG51bGwpIHsNCgkJCQlyZXR1cm4gaW47DQoJCQl9 DQoJCX0NCgkJcmV0dXJuIG51bGw7DQoJfQ0KDQoJcHVibGljIExpc3QgZ2V0 Qm9vdHN0cmFwRW50cmllcygpIHsNCgkJTGlzdCBlbnRyaWVzID0gbmV3IEFy cmF5TGlzdCgpOw0KCQlmb3IgKEl0ZXJhdG9yIGl0ID0gX2xvYWRlcnMuaXRl cmF0b3IoKTsgaXQuaGFzTmV4dCgpOykgew0KCQkJQ2hyb21lUmVzb3VyY2VM b2FkZXIgbG9hZGVyID0gKENocm9tZVJlc291cmNlTG9hZGVyKSBpdC5uZXh0 KCk7DQoJCQlMaXN0IHN1YkVudHJpZXMgPSBsb2FkZXIuZ2V0Qm9vdHN0cmFw RW50cmllcygpOw0KCQkJZW50cmllcy5hZGRBbGwoc3ViRW50cmllcyk7DQoJ CX0NCgkJcmV0dXJuIGVudHJpZXM7DQoJfQ0KDQoJcHVibGljIExpc3QgZ2V0 Q29uZmlnRW50cmllcygpIHsNCgkJTGlzdCBlbnRyaWVzID0gbmV3IEFycmF5 TGlzdCgpOw0KCQlmb3IgKEl0ZXJhdG9yIGl0ID0gX2xvYWRlcnMuaXRlcmF0 b3IoKTsgaXQuaGFzTmV4dCgpOykgew0KCQkJQ2hyb21lUmVzb3VyY2VMb2Fk ZXIgbG9hZGVyID0gKENocm9tZVJlc291cmNlTG9hZGVyKSBpdC5uZXh0KCk7 DQoJCQlMaXN0IHN1YkVudHJpZXMgPSBsb2FkZXIuZ2V0Q29uZmlnRW50cmll cygpOw0KCQkJZW50cmllcy5hZGRBbGwoc3ViRW50cmllcyk7DQoJCX0NCgkJ cmV0dXJuIGVudHJpZXM7DQoJfQ0KDQoJcHVibGljIE9iamVjdCBnZXRDb25m aWdEYXRhKFN0cmluZyBrZXkpIHsNCgkJZm9yIChJdGVyYXRvciBpdCA9IF9s b2FkZXJzLml0ZXJhdG9yKCk7IGl0Lmhhc05leHQoKTspIHsNCgkJCUNocm9t ZVJlc291cmNlTG9hZGVyIGxvYWRlciA9IChDaHJvbWVSZXNvdXJjZUxvYWRl cikgaXQubmV4dCgpOw0KCQkJT2JqZWN0IHZhbCA9IGxvYWRlci5nZXRDb25m aWdEYXRhKGtleSk7DQoJCQlpZiAodmFsICE9IG51bGwpIHsNCgkJCQlyZXR1 cm4gdmFsOw0KCQkJfQ0KCQl9DQoJCXJldHVybiBudWxsOw0KCX0NCn0= --1243447-16195-1070781618=:3160 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="ChromeClassResourceLoader.java" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.WNT.4.56.0312070220181.3160@lydia> Content-Description: Content-Disposition: attachment; filename="ChromeClassResourceLoader.java" cGFja2FnZSBsdXhvci5jb3JlLmxvYWRlcjsNCg0KaW1wb3J0IGhvdXN0b24u TG9nZ2VyOw0KDQppbXBvcnQgamF2YS5pby5JT0V4Y2VwdGlvbjsNCmltcG9y dCBqYXZhLmlvLklucHV0U3RyZWFtOw0KaW1wb3J0IGphdmEubmV0LlVSTDsN CmltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0Ow0KaW1wb3J0IGphdmEudXRp bC5IYXNoTWFwOw0KaW1wb3J0IGphdmEudXRpbC5JdGVyYXRvcjsNCmltcG9y dCBqYXZhLnV0aWwuTGlzdDsNCmltcG9ydCBqYXZhLnV0aWwuUHJvcGVydGll czsNCg0KaW1wb3J0IGx1eG9yLmNvcmUuWHVsOw0KaW1wb3J0IGx1eG9yLmNv cmUuY29uZmlnLlhtbENvbmZpZ0xvYWRlcjsNCmltcG9ydCBsdXhvci5zcGku Q2hyb21lUmVzb3VyY2VMb2FkZXI7DQoNCmltcG9ydCBvcmcuamRvbS5KRE9N RXhjZXB0aW9uOw0KDQppbXBvcnQgY2FyYW1lbC51dGlsLkRlYnVnVXRpbHM7 DQoNCnB1YmxpYyBjbGFzcyBDaHJvbWVDbGFzc1Jlc291cmNlTG9hZGVyIGlt cGxlbWVudHMgQ2hyb21lUmVzb3VyY2VMb2FkZXIgew0KCXN0YXRpYyBMb2dn ZXIgVCA9IExvZ2dlci5nZXRMb2dnZXIoQ2hyb21lQ2xhc3NSZXNvdXJjZUxv YWRlci5jbGFzcyk7DQoNCglDbGFzcyBfYW5jaG9yOw0KCUhhc2hNYXAgX2Nv bmZpZzsNCg0KCXB1YmxpYyBDaHJvbWVDbGFzc1Jlc291cmNlTG9hZGVyKENs YXNzIGFuY2hvcikgew0KCQlfYW5jaG9yID0gYW5jaG9yOw0KCQlfY29uZmln ID0gbmV3IEhhc2hNYXAoKTsNCg0KCQlsb2FkQ29uZmlnRGF0YSgpOw0KDQoJ CVQuZGVidWcoIi0tIGJlZ2luIGR1bXAgY29uZmlnIGRhdGEgLS0tLS0tLS0t LS0tLS0tLS0tLS0tIik7DQoJCURlYnVnVXRpbHMuZHVtcE1hcChfY29uZmln KTsNCgkJVC5kZWJ1ZygiLS0gZW5kIGR1bXAgY29uZmlnIGRhdGEgLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0iKTsNCgl9DQoNCglwcml2YXRlIHZvaWQgbG9h ZENvbmZpZ0RhdGEoKSB7DQoJCS8vIHRvZG86IGxvYWQgdXNlci1kZWZpbmVk IGxvY2FsZSBhbmQgZmFsbGJhY2sgbG9jYWxlIG9ubHkNCgkJU3RyaW5nIGlu ZGV4UmVzID0gImxvY2FsZS9pbmRleC5wcm9wZXJ0aWVzIjsNCgkJSW5wdXRT dHJlYW0gaXMgPSBfYW5jaG9yLmdldFJlc291cmNlQXNTdHJlYW0oaW5kZXhS ZXMpOw0KCQlpZiAoaXMgPT0gbnVsbCkgew0KCQkJWHVsLndhcm5pbmcoIm5v IGxvY2FsZSBpbmRleCByZXNvdXJjZSBmb3VuZCBpbiBjaHJvbWUgcGFja2Fn ZSIpOw0KCQkJcmV0dXJuOw0KCQl9DQoJCVByb3BlcnRpZXMgaW5kZXhQcm9w cyA9IG5ldyBQcm9wZXJ0aWVzKCk7DQoJCXRyeSB7DQoJCQlpbmRleFByb3Bz LmxvYWQoaXMpOw0KCQl9IGNhdGNoIChJT0V4Y2VwdGlvbiBpb2UpIHsNCgkJ CVh1bC53YXJuaW5nKCJlcnJvciBsb2FkaW5nIGxvY2FsZSBpbmRleCByZXNv dXJjZSIpOw0KCQl9DQoJCWZvciAoSXRlcmF0b3IgaXQgPSBpbmRleFByb3Bz LnZhbHVlcygpLml0ZXJhdG9yKCk7IGl0Lmhhc05leHQoKTspIHsNCgkJCVN0 cmluZyBlbnRyeSA9ICJsb2NhbGUvIiArIChTdHJpbmcpIGl0Lm5leHQoKTsN CgkJCWxvYWRDb25maWdEYXRhKGVudHJ5KTsNCgkJfQ0KCX0NCg0KCXByaXZh dGUgdm9pZCBsb2FkQ29uZmlnRGF0YShTdHJpbmcgZW50cnkpIHsNCgkJaWYg KGVudHJ5LnRvTG93ZXJDYXNlKCkuZW5kc1dpdGgoIi54bWwiKSkgew0KCQkJ dHJ5IHsNCgkJCQlULmRlYnVnKCJsb2FkaW5nIHhtbCBjb25maWcgcmVzb3Vy Y2UgIiArIGVudHJ5KTsNCgkJCQlYbWxDb25maWdMb2FkZXIgbG9hZGVyID0g bmV3IFhtbENvbmZpZ0xvYWRlcihfY29uZmlnKTsNCgkJCQlsb2FkZXIubG9h ZChfYW5jaG9yLmdldFJlc291cmNlQXNTdHJlYW0oZW50cnkpKTsNCgkJCQlU LmRlYnVnKCJ4bWwgY29uZmlnIHJlc291cmNlICIgKyBlbnRyeSArICIgc3Vj Y2Vzc2Z1bGx5IGxvYWRlZCIpOw0KCQkJfSBjYXRjaCAoSkRPTUV4Y2VwdGlv biBqZXgpIHsNCgkJCQlYdWwuZXJyb3IoDQoJCQkJCSJmYWlsZWQgdG8gcGFy c2UgeG1sIGNvbmZpZyByZXNvdXJjZSAnIg0KCQkJCQkJKyBlbnRyeQ0KCQkJ CQkJKyAiJzogIg0KCQkJCQkJKyBqZXgudG9TdHJpbmcoKSk7DQoJCQl9DQoJ CX0gZWxzZSAvLyBhc3N1bWUgamF2YSBwcm9wZXJ0aWVzIGJ5IGRlZmF1bHQN CgkJCXsNCgkJCXRyeSB7DQoJCQkJVC5kZWJ1ZygibG9hZGluZyBwcm9wZXJ0 aWVzIGNvbmZpZyByZXNvdXJjZSAiICsgZW50cnkpOw0KCQkJCVByb3BlcnRp ZXMgdGVtcFByb3BzID0gbmV3IFByb3BlcnRpZXMoKTsNCgkJCQl0ZW1wUHJv cHMubG9hZChfYW5jaG9yLmdldFJlc291cmNlQXNTdHJlYW0oZW50cnkpKTsN CgkJCQlULmRlYnVnKCItLSBiZWdpbiBkdW1wIGphdmEgcHJvcHMgLS0tLS0t LS0tLS0tLS0tLSIpOw0KCQkJCURlYnVnVXRpbHMuZHVtcE1hcCh0ZW1wUHJv cHMpOw0KCQkJCVQuZGVidWcoIi0tIGVuZCBkdW1wIGphdmEgcHJvcHMgLS0t LS0tLS0tLS0tLS0tLS0tLSIpOw0KCQkJCS8vIG1lcmdlIGFsbCBwcm9wZXJ0 aWVzIGludG8gb25lIHRhYmxlDQoJCQkJX2NvbmZpZy5wdXRBbGwodGVtcFBy b3BzKTsNCgkJCQlULmRlYnVnKCJwcm9wZXJ0aWVzIGNvbmZpZyByZXNvdXJj ZSAiICsgZW50cnkgKyAiIHN1Y2Nlc3NmdWxseSBsb2FkZWQiKTsNCgkJCX0g Y2F0Y2ggKElPRXhjZXB0aW9uIGlvZXgpIHsNCgkJCQlYdWwuZXJyb3IoDQoJ CQkJCSJmYWlsZWQgdG8gbG9hZCBwcm9wZXJ0aWVzIGluIHJlc291cmNlICci DQoJCQkJCQkrIGVudHJ5DQoJCQkJCQkrICInOiAiDQoJCQkJCQkrIGlvZXgu Z2V0TWVzc2FnZSgpKTsNCgkJCX0NCgkJfQ0KCX0NCg0KCXB1YmxpYyBVUkwg Z2V0UmVzb3VyY2VBc1VybChTdHJpbmcgbmFtZSkgew0KCQlULmRlYnVnKCJu YW1lPSIgKyBuYW1lKTsNCgkJcmV0dXJuIF9hbmNob3IuZ2V0UmVzb3VyY2Uo bmFtZSk7DQoJfQ0KDQoJcHVibGljIElucHV0U3RyZWFtIGdldFJlc291cmNl QXNTdHJlYW0oU3RyaW5nIG5hbWUpIHsNCgkJVC5kZWJ1ZygibmFtZT0iICsg bmFtZSk7DQoJCXJldHVybiBfYW5jaG9yLmdldFJlc291cmNlQXNTdHJlYW0o bmFtZSk7DQoJfQ0KDQoJcHVibGljIE9iamVjdCBnZXRDb25maWdEYXRhKFN0 cmluZyBrZXkpIHsNCgkJcmV0dXJuIF9jb25maWcuZ2V0KGtleSk7DQoJfQ0K DQoJcHVibGljIExpc3QgZ2V0Q29uZmlnRW50cmllcygpIHsNCgkJcmV0dXJu IGxvYWRFbnRyaWVzRnJvbUluZGV4KCJjb25maWcvaW5kZXgucHJvcGVydGll cyIsICJjb25maWciKTsNCgl9DQoNCglwdWJsaWMgTGlzdCBnZXRCb290c3Ry YXBFbnRyaWVzKCkgew0KCQlyZXR1cm4gbG9hZEVudHJpZXNGcm9tSW5kZXgo InN0YXJ0dXAvaW5kZXgucHJvcGVydGllcyIsICJzdGFydHVwIik7DQoJfQ0K DQoJcHJpdmF0ZSBMaXN0IGxvYWRFbnRyaWVzRnJvbUluZGV4KFN0cmluZyBp bmRleFJlcywgU3RyaW5nIGludGVybmFsUGF0aCkgew0KCQlMaXN0IGVudHJp ZXMgPSBuZXcgQXJyYXlMaXN0KCk7DQoJCVByb3BlcnRpZXMgaW5kZXhQcm9w cyA9IG5ldyBQcm9wZXJ0aWVzKCk7DQoJCUlucHV0U3RyZWFtIGlzID0gX2Fu Y2hvci5nZXRSZXNvdXJjZUFzU3RyZWFtKGluZGV4UmVzKTsNCgkJaWYgKGlz ID09IG51bGwpIHsNCgkJCVh1bC53YXJuaW5nKA0KCQkJCSJubyAiICsgaW50 ZXJuYWxQYXRoICsgIiBpbmRleCByZXNvdXJjZSBmb3VuZCBpbiBjaHJvbWUg cGFja2FnZSIpOw0KCQl9IGVsc2Ugew0KCQkJdHJ5IHsNCgkJCQlpbmRleFBy b3BzLmxvYWQoaXMpOw0KCQkJfSBjYXRjaCAoSU9FeGNlcHRpb24gaW9lKSB7 DQoJCQkJWHVsLndhcm5pbmcoImVycm9yIGxvYWRpbmcgIiArIGludGVybmFs UGF0aCArICIgaW5kZXggcmVzb3VyY2UiKTsNCgkJCX0NCgkJfQ0KCQlmb3Ig KEl0ZXJhdG9yIGl0ID0gaW5kZXhQcm9wcy52YWx1ZXMoKS5pdGVyYXRvcigp OyBpdC5oYXNOZXh0KCk7KSB7DQoJCQlTdHJpbmcgZW50cnkgPSBpbnRlcm5h bFBhdGggKyAiLyIgKyAoU3RyaW5nKSBpdC5uZXh0KCk7DQoJCQllbnRyaWVz LmFkZChlbnRyeSk7DQoJCX0NCgkJcmV0dXJuIGVudHJpZXM7DQoJfQ0KfQ== --1243447-16195-1070781618=:3160-- ------------------------------------------------------- This SF.net email is sponsored by: IBM Linux Tutorials. Become an expert in LINUX or just sharpen your skills. Sign up for IBM's Free Linux Tutorials. Learn everything from the bash shell to sys admin. Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click