r9915 - in apps/gobi/trunk/code: Global Page User
[email protected] Thu, 17 Sep 2009 15:11:51 +0200 (CEST)
| Newsgroups | gmane.comp.java.helma.cvs |
|---|---|
| Message-ID | <20090917131151.4B9213D0E3@mia> |
QXV0aG9yOiBoYW5uZXMKRGF0ZTogMjAwOS0wOS0xNyAxNToxMTo1MSArMDIwMCAoVGh1LCAxNyBT ZXAgMjAwOSkKTmV3IFJldmlzaW9uOiA5OTE1CgpBZGRlZDoKICAgYXBwcy9nb2JpL3RydW5rL2Nv ZGUvVXNlci9yZXNldFBhc3N3b3JkLnNraW4KTW9kaWZpZWQ6CiAgIGFwcHMvZ29iaS90cnVuay9j b2RlL0dsb2JhbC9NZXNzYWdlcy5qcwogICBhcHBzL2dvYmkvdHJ1bmsvY29kZS9HbG9iYWwvU3Rh cnR1cC5qcwogICBhcHBzL2dvYmkvdHJ1bmsvY29kZS9QYWdlL1BhZ2VBY3Rpb25zLmpzCiAgIGFw cHMvZ29iaS90cnVuay9jb2RlL1BhZ2UvUGFnZUNvcmUuanMKICAgYXBwcy9nb2JpL3RydW5rL2Nv ZGUvUGFnZS9QZXJtaXNzaW9ucy5qcwogICBhcHBzL2dvYmkvdHJ1bmsvY29kZS9Vc2VyL1VzZXIu anMKICAgYXBwcy9nb2JpL3RydW5rL2NvZGUvVXNlci9wYXNzd29yZC5za2luCkxvZzoKSW1wbGVt ZW50IHBhc3N3b3JkIHJlc2V0LCBpbXByb3ZlIHBhc3N3b3JkIGhhbmRsaW5nIGEgYml0CgpEZXRh aWxzIGF0IGh0dHA6Ly9kZXYuaGVsbWEub3JnL3RyYWMvaGVsbWEvY2hhbmdlc2V0Lzk5MTUKCk1v ZGlmaWVkOiBhcHBzL2dvYmkvdHJ1bmsvY29kZS9HbG9iYWwvTWVzc2FnZXMuanMKPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotLS0gYXBwcy9nb2JpL3RydW5rL2NvZGUvR2xvYmFsL01lc3NhZ2VzLmpzCTIwMDktMDktMTcg MDk6NDE6MjEgVVRDIChyZXYgOTkxNCkKKysrIGFwcHMvZ29iaS90cnVuay9jb2RlL0dsb2JhbC9N ZXNzYWdlcy5qcwkyMDA5LTA5LTE3IDEzOjExOjUxIFVUQyAocmV2IDk5MTUpCkBAIC0yNiw2ICsy Niw3IEBACiAgICAgbG9naW5fdXNlcm5hbWU6ICJVc2VybmFtZSIsCiAgICAgbG9naW5fcGFzc3dv cmQ6ICJQYXNzd29yZCIsCiAgICAgbG9naW5fcmVnaXN0ZXI6ICJSZWdpc3RlciBuZXcgVXNlciIs CisgICAgbG9naW5fZm9yZ290X3Bhc3N3b3JkOiAiRm9yZ290IHlvdXIgUGFzc3dvcmQ/IiwKICAg ICByZWdpc3Rlcl9idXR0b246ICJSZWdpc3RlciBVc2VyIiwKICAgICByZWdpc3Rlcl9wbGVhc2U6 ICJGaWxsIGluIHRoZSBmaWVsZHMgYmVsb3cgdG8gcmVnaXN0ZXIgYSBuZXcgVXNlcjoiLAogICAg IHJlZ2lzdGVyX3VzZXJfZXhpc3RzOiAiU29ycnksIHVzZXIgbmFtZSAnJDEnIGlzIGFscmVhZHkg dGFrZW4uIFBsZWFzZSBjaG9vc2UgYSBkaWZmZXJlbnQgb25lISIsCkBAIC0xMjUsNiArMTI2LDcg QEAKICAgICBsb2dpbl91c2VybmFtZTogIkJlbnV0emVybmFtZSIsCiAgICAgbG9naW5fcGFzc3dv cmQ6ICJQYXNzd29ydCIsCiAgICAgbG9naW5fcmVnaXN0ZXI6ICJOZXVlbiBCZW51dHplciBhbmxl Z2VuIiwKKyAgICBsb2dpbl9mb3Jnb3RfcGFzc3dvcmQ6ICJQYXNzd29ydCB2ZXJnZXNzZW4/Iiwg ICAgCiAgICAgcmVnaXN0ZXJfYnV0dG9uOiAiQmVudXR6ZXIgQW5sZWdlbiIsCiAgICAgcmVnaXN0 ZXJfcGxlYXNlOiAiTmV1ZW4gQmVudXR6ZXIgQW5sZWdlbiIsCiAgICAgcmVnaXN0ZXJfdXNlcl9l eGlzdHM6ICJFaW4gQmVudXR6ZXIgbmFtZW5zICckMScgZXhpc3RpZXJ0IHNjaG9uLiBCaXR0ZSB3 w6RobGVuIFNpZSBlaW5lbiBhbmRlcmVuIE5hbWVuISIsCgpNb2RpZmllZDogYXBwcy9nb2JpL3Ry dW5rL2NvZGUvR2xvYmFsL1N0YXJ0dXAuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gYXBwcy9nb2JpL3RydW5r L2NvZGUvR2xvYmFsL1N0YXJ0dXAuanMJMjAwOS0wOS0xNyAwOTo0MToyMSBVVEMgKHJldiA5OTE0 KQorKysgYXBwcy9nb2JpL3RydW5rL2NvZGUvR2xvYmFsL1N0YXJ0dXAuanMJMjAwOS0wOS0xNyAx MzoxMTo1MSBVVEMgKHJldiA5OTE1KQpAQCAtMTk2LDEwICsxOTYsOCBAQAogICAgICAgICAgICAg fQogICAgICAgICAgICAgYXBwLmxvZygiQ29udmVydGluZyBwYXNzd29yZCBmb3IgdXNlciAiICsg dXNlci5uYW1lKTsKICAgICAgICAgICAgIGNvbnZlcnRlZCsrOwotICAgICAgICAgICAgdmFyIHJu ZCA9IGphdmEuc2VjdXJpdHkuU2VjdXJlUmFuZG9tLmdldEluc3RhbmNlKCJTSEExUFJORyIpOwog ICAgICAgICAgICAgdmFyIHBhc3N3b3JkID0gZGF0YS5wYXNzd29yZCB8fCAiIjsKLSAgICAgICAg ICAgIHZhciBzYWx0ID0gZGF0YS5wYXNzd29yZF9zYWx0ID0gcm5kLm5leHRMb25nKCkudG9TdHJp bmcoMzYpOwotICAgICAgICAgICAgZGF0YS5wYXNzd29yZF9oYXNoID0gKHNhbHQgKyBwYXNzd29y ZCkubWQ1KCk7CisgICAgICAgICAgICB1c2VyLnNldFNlY3VyZVBhc3N3b3JkKHBhc3N3b3JkLCBk YXRhLCAicGFzc3dvcmQiKTsKICAgICAgICAgICAgIGRlbGV0ZSBkYXRhLnBhc3N3b3JkOwogICAg ICAgICAgICAgdXNlci5zZXRGb3JtRGF0YShkYXRhKTsKICAgICAgICAgfQoKTW9kaWZpZWQ6IGFw cHMvZ29iaS90cnVuay9jb2RlL1BhZ2UvUGFnZUFjdGlvbnMuanMKPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gYXBw cy9nb2JpL3RydW5rL2NvZGUvUGFnZS9QYWdlQWN0aW9ucy5qcwkyMDA5LTA5LTE3IDA5OjQxOjIx IFVUQyAocmV2IDk5MTQpCisrKyBhcHBzL2dvYmkvdHJ1bmsvY29kZS9QYWdlL1BhZ2VBY3Rpb25z LmpzCTIwMDktMDktMTcgMTM6MTE6NTEgVVRDIChyZXYgOTkxNSkKQEAgLTE5LDggKzE5LDggQEAK ICAqLwogCiBhcHAuYWRkUmVwb3NpdG9yeSgibW9kdWxlcy9jb3JlL09iamVjdC5qcyIpOworYXBw LmFkZFJlcG9zaXRvcnkoIm1vZHVsZXMvaGVsbWEvTWFpbC5qcyIpOwogCi0KIC8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8gYWN0aW9ucy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v CiAKIGZ1bmN0aW9uIGhpc3RvcnlfYWN0aW9uKCkgewpAQCAtNjI1LDEzICs2MjUsNjUgQEAKICAg ICAgICAgdGFibGUud3JpdGUoSHRtbC5TdWJtaXQoe25hbWU6ICJsb2dpbiIsIHZhbHVlOiAiR28i fSkpOwogICAgICAgICB0YWJsZS5jbG9zZSgpOwogICAgICAgICBIdG1sLmNsb3NlVGFnKCJmb3Jt Iik7Ci0gICAgICAgIHJlcy53cml0ZWxuKCI8YnIgLz4iKTsKLSAgICAgICAgSHRtbC5hKHtocmVm OiB0aGlzLmhyZWYoInJlZ2lzdGVyIil9LCBtc2coImxvZ2luX3JlZ2lzdGVyIikpOworICAgICAg ICBIdG1sLnAoe30sIEh0bWwuQSh7aHJlZjogdGhpcy5ocmVmKCJyZWdpc3RlciIpfSwgbXNnKCJs b2dpbl9yZWdpc3RlciIpKSk7CisgICAgICAgIEh0bWwucCh7fSwgSHRtbC5BKHtocmVmOiB0aGlz LmhyZWYoInJlbWluZGVyIil9LCBtc2coImxvZ2luX2ZvcmdvdF9wYXNzd29yZCIpKSk7CiAgICAg ICAgIHJlcy5kYXRhLmJvZHkgPSByZXMucG9wKCk7CiAgICAgfQogICAgIHRoaXMucmVuZGVyU2tp bigicGFnZSIpOwogfQogCitmdW5jdGlvbiByZW1pbmRlcl9hY3Rpb24oKSB7CisgICAgaWYgKHJl cS5pc1Bvc3QoKSAmJiByZXEuZGF0YS5uYW1lICE9IG51bGwpIHsKKyAgICAgICAgdmFyIHVzZXJz ID0gZ2V0U2VydmljZSgidXNlcnMiKSwgbmFtZSA9IHJlcS5kYXRhLm5hbWU7CisgICAgICAgIGlm ICghdXNlcnMpIHsKKyAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcigiRmFpbGVkIHRvIHJldHJp ZXZlIHVzZXIgcm9vdCIpOworICAgICAgICB9CisgICAgICAgIHZhciB1c2VyID0gdXNlcnMuZ2V0 KG5hbWUpOworICAgICAgICBpZiAoIXVzZXIpIHsKKyAgICAgICAgICAgIHJlcy5tZXNzYWdlID0g IlVzZXIgJyIgKyBuYW1lICsgIicgbm90IGZvdW5kLiBQbGVhc2UgY2hlY2sgeW91ciBpbnB1dCBv ciByZWdpc3RlciBhIG5ldyBhY2NvdW50LiIKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg IHZhciBhZGRyZXNzID0gdXNlci5nZXRGb3JtRGF0YSgpLmVtYWlsOworICAgICAgICAgICAgaWYg KCFhZGRyZXNzKSB7CisgICAgICAgICAgICAgICAgcmVzLm1lc3NhZ2UgPSAiU29ycnksIHVzZXIg JyIgKyBuYW1lICsgIicgaGFzIG5vdCByZWdpc3RlcmVkIGFuIGVtYWlsIGFkZHJlc3MuIgorICAg ICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB2YXIgcm5kID0gamF2YS5zZWN1cml0 eS5TZWN1cmVSYW5kb20uZ2V0SW5zdGFuY2UoIlNIQTFQUk5HIik7CisgICAgICAgICAgICAgICAg dmFyIHRva2VuID0gTWF0aC5hYnMocm5kLm5leHRMb25nKCkpLnRvU3RyaW5nKDM2KSArIE1hdGgu YWJzKHJuZC5uZXh0TG9uZygpKS50b1N0cmluZygzNik7CisgICAgICAgICAgICAgICAgdmFyIGRh dGEgPSB1c2VyLmdldEZvcm1EYXRhKCk7CisgICAgICAgICAgICAgICAgZGF0YS5yZXNldF9wYXNz d29yZF90b2tlbiA9IHRva2VuOworICAgICAgICAgICAgICAgIGRhdGEucmVzZXRfcGFzc3dvcmRf dGltZSA9IERhdGUubm93KCk7CisgICAgICAgICAgICAgICAgdXNlci5zZXRGb3JtRGF0YShkYXRh KTsKKyAgICAgICAgICAgICAgICB2YXIgbWFpbCA9IG5ldyBoZWxtYS5NYWlsKCk7CisgICAgICAg ICAgICAgICAgbWFpbC5zZXRGcm9tKCJub3JlcGx5QGhlbG1hLm9yZyIpOyAvLyBGSVhNRQorICAg ICAgICAgICAgICAgIG1haWwuYWRkVG8oYWRkcmVzcyk7CisgICAgICAgICAgICAgICAgbWFpbC5z ZXRTdWJqZWN0KCJSZXNldCBwYXNzd29yZCBmb3IgIiArIHJvb3QubmFtZSk7CisgICAgICAgICAg ICAgICAgbWFpbC5zZXRUZXh0KHVzZXIucmVuZGVyU2tpbkFzU3RyaW5nKCJyZXNldFBhc3N3b3Jk Iiwge3Rva2VuOiB0b2tlbn0pKTsKKyAgICAgICAgICAgICAgICBtYWlsLnNlbmQoKTsKKyAgICAg ICAgICAgICAgICBpZiAobWFpbC5zdGF0dXMgIT0gMCkgeworICAgICAgICAgICAgICAgICAgICBy ZXMubWVzc2FnZSA9ICJUaGVyZSB3YXMgYSBwcm9ibGVtIHNlbmRpbmcgeW91ciBtYWlsIChTdGF0 dXMgY29kZSAiICsgbWFpbC5zdGF0dXMgKyAiKSI7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsK KyAgICAgICAgICAgICAgICAgICAgcmVzLmRhdGEuYm9keSA9IFsKKyAgICAgICAgICAgICAgICAg ICAgICAgIEh0bWwuSDMoe30sICJFbWFpbCBTZW50IiksCisgICAgICAgICAgICAgICAgICAgICAg ICBIdG1sLlAoe30sICJBIG1lc3NhZ2UgdG8gcmVzZXQgdGhlIHBhc3N3b3JkIGhhcyBiZWVuIHNl bnQgdG8gdXNlciAiICsgbmFtZSArICIuPGJyIC8+IiArCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJQbGVhc2UgY2hlY2sgeW91ciBpbmJveC4iKQorICAgICAgICAgICAgICAg ICAgICBdLmpvaW4oJycpOworICAgICAgICAgICAgICAgICAgICB0aGlzLnJlbmRlclNraW4oInBh Z2UiKTsKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgICAgIH0KKyAg ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAgICByZXMuZGF0YS5ib2R5ID0gWworICAg ICAgICAgICAgSHRtbC5IMyh7fSwgIlJlc2V0IFBhc3N3b3JkIiksCisgICAgICAgICAgICBIdG1s LlAoe30sICJQbGVhc2UgZW50ZXIgeW91ciB1c2VyIG5hbWUgeW91IGZvcmdvdCB0aGUgcGFzc3dv cmQgZm9yLjxiciAvPiIgKworICAgICAgICAgICAgICAgICAgICAgICAiWW91IHdpbGwgcmVjZWl2 ZSBhbiBlbWFpbCB3aXRoIGEgbGluayB0byByZXNldCB5b3VyIHBhc3N3b3JkLiIpLAorICAgICAg ICAgICAgSHRtbC5Gb3JtKHttZXRob2Q6ICJQT1NUIiwgYWN0aW9uOiByZXEuYWN0aW9ufSwgWwor ICAgICAgICAgICAgICAgIEh0bWwuUCh7fSwgSHRtbC5JbnB1dCh7bmFtZTogJ25hbWUnLCB2YWx1 ZTogcmVxLmRhdGEubmFtZX0pKSwKKyAgICAgICAgICAgICAgICBIdG1sLlN1Ym1pdCh7bmFtZTog J3NlbmQnLCB2YWx1ZTogJ1NlbmQnfSkKKyAgICAgICAgICAgIF0pCisgICAgXS5qb2luKCcnKTsK KyAgICB0aGlzLnJlbmRlclNraW4oInBhZ2UiKTsKK30KKwogLyoqCiAgKgogICovCgpNb2RpZmll ZDogYXBwcy9nb2JpL3RydW5rL2NvZGUvUGFnZS9QYWdlQ29yZS5qcwo9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBh cHBzL2dvYmkvdHJ1bmsvY29kZS9QYWdlL1BhZ2VDb3JlLmpzCTIwMDktMDktMTcgMDk6NDE6MjEg VVRDIChyZXYgOTkxNCkKKysrIGFwcHMvZ29iaS90cnVuay9jb2RlL1BhZ2UvUGFnZUNvcmUuanMJ MjAwOS0wOS0xNyAxMzoxMTo1MSBVVEMgKHJldiA5OTE1KQpAQCAtMTAwNCwxMCArMTAwNCw3IEBA CiAgICAgICAgICAgICAgICAgICAgICAgICByZXMuZGF0YS5lcnJvcnNbcHJvcE5hbWVdID0gbXNn KCJwYXNzd29yZF92YWxpZGF0aW9uX2Vycm9yIik7CiAgICAgICAgICAgICAgICAgICAgICAgICBy ZXMuZGF0YS5lcnJvcnMucHVzaCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsK LSAgICAgICAgICAgICAgICAgICAgICAgIHZhciBybmQgPSBqYXZhLnNlY3VyaXR5LlNlY3VyZVJh bmRvbS5nZXRJbnN0YW5jZSgiU0hBMVBSTkciKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIHZh ciBzYWx0ID0gZGF0YVtwcm9wTmFtZSArICJfc2FsdCJdID0gcm5kLm5leHRMb25nKCkudG9TdHJp bmcoMzYpOwotICAgICAgICAgICAgICAgICAgICAgICAgZGF0YVtwcm9wTmFtZSArICJfaGFzaCJd ID0gKHNhbHQgKyBjb25maXJtKS5tZDUoKTsKLSAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0 ZSBkYXRhW3Byb3BOYW1lXTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U2VjdXJl UGFzc3dvcmQoY29uZmlybSwgZGF0YSwgcHJvcE5hbWUpOwogICAgICAgICAgICAgICAgICAgICB9 CiAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWVsZC5lZGl0b3IgPT0gQ0hFQ0tCT1gpIHsK ICAgICAgICAgICAgICAgICAgICAgLy8gc2V0IGNoZWNrYm94IHZhbHVlCkBAIC0xMDk5LDYgKzEw OTYsMTkgQEAKIH0KIAogLyoqCisgKiBTZXQgYSBwYXNzd29yZCBvbiBhIGZvcm1kYXRhIG9iamVj dCB1c2luZyBhIHNlY3VyZSBoYXNoCisgKiBAcGFyYW0gcGFzc3dvcmQgdGhlIGNsZWFydGV4dCBw YXNzd29yZAorICogQHBhcmFtIGZvcm1kYXRhIHRoZSBmb3JtZGF0YSBvYmplY3QgdG8gc2V0IHRo ZSBwYXNzd29yZCBvbgorICogQHBhcmFtIHByb3BuYW1lIHRoZSBwcm9wZXJ0eSBuYW1lIG9mIHRo ZSBwYXNzd29yZCwgZGVmYXVsdHMgdG8gInBhc3N3b3JkIgorICovCitmdW5jdGlvbiBzZXRTZWN1 cmVQYXNzd29yZChwYXNzd29yZCwgZm9ybWRhdGEsIHByb3BuYW1lKSB7CisgICAgcHJvcG5hbWUg PSBwcm9wbmFtZSB8fCAicGFzc3dvcmQiOworICAgIHZhciBybmQgPSBqYXZhLnNlY3VyaXR5LlNl Y3VyZVJhbmRvbS5nZXRJbnN0YW5jZSgiU0hBMVBSTkciKTsKKyAgICB2YXIgc2FsdCA9IGZvcm1k YXRhW3Byb3BuYW1lICsgIl9zYWx0Il0gPSBNYXRoLmFicyhybmQubmV4dExvbmcoKSkudG9TdHJp bmcoMzYpOworICAgIGZvcm1kYXRhW3Byb3BuYW1lICsgIl9oYXNoIl0gPSAoc2FsdCArIHBhc3N3 b3JkKS5tZDUoKTsKK30KKworLyoqCiAgKiBVcGRhdGUgcHJvcGVydGllcyBpbiB0aGlzIHBhZ2Ug ZnJvbSBhbm90aGVyIHBhZ2UKICAqLwogZnVuY3Rpb24gdXBkYXRlRnJvbVBhZ2UocGFnZSkgewoK TW9kaWZpZWQ6IGFwcHMvZ29iaS90cnVuay9jb2RlL1BhZ2UvUGVybWlzc2lvbnMuanMKPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotLS0gYXBwcy9nb2JpL3RydW5rL2NvZGUvUGFnZS9QZXJtaXNzaW9ucy5qcwkyMDA5LTA5 LTE3IDA5OjQxOjIxIFVUQyAocmV2IDk5MTQpCisrKyBhcHBzL2dvYmkvdHJ1bmsvY29kZS9QYWdl L1Blcm1pc3Npb25zLmpzCTIwMDktMDktMTcgMTM6MTE6NTEgVVRDIChyZXYgOTkxNSkKQEAgLTU2 LDYgKzU2LDggQEAKICAgICBsb2dpbjogdHJ1ZSwgCiAgICAgbG9nb3V0OiB0cnVlLCAKICAgICBy ZWdpc3RlcjogdHJ1ZSwKKyAgICByZW1pbmRlcjogdHJ1ZSwKKyAgICByZXNldDogdHJ1ZSwKICAg ICBlcnJvcjogdHJ1ZSwgCiAgICAgbm90Zm91bmQ6IHRydWUsIAogICAgIGphdmFzY3JpcHQ6IHRy dWUsIAoKTW9kaWZpZWQ6IGFwcHMvZ29iaS90cnVuay9jb2RlL1VzZXIvVXNlci5qcwo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09Ci0tLSBhcHBzL2dvYmkvdHJ1bmsvY29kZS9Vc2VyL1VzZXIuanMJMjAwOS0wOS0xNyAwOTo0 MToyMSBVVEMgKHJldiA5OTE0KQorKysgYXBwcy9nb2JpL3RydW5rL2NvZGUvVXNlci9Vc2VyLmpz CTIwMDktMDktMTcgMTM6MTE6NTEgVVRDIChyZXYgOTkxNSkKQEAgLTU0LDggKzU0LDcgQEAKIGZ1 bmN0aW9uIHBhc3N3b3JkX2FjdGlvbigpIHsKICAgICBpZiAocmVxLmlzUG9zdCgpKSB7CiAgICAg ICAgIGlmIChyZXEuZGF0YS5zYXZlKSB7Ci0gICAgICAgICAgICB0aGlzLnJlYWRFZGl0Rm9ybSh0 cnVlKTsKLSAgICAgICAgICAgIGlmIChyZXMuZGF0YS5lcnJvcnMpIHsKKyAgICAgICAgICAgIGlm ICghdGhpcy5yZWFkUGFzc3dvcmRGb3JtKCkpIHsKICAgICAgICAgICAgICAgICByZXMubWVzc2Fn ZSA9IG1zZygicGFzc3dvcmRfdmFsaWRhdGlvbl9lcnJvciIpOwogICAgICAgICAgICAgICAgIHJl cy5kYXRhLmJvZHkgPSB0aGlzLnJlbmRlclNraW5Bc1N0cmluZygicGFzc3dvcmQiKTsKICAgICAg ICAgICAgICAgICB0aGlzLnJlbmRlclNraW4oInBhZ2UiKTsKQEAgLTc2LDQgKzc1LDQyIEBACiAg ICAgdGhpcy5yZW5kZXJTa2luKCJwYWdlIik7CiB9CiAKK2Z1bmN0aW9uIHJlc2V0X2FjdGlvbigp IHsKKyAgICB2YXIgZm9ybWRhdGEgPSB0aGlzLmdldEZvcm1EYXRhKCksCisgICAgICAgIHRva2Vu ID0gZm9ybWRhdGEgJiYgZm9ybWRhdGEucmVzZXRfcGFzc3dvcmRfdG9rZW47CisgICAgaWYgKHRv a2VuICYmIHRva2VuID09PSByZXEuZGF0YS50b2tlbikgeworICAgICAgICB2YXIgdGltZSA9IGZv cm1kYXRhLnJlc2V0X3Bhc3N3b3JkX3RpbWU7CisgICAgICAgIGlmIChpc05hTih0aW1lKSkgewor ICAgICAgICAgICAgcmVzLmRhdGEuYm9keSA9ICJJbnZhbGlkIHBhc3N3b3JkIHJlc2V0IHRpbWVz dGFtcC4gIiArCisgICAgICAgICAgICAgICAgICAgICJQbGVhc2UgcmVxdWVzdCBhIG5ldyB0b2tl bi4iOworICAgICAgICB9IGVsc2UgaWYgKERhdGUubm93KCkgLSB0aW1lID4gMTAwMCAqIDYwICog NjAgKiAyNCkgeworICAgICAgICAgICAgcmVzLmRhdGEuYm9keSA9ICJQYXNzd29yZCByZXNldCB0 b2tlbiB0aW1lZCBvdXQuICIgKworICAgICAgICAgICAgICAgICAgICAiUGxlYXNlIHJlcXVlc3Qg YSBuZXcgdG9rZW4uIjsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHRoaXMucGFzc3dv cmRfYWN0aW9uKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICB9IGVsc2Ug eworICAgICAgICByZXMuZGF0YS5ib2R5ID0gIkludmFsaWQgcGFzc3dvcmQgcmVzZXQgdG9rZW4u ICIgKworICAgICAgICAgICAgICAgICAgICAiUGxlYXNlIHJlcXVlc3QgYSBuZXcgdG9rZW4uIjsK KyAgICB9CisgICAgdGhpcy5yZW5kZXJTa2luKCJwYWdlIik7Cit9CiAKK2Z1bmN0aW9uIHJlYWRQ YXNzd29yZEZvcm0oKSB7CisgICAgdmFyIHBhc3N3b3JkID0gcmVxLmRhdGEucGFzc3dvcmQsCisg ICAgICAgIGNvbmZpcm0gPSByZXEuZGF0YS5wYXNzd29yZF9jb25maXJtOworICAgIGlmIChwYXNz d29yZCA9PSBudWxsIHx8IHBhc3N3b3JkICE9IGNvbmZpcm0pIHsKKyAgICAgICAgcmVzLmRhdGEu ZXJyb3JzID0gcmVzLmRhdGEuZXJyb3JzIHx8IHt9OworICAgICAgICByZXMuZGF0YS5lcnJvcnMu cGFzc3dvcmQgPSBtc2coInBhc3N3b3JkX3ZhbGlkYXRpb25fZXJyb3IiKTsKKyAgICAgICAgcmV0 dXJuIGZhbHNlOworICAgIH0gZWxzZSB7CisgICAgICAgIHZhciBkYXRhID0gdGhpcy5nZXRGb3Jt RGF0YSgpOworICAgICAgICB0aGlzLnNldFNlY3VyZVBhc3N3b3JkKHBhc3N3b3JkLCBkYXRhLCAi cGFzc3dvcmQiKTsKKyAgICAgICAgdGhpcy5zZXRGb3JtRGF0YShkYXRhKQorICAgICAgICByZXR1 cm4gdHJ1ZTsKKyAgICB9CisKK30KKworCgpNb2RpZmllZDogYXBwcy9nb2JpL3RydW5rL2NvZGUv VXNlci9wYXNzd29yZC5za2luCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGFwcHMvZ29iaS90cnVuay9jb2RlL1Vz ZXIvcGFzc3dvcmQuc2tpbgkyMDA5LTA5LTE3IDA5OjQxOjIxIFVUQyAocmV2IDk5MTQpCisrKyBh cHBzL2dvYmkvdHJ1bmsvY29kZS9Vc2VyL3Bhc3N3b3JkLnNraW4JMjAwOS0wOS0xNyAxMzoxMTo1 MSBVVEMgKHJldiA5OTE1KQpAQCAtMSwxMiArMSwyMSBAQAogPGgzPkNoYW5nZSBwYXNzd29yZCBm b3IgPCUgdGhpcy5uYW1lICU+PC9oMz4KIAorPCUgcmVzcG9uc2UuZXJyb3JzLnBhc3N3b3JkIGZh aWxtb2RlPSJzaWxlbnQiCisgICAgcHJlZml4PSI8ZGl2IGNsYXNzPSd2YWxpZGF0aW9uRXJyb3In IHN0eWxlPSdjb2xvcjogcmVkOyBmb250LXdlaWdodDogYm9sZDsnPiIKKyAgICBzdWZmaXg9Ijwv ZGl2PiIgJT4KKwogPGZvcm0gbWV0aG9kPSJwb3N0Ij4KIAotPCUgdGhpcy5mb3JtIG5hbWU9InBh c3N3b3JkIiBhcz0iZWRpdG9yIiBzaXplPSI0MCIKLSAgICAgbGFiZWw9Ik5ldyBQYXNzd29yZCIK LSAgICAgcHJlZml4PSI8ZGl2PiIKLSAgICAgc3VmZml4PSI8L2Rpdj5SZXBlYXQgUGFzc3dvcmQ8 ZGl2PjxpbnB1dCBuYW1lPSdmb3JtZGF0YVtwYXNzd29yZF9jb25maXJtXScgdHlwZT0ncGFzc3dv cmQnPjwvZGl2PiIgJT4KKzxkaXY+CitFbnRlciBuZXcgUGFzc3dvcmQKKzxkaXY+PGlucHV0IG5h bWU9J3Bhc3N3b3JkJyB0eXBlPSdwYXNzd29yZCc+PC9kaXY+Cis8L2Rpdj4KIAorPGRpdj4KK1Jl cGVhdCBQYXNzd29yZAorPGRpdj48aW5wdXQgbmFtZT0ncGFzc3dvcmRfY29uZmlybScgdHlwZT0n cGFzc3dvcmQnPjwvZGl2PgorPC9kaXY+CisKIDxwPgogICA8aW5wdXQgdHlwZT0ic3VibWl0IiBu YW1lPSJzYXZlIiB2YWx1ZT0iU2F2ZSI+CiAgIDxhIGhyZWY9IjwlIHBhZ2UuaHJlZiAlPiIgY2xh c3M9ImNvbW1lbnRMaW5rIj4gPCUgbXNnIG5hbWU9J2NhbmNlbCcgJT48L2E+CgpBZGRlZDogYXBw cy9nb2JpL3RydW5rL2NvZGUvVXNlci9yZXNldFBhc3N3b3JkLnNraW4KCl9fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkhlbG1hLUNWUyBtYWlsaW5nIGxpc3QK SGVsbWEtQ1ZTQGhlbG1hLm9yZwpodHRwOi8vaGVsbWEub3JnL21haWxtYW4vbGlzdGluZm8vaGVs bWEtY3ZzCg==