|
From: <jue...@we...> - 2003-06-20 10:15:35
|
SGkgSmVhbi1QaWVycmUsDQogDQpZb3UndmUgZ290IGEgdmVyeSB2YWxpZCBwb2ludCBpbmRlZWQh DQogDQpMb2NhbGVSZXNvbHZlckF3YXJlIGFuZCBUaGVtZVJlc29sdmVyQXdhcmUgd2VyZSBpbnRy b2R1Y2VkIHRvIHByb3BhZ2F0ZSBMb2NhbGVSZXNvbHZlciBhbmQgVGhlbWVSZXNvbHZlciByZWZl cmVuY2VzIHRvIENvbnRyb2xsZXIgaW1wbGVtZW50YXRpb25zLCBzbyB0aGF0IHRoZSBsYXR0ZXIg Y2FuIHVzZSB0aGUgcmVzb2x2ZXIgaW5zdGFuY2UgdG8gY2hhbmdlIHRoZSBsb2NhbGUgcmVzcC4g dGhlbWUuIFRoaXMgd2FzIG1lYW50IGFuYWxvZ291cyB0byBBcHBsaWNhdGlvbkNvbnRleHRBd2Fy ZS4gVGhlIHByb3BhZ2F0aW9uIGhhcyB0aGUgZHJhd2JhY2sgdGhhdCBIYW5kbGVyTWFwcGluZyBp bXBsZW1lbnRhdGlvbnMgbmVlZCB0byBiZSBhd2FyZSBvZiB0aGUgcmVzb2x2ZXJzIHRvby4NCiAN ClVudGlsIHJlY2VudGx5LCB0aGUgcmVzb2x2ZWQgTG9jYWxlIGFuZCB0aGUgcmVzb2x2ZWQgVGhl bWUgd2VyZSBib3VuZCB0byB0aGUgcmVxdWVzdCBhcyBhdHRyaWJ1dGVzLCBzbyBvbmUgaGFkIHRv IHVzZSB0aGUgWHh4QXdhcmUgaW50ZXJmYWNlcyB0byBnZXQgcmVzb2x2ZXIgcmVmZXJlbmNlcy4g SSd2ZSBjaGFuZ2VkIHRoYXQgdGhpcyB3ZWVrOiBOb3cgdGhlIExvY2FsZVJlc29sdmVyIGFuZCBU aGVtZVJlc29sdmVyIGluc3RhbmNlcyB0aGVtc2VsdmVzIGdldCBib3VuZCwgdG8gYmUgYWJsZSB0 byByZXNvbHZlIGEgZnJlc2hseSBjaGFuZ2VkIGxvY2FsZSBvciB0aGVtZSAoaS5lLiBqdXN0IGNo YW5nZWQgYnkgdGhlIGN1cnJlbnQgcmVxdWVzdCkuIFJlcXVlc3RDb250ZXh0VXRpbHMgcHJvdmlk ZXMgZWFzeSBhY2Nlc3MgdG8gYSBmcmVzaGx5IHJlc29sdmVkIGxvY2FsZSBhbmQgdGhlbWUgdmlh IGl0cyAiZ2V0TG9jYWxlIiBhbmQgImdldFRoZW1lIiBtZXRob2RzLg0KIA0KVGhpcyBtYWtlcyBM b2NhbGVSZXNvbHZlckF3YXJlIGFuZCBUaGVtZVJlc29sdmVyQXdhcmUgbW9yZSBvciBsZXNzIG9i c29sZXRlLCBzbyBJJ2xsIHJlbW92ZSB0aGVtLiBOZXcgUmVxdWVzdENvbnRleHRVdGlscyBtZXRo b2RzICJnZXRMb2NhbGVSZXNvbHZlciIgYW5kICJnZXRUaGVtZVJlc29sdmVyIiB3aWxsIG1ha2Ug YWNjZXNzIHRvIHRoZSByZXNvbHZlcnMgYXMgZWFzeSBhcyBwb3NzaWJsZSAoaW5zdGVhZCBvZiBt YW51YWwgcmVxdWVzdCBhdHRyaWJ1dGUgcmV0cmlldmFsIGFuZCBjYXN0aW5nKS4gSSdsbCBjb21t aXQgdGhpcyB3aXRoIHNvbWUgb3RoZXIgcG9saXNoaW5nIHRoYXQgSSd2ZSBkb25lIGluIHRoZSB0 YWcgaW1wbGVtZW50YXRpb25zIChhbmQgdGhlIG5ldyB0YWcgdGVzdCBzdWl0ZSEpLg0KIA0KUmVn YXJkaW5nIGxvY2FsZSBhbmQgdGhlbWUgY2hhbmdlIHN1cHBvcnQgaW4gZXZlcnkgY29udHJvbGxl ciBpbiB0aGUgYXBwbGljYXRpb246IFRoaXMgaXMgc29tZXdoYXQgc2ltaWxhciB0byB0aGUgYXV0 aGVudGljYXRpb24gaXNzdWUgdGhhdCB3ZSBkaXNjdXNzZWQgc29tZSB0aW1lIGFnby4gVGhlIGRp ZmZlcmVuY2UgaXMgdGhhdCBhIFNlcnZsZXQgRmlsdGVyIGFuZCBhIGN1c3RvbSBIYW5kbGVyTWFw cGluZyBpbXBsZW1lbnRhdGlvbiBhcmVuJ3Qgb3B0aW9ucywgYXMgdGhlIGZvcm1lciBjYW4ndCBh Y2Nlc3MgdGhlIERpc3BhdGNoZXJTZXJ2bGV0IGF0dHJpYnV0ZXMsIGFuZCB0aGUgbGF0dGVyIGRv ZXNuJ3QgZ2V0IGEgSHR0cFNlcnZsZXRSZXNwb25zZSByZWZlcmVuY2UuIEJ1dCB5b3UgY291bGQg dXNlIGEgY3VzdG9tIEhhbmRsZXJBZGFwdGVyIGltcGxlbWVudGF0aW9uLCBsaWtlIGFzIGZvbGxv d3M6DQogDQpwdWJsaWMgY2xhc3MgTG9jYWxlQXdhcmVDb250cm9sbGVyQWRhcHRlciBleHRlbmRz IFNpbXBsZUNvbnRyb2xsZXJIYW5kbGVyQWRhcHRlciB7DQogIHB1YmxpYyBNb2RlbEFuZFZpZXcg aGFuZGxlKEh0dHBTZXJ2bGV0UmVxdWVzdCByZXF1ZXN0LCBIdHRwU2VydmxldFJlc3BvbnNlIHJl c3BvbnNlLCBPYmplY3QgaGFuZGxlcikgew0KICAgIExvY2FsZVJlc29sdmVyIGxvY2FsZVJlc29s dmVyID0gUmVxdWVzdENvbnRleHRVdGlscy5nZXRMb2NhbGVSZXNvbHZlcihyZXF1ZXN0KTsNCiAg ICBUaGVtZVJlc29sdmVyIHRoZW1lUmVzb2x2ZXIgPSBSZXF1ZXN0Q29udGV4dFV0aWxzLmdldFRo ZW1lUmVzb2x2ZXIocmVxdWVzdCk7DQogICAgU3RyaW5nIG5ld0xhbmd1YWdlID0gcmVxdWVzdC5n ZXRQYXJhbWV0ZXIoImxhbmd1YWdlIik7DQogICAgU3RyaW5nIG5ld1RoZW1lID0gcmVxdWVzdC5n ZXRQYXJhbWV0ZXIoInRoZW1lIik7DQogICAgaWYgKG5ld0xhbmd1YWdlICE9IG51bGwpIHsNCiAg ICAgIGxvY2FsZVJlc29sdmVyLnNldExvY2FsZShyZXF1ZXN0LCByZXNwb25zZSwgbmV3IExvY2Fs ZShuZXdMYW5ndWFnZSkpOw0KICAgIH0NCiAgICBpZiAobmV3VGhlbWUgIT0gbnVsbCkgew0KICAg ICAgdGhlbWVSZXNvbHZlci5zZXRUaGVtZU5hbWUocmVxdWVzdCwgcmVzcG9uc2UsIG5ld1RoZW1l KTsNCiAgICB9DQogICAgcmV0dXJuIHN1cGVyLmhhbmRsZShyZXF1ZXN0LCByZXNwb25zZSwgaGFu ZGxlcik7DQogIH0NCn0NCg0KUmVnaXN0ZXIgaXQgaW4geW91ciBEaXNwYXRjaGVyU2VydmxldCdz IGFwcGxpY2F0aW9uIGNvbnRleHQsIGFuZCBpdCBzaG91bGQgZ2V0IGFwcGxpZWQgb24gZXZlcnkg cmVxdWVzdCBkaXNwYXRjaGVkIGJ5IHRoaXMgc2VydmxldDoNCiANCiA8YmVhbiBpZD0ibG9jYWxl QXdhcmVBZGFwdGVyIiBjbGFzcz0id2VyazMuZXhhbXBsZS5Mb2NhbGVBd2FyZUNvbnRyb2xsZXJB ZGFwdGVyIi8+DQogDQpPbiB0aGUgb2NjYXNpb24sIEknbSBjdXJyZW50bHkgd29ya2luZyBvbiBw ZXItSGFuZGxlck1hcHBpbmcgaW50ZXJjZXB0b3JzIHRoYXQgc2hvdWxkIGJlIGFibGUgdG8gYWNo aWV2ZSB0aGUgc2FtZS4gSSdkIGxpa2UgdG8gc2VwYXJhdGUgdGhlIHZhcmlvdXMgcm9sZXMgaW4g aGFuZGxlciBwcm9jZXNzaW5nOiBtYXBwaW5nLCBpbnRlcmNlcHRvciwgYWRhcHRlci4gSW4gdGhl IGFib3ZlIHNvbHV0aW9uLCB0aGUgbGF0dGVyIHR3byBhcmUgY29tYmluZWQgLSBJJ2QgbGlrZSB0 byBzb2x2ZSB0aGlzIGlzc3VlLg0KIA0KUmVnYXJkcywNCkp1ZXJnZW4NCiANCiANCg0KCS0tLS0t VXJzcHLDvG5nbGljaGUgTmFjaHJpY2h0LS0tLS0gDQoJVm9uOiBKUCBQYXdsYWsgW21haWx0bzpq cC5wYXdsYWtAdGlzY2FsaS5mcl0gDQoJR2VzZW5kZXQ6IEZyIDIwLjA2LjIwMDMgMDk6MzkgDQoJ QW46IGrDvHJnZW4gaMO2bGxlciBbd2VyazNBVF07ICdSb2QgSm9obnNvbic7IHNwcmluZ2ZyYW1l d29yay1kZXZlbG9wZXJAbGlzdHMuc291cmNlZm9yZ2UubmV0IA0KCUNjOiANCglCZXRyZWZmOiBS RSA6IFtTcHJpbmdmcmFtZXdvcmstZGV2ZWxvcGVyXSB0aGVtZXMNCgkNCgkNCg0KCUhpIEp1ZXJn ZW4sDQoJDQoJPiBCVFcsIGluc3RlYWQgb2YgZGlyZWN0bHkgc2V0dGluZyB0aGUgcmVzcGVjdGl2 ZSBjb29raWVzIHZpYQ0KCUphdmFTY3JpcHQsDQoJPiB5b3UgY291bGQgbWFrZSBQYWdlZExpc3RD b250cm9sbGVyIGltcGxlbWVudCBMb2NhbGVSZXNvbHZlckF3YXJlIGFuZA0KCXRoZQ0KCT4gbmV3 IFRoZW1lUmVzb2x2ZXJBd2FyZS4gVGhlbiB0aGUgY29udHJvbGxlciBjb3VsZCBjYWxsDQoJc2V0 TG9jYWxlL3NldFRoZW1lDQoJPiBpbiBjYXNlIG9mIHJlc3BlY3RpdmUgcmVxdWVzdHMsIHRyaWdn ZXJlZCBieSBjZXJ0YWluIEhUTUwgbGlua3MuIE5vdGUNCgl0aGF0DQoJPiB0aGlzIGltcGxlbWVu dGF0aW9uIHN0cmF0ZWd5IGFsbG93cyBmb3Igc2VhbWxlc3NseSBjaGFuZ2luZyB0aGUNCgk+IExv Y2FsZVJlc29sdmVyL1RoZW1lUmVzb2x2ZXIgaW1wbGVtZW50YXRpb24sIGUuZy4gZnJvbSB0aGUg Y29va2llIHRvDQoJdGhlDQoJPiBzZXNzaW9uIHZlcnNpb24hDQoJDQoJSSBoYXZlIHNvbWUgcG9p bnRzIHVuY2xlYXIgd2l0aCB0aGlzLg0KCS0tLS0tDQoJVGhlIExvY2FsIFJlc29sdmVyQXdhcmUg YW5kIFRoZW1lUmVzb2x2ZXJBd2FyZSBpbnRlcmZhY2VzIGNvbnRhaW4gb25seSBhDQoJUmVzb2x2 ZXIgc2V0dGVyLiBUaGlzIGpvYiBpcyBtYWRlIGJ5IHRoZSBTZXJ2bGV0RGlzcGF0Y2hlciBkZXBl bmRpbmcgb24NCgliZWFucyBkZWZpbml0aW9uLiBXaGF0IGlzIG5lZWRlZCBpcyBnZXR0aW5nIHRo ZSBSZXNvbHZlciBmb3Igc2V0dGluZw0KCXRoZW1lIG9yIExvY2FsZSwgbm90IHNldHRpbmcgdGhl IFJlc29sdmVyLg0KCQ0KCUZvciBub3csIHRoZSBSZXNvbHZlcnMgYXJlIHB1dCBpbiByZXF1ZXN0 IEF0dHJpYnV0ZSBieSB0aGUNCglTZXJ2bGV0RGlzcGF0Y2hlci4gVGhleSBjYW4gYmUgZm91bmQg aGVyZSBieSB0aGUgQ29udHJvbGxlci4gSSByZWFsbHkNCglkb24ndCBzZWUgdGhlIFhYWEF3YXJl IHVzYWdlLg0KCS0tLS0tDQoJSW4gYWxsIGNhc2VzLCBpdCBzZWVtcyBhIHBpZWNlIG9mIGNvZGUg aXMgZm9yIG5vdyBsYWNraW5nLg0KCUpPQjogdmVyaWZ5aW5nIGluIHRoZSByZXF1ZXN0IGZvciBs b2NhbGUvdGhlbWUgY2hhbmdlcyBhbmQsIGlmIG5lZWRlZCwNCgljYWxsaW5nIHRoZSBSZXNvbHZl ciBtZXRob2QgZm9yIHNldHRpbmcgdGhlIG5ldyB2YWx1ZS4NCgkNCglZb3UgY291bGQgc2F5LCBp dCdzIHN0cmFpZ2h0Zm9yd2FyZCBpbiBhIENvbnRyb2xsZXIuIEJ1dCB0aGlzIHdpbGwgYmUNCglx dWl0ZSBzeXN0ZW1hdGljYWxseSB1c2VkIGZvciBhcHBsaWNhdGlvbnMgd2l0aCB0aGVtZSBvciBs b2NhbGUgY2hhbmdlcy4NCgkNCglJbiBhZGRpdGlvbiwgaWYgdGhlIGNoYW5nZSBpcyBhbGxvd2Vk IGZyb20gZXZlcnkgcGFnZSwgYWxsIENvbnRyb2xsZXJzDQoJd2lsbCBoYXZlIHRvIGRvIHRoZSBz YW1lLCBldmVudHVhbGx5IGV4Y2VwdCBpZiBpdCBpcyBoYW5kbGVkIGluDQoJU2VydmxldERpc3Bh dGNoZXIuDQoJDQoJVGhlIEV4cGVydCBwYXR0ZXJuIHdpbGwgYXNzaWduIGltcGxlbWVudGF0aW9u IG9mIHN1Y2ggY29kZSBpbiB0aGUNCglSZXNvbHZlci4gQSBuZXcgdXBkYXRlIG1ldGhvZCBjb3Vs ZCBlYXNpbHkgYmUgZG9uZSBpbiB0aGUgQWJzdHJhY3RDbGFzcw0KCWFuZCBhZGRlZCBpbiB0aGUg aW50ZXJmYWNlLg0KCUEgc3RhdGljIG1ldGhvZCBpbiBhbiBVdGlsIENsYXNzIGNvdWxkIGJlIGRv bmUgaW5zdGVhZCwgYnV0IHdlIG5lZWQgYW4NCglleHRyYSBwYXJhbWV0ZXIgUmVzb2x2ZXIgaW4g dGhpcyBjYXNlLg0KCVJlc3RzIHRvIGRldGVybWluZSB0aGUgcmVxdWVzdCBwYXJhbWV0ZXIgdG8g Y2hlY2suDQoJDQoJRmluYWxseSwgd2lsbCB3ZSBiZSBhYmxlIHRvIGNhbGwgdGhpcyBjb2RlIGZy b20gdGhlIFNlcnZsZXREaXNwYXRjaGVyDQoJZm9yIGF2b2lkaW5nIGNhbGxzIGZyb20gZWFjaCBD b250cm9sbGVyPw0KCS0tLS0tDQoJSmVhbi1QaWVycmUNCgkNCgkNCgkNCgkNCgkNCg0K |