Return-Path: Delivered-To: apmail-geronimo-dev-archive@www.apache.org Received: (qmail 13059 invoked from network); 26 Jun 2006 17:51:11 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 26 Jun 2006 17:51:11 -0000 Received: (qmail 40375 invoked by uid 500); 26 Jun 2006 17:51:06 -0000 Delivered-To: apmail-geronimo-dev-archive@geronimo.apache.org Received: (qmail 40164 invoked by uid 500); 26 Jun 2006 17:51:05 -0000 Mailing-List: contact dev-help@geronimo.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: Reply-To: dev@geronimo.apache.org List-Id: Delivered-To: mailing list dev@geronimo.apache.org Received: (qmail 40149 invoked by uid 99); 26 Jun 2006 17:51:05 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 26 Jun 2006 10:51:05 -0700 X-ASF-Spam-Status: No, hits=0.5 required=10.0 tests=DNS_FROM_RFC_ABUSE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: domain of goyathlay.geronimo@gmail.com designates 66.249.92.174 as permitted sender) Received: from [66.249.92.174] (HELO ug-out-1314.google.com) (66.249.92.174) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 26 Jun 2006 10:51:04 -0700 Received: by ug-out-1314.google.com with SMTP id m3so1088323uge for ; Mon, 26 Jun 2006 10:50:42 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references; b=Zyn9bzrOBf2cg/QTH5YaA8cF6IE7q3g4yo+gd/Gkq/9MQPdEIHJtEVkNtp4/fwoDafQBa/F4h7uUuqLEORAHyHoMPNh9V4NYPL8f2v4d0pwKCIgosKwPlTWemRa36l9iiighS9XJ4C7E2++4/xfu12s+UCEWtN6ShfDmY5NAylU= Received: by 10.78.139.5 with SMTP id m5mr2232355hud; Mon, 26 Jun 2006 10:50:42 -0700 (PDT) Received: by 10.78.25.19 with HTTP; Mon, 26 Jun 2006 10:50:42 -0700 (PDT) Message-ID: Date: Mon, 26 Jun 2006 13:50:42 -0400 From: "Prasad Kashyap" To: dev@geronimo.apache.org Subject: Re: Lets start moving to m2 In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_12834_11098129.1151344242726" References: <5D194F2A-135A-4980-9D91-D92D2E62ADF1@yahoo.com> X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N ------=_Part_12834_11098129.1151344242726 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline I was unable to attach the zip file of the plugin. Here's the patch. Cheers Prasad. On 6/26/06, Prasad Kashyap wrote: > Here's the status of the assembly plugin. > > The geronimo-assembly-plugin is ready and is undergoing tests. It has > only 1 goal, i.e., the "installConfig" goal. This goal runs thro' the > dependency list in the pom.xml and installs all dependencies of type > "car". I have attached a patch of this plugin for those wishing to > play with it. > > The maven-assembly-plugin is what will be used to do the bulk of the > assembly. This plugin had to be patched to meet our requirements. > Special thanks to Jesse McConnel and John Casey from maven for > answering my myriad questions and agreeing to apply the patch to the > assembly plugin. > > The last remaining thing is our (in)ability to execute the > maven-assembly-plugin twice. I am trying to get this resolved. Here's > the thread for those wishing to follow - > http://www.mail-archive.com/dev@maven.apache.org/msg58756.html > > > Cheers > Prasad > > On 6/26/06, David Jencks wrote: > > Although there are still some problems (such as not running all the > > tests) I think we have pretty much all of the build working in m2 > > except for the assembly stage, due to the lack of an m2 assembly > > plugin. I'm not sure of the status of such a plugin, but I'd like to > > suggest that we try to make the build be m2-only except for assembly, > > and m1 for the assembly step until a suitable plugin exists. > > > > Comments? Objections? > > > > thanks > > david jencks > > > > > ------=_Part_12834_11098129.1151344242726 Content-Type: application/octet-stream; name="geronimo-assembly-plugin.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="geronimo-assembly-plugin.patch" X-Attachment-Id: f_eox4kmgr SW5kZXg6IG0yLXBsdWdpbnMvZ2Vyb25pbW8tYXNzZW1ibHktcGx1Z2luL3BvbS54bWwNCj09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0NCi0tLSBtMi1wbHVnaW5zL2dlcm9uaW1vLWFzc2VtYmx5LXBsdWdpbi9wb20ueG1sCShy ZXZpc2lvbiAwKQ0KKysrIG0yLXBsdWdpbnMvZ2Vyb25pbW8tYXNzZW1ibHktcGx1Z2luL3BvbS54 bWwJKHJldmlzaW9uIDApDQpAQCAtMCwwICsxLDE0NCBAQA0KKzxwcm9qZWN0IHhtbG5zPSJodHRw Oi8vbWF2ZW4uYXBhY2hlLm9yZy9QT00vNC4wLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5v cmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL21h dmVuLmFwYWNoZS5vcmcvUE9NLzQuMC4wIGh0dHA6Ly9tYXZlbi5hcGFjaGUub3JnL21hdmVuLXY0 XzBfMC54c2QiPgorICAgIDxtb2RlbFZlcnNpb24+NC4wLjA8L21vZGVsVmVyc2lvbj4KKworICAg IDxwYXJlbnQ+CisgICAgICAgIDxncm91cElkPm9yZy5hcGFjaGUuZ2Vyb25pbW8ucGx1Z2luczwv Z3JvdXBJZD4KKyAgICAgICAgPGFydGlmYWN0SWQ+cGx1Z2lucy1wYXJlbnQ8L2FydGlmYWN0SWQ+ CisgICAgICAgIDx2ZXJzaW9uPjEuMi1TTkFQU0hPVDwvdmVyc2lvbj4KKyAgICA8L3BhcmVudD4K KworICAgIDxhcnRpZmFjdElkPmdlcm9uaW1vLWFzc2VtYmx5LXBsdWdpbjwvYXJ0aWZhY3RJZD4K KyAgICA8cGFja2FnaW5nPm1hdmVuLXBsdWdpbjwvcGFja2FnaW5nPgorICAgIDx2ZXJzaW9uPiR7 Z2Vyb25pbW9Bc3NlbWJseVBsdWdpblZlcnNpb259PC92ZXJzaW9uPgorICAgIDxuYW1lPkdlcm9u aW1vIDo6IE1hdmVuMiBBc3NlbWJseSBQbHVnaW48L25hbWU+CisgICAgPHVybD5odHRwOi8vZ2Vy b25pbW8uYXBhY2hlLm9yZzwvdXJsPgorCisgICAgPGlzc3VlTWFuYWdlbWVudD4KKyAgICAgICAg PHN5c3RlbT5qaXJhPC9zeXN0ZW0+CisgICAgICAgIDx1cmw+aHR0cDovL2lzc3Vlcy5hcGFjaGUu b3JnL2ppcmEvc2VjdXJlL0Jyb3dzZVByb2plY3QuanNwYT9pZD0xMDIyMDwvdXJsPgorICAgIDwv aXNzdWVNYW5hZ2VtZW50PgorCisgICAgPGNpTWFuYWdlbWVudD4KKyAgICAgICAgPHN5c3RlbT5j b250aW51dW08L3N5c3RlbT4KKyAgICAgICAgPG5vdGlmaWVycz4KKyAgICAgICAgICAgIDxub3Rp Zmllcj4KKyAgICAgICAgICAgICAgICA8dHlwZT5tYWlsPC90eXBlPgorICAgICAgICAgICAgICAg IDxzZW5kT25FcnJvciAvPgorICAgICAgICAgICAgICAgIDxzZW5kT25GYWlsdXJlIC8+CisgICAg ICAgICAgICAgICAgPGFkZHJlc3M+ZGV2QGdlcm9uaW1vLm9yZzwvYWRkcmVzcz4KKyAgICAgICAg ICAgIDwvbm90aWZpZXI+CisgICAgICAgIDwvbm90aWZpZXJzPgorICAgIDwvY2lNYW5hZ2VtZW50 PgorCisgICAgPG1haWxpbmdMaXN0cz4KKyAgICAgICAgPG1haWxpbmdMaXN0PgorICAgICAgICAg ICAgPG5hbWU+R2Vyb25pbW8gVXNlciBMaXN0PC9uYW1lPgorICAgICAgICAgICAgPHN1YnNjcmli ZT51c2Vycy1zdWJzY3JpYmVAZ2Vyb25pbW8uYXBhY2hlLm9yZzwvc3Vic2NyaWJlPgorICAgICAg ICAgICAgPHVuc3Vic2NyaWJlPnVzZXJzLXVuc3Vic2NyaWJlQGdlcm9uaW1vLmFwYWNoZS5vcmc8 L3Vuc3Vic2NyaWJlPgorICAgICAgICAgICAgPGFyY2hpdmU+aHR0cDovL21haWwtYXJjaGl2ZXMu YXBhY2hlLm9yZy9tb2RfbWJveC9nZXJvbmltby11c2VyLzwvYXJjaGl2ZT4KKyAgICAgICAgPC9t YWlsaW5nTGlzdD4KKworICAgICAgICA8bWFpbGluZ0xpc3Q+CisgICAgICAgICAgICA8bmFtZT5H ZXJvbmltbyBEZXZlbG9wZXIgTGlzdDwvbmFtZT4KKyAgICAgICAgICAgIDxzdWJzY3JpYmU+ZGV2 LXN1YnNjcmliZUBnZXJvbmltby5hcGFjaGUub3JnPC9zdWJzY3JpYmU+CisgICAgICAgICAgICA8 dW5zdWJzY3JpYmU+ZGV2LXVuc3Vic2NyaWJlQGdlcm9uaW1vLmFwYWNoZS5vcmc8L3Vuc3Vic2Ny aWJlPgorICAgICAgICAgICAgPGFyY2hpdmU+aHR0cDovL21haWwtYXJjaGl2ZXMuYXBhY2hlLm9y Zy9tb2RfbWJveC9nZXJvbmltby1kZXYvPC9hcmNoaXZlPgorICAgICAgICA8L21haWxpbmdMaXN0 PgorCisgICAgICAgIDxtYWlsaW5nTGlzdD4KKyAgICAgICAgICAgIDxuYW1lPlNvdXJjZSBDb250 cm9sIExpc3Q8L25hbWU+CisgICAgICAgICAgICA8c3Vic2NyaWJlPnNjbS1zdWJzY3JpYmVAZ2Vy b25pbW8uYXBhY2hlLm9yZzwvc3Vic2NyaWJlPgorICAgICAgICAgICAgPHVuc3Vic2NyaWJlPnNj bS11bnN1YnNjcmliZUBnZXJvbmltby5hcGFjaGUub3JnPC91bnN1YnNjcmliZT4KKyAgICAgICAg ICAgIDxhcmNoaXZlPmh0dHA6Ly9tYWlsLWFyY2hpdmVzLmFwYWNoZS5vcmcvbW9kX21ib3gvZ2Vy b25pbW8tc2NtLzwvYXJjaGl2ZT4KKyAgICAgICAgPC9tYWlsaW5nTGlzdD4KKyAgICA8L21haWxp bmdMaXN0cz4KKworICAgIDxkZXZlbG9wZXJzPgorICAgICAgICA8ZGV2ZWxvcGVyPgorICAgICAg ICA8L2RldmVsb3Blcj4KKyAgICA8L2RldmVsb3BlcnM+CisKKyAgICA8Y29udHJpYnV0b3JzPgor ICAgICAgICA8Y29udHJpYnV0b3I+CisgICAgICAgIDwvY29udHJpYnV0b3I+CisgICAgPC9jb250 cmlidXRvcnM+CisKKyAgICA8bGljZW5zZXM+CisgICAgICAgIDxsaWNlbnNlPgorICAgICAgICAg ICAgPG5hbWU+VGhlIEFwYWNoZSBTb2Z0d2FyZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDwvbmFtZT4K KyAgICAgICAgICAgIDx1cmw+aHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0Ut Mi4wPC91cmw+CisgICAgICAgICAgICA8ZGlzdHJpYnV0aW9uPnJlcG88L2Rpc3RyaWJ1dGlvbj4K KyAgICAgICAgPC9saWNlbnNlPgorICAgIDwvbGljZW5zZXM+CisKKyAgICA8c2NtPgorICAgICAg ICA8Y29ubmVjdGlvbj5zY206c3ZuOmh0dHBzOi8vc3ZuLmFwYWNoZS5vcmcvcmVwb3MvYXNmL2dl cm9uaW1vLzwvY29ubmVjdGlvbj4KKyAgICAgICAgPGRldmVsb3BlckNvbm5lY3Rpb24+c2NtOnN2 bjpodHRwczovLyR7bWF2ZW4udXNlcm5hbWV9QHN2bi5hcGFjaGUub3JnL3JlcG9zL2FzZi9nZXJv bmltby88L2RldmVsb3BlckNvbm5lY3Rpb24+CisgICAgICAgIDx1cmw+aHR0cHM6Ly9zdm4uYXBh Y2hlLm9yZy9yZXBvcy9hc2YvZ2Vyb25pbW8vPC91cmw+CisgICAgPC9zY20+CisKKyAgICA8b3Jn YW5pemF0aW9uPgorICAgICAgICA8bmFtZT5HZXJvbmltbzwvbmFtZT4KKyAgICAgICAgPHVybD5o dHRwOi8vZ2Vyb25pbW8uYXBhY2hlLm9yZy88L3VybD4KKyAgICA8L29yZ2FuaXphdGlvbj4KKwor ICAgIDxkZXBlbmRlbmNpZXM+CisgICAgICAgIDxkZXBlbmRlbmN5PgorICAgICAgICAgICAgPGdy b3VwSWQ+b3JnLmFwYWNoZS5tYXZlbjwvZ3JvdXBJZD4KKyAgICAgICAgICAgIDxhcnRpZmFjdElk Pm1hdmVuLXBsdWdpbi1hcGk8L2FydGlmYWN0SWQ+CisgICAgICAgICAgICA8dmVyc2lvbj4yLjAu NDwvdmVyc2lvbj4KKyAgICAgICAgPC9kZXBlbmRlbmN5PgorCisgICAgICAgIDxkZXBlbmRlbmN5 PgorICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbjwvZ3JvdXBJZD4KKyAgICAg ICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLXByb2plY3Q8L2FydGlmYWN0SWQ+CisgICAgICAgICAg ICA8dmVyc2lvbj4yLjAuNDwvdmVyc2lvbj4KKyAgICAgICAgPC9kZXBlbmRlbmN5PgorCisgICAg ICAgIDxkZXBlbmRlbmN5PgorICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbjwv Z3JvdXBJZD4KKyAgICAgICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLWFydGlmYWN0PC9hcnRpZmFj dElkPgorICAgICAgICAgICAgPHZlcnNpb24+Mi4wLjQ8L3ZlcnNpb24+CisgICAgICAgIDwvZGVw ZW5kZW5jeT4KKworICAgICAgICA8ZGVwZW5kZW5jeT4KKyAgICAgICAgICAgIDxncm91cElkPm9y Zy5hcGFjaGUuZ2Vyb25pbW8ubW9kdWxlczwvZ3JvdXBJZD4KKyAgICAgICAgICAgIDxhcnRpZmFj dElkPmdlcm9uaW1vLWtlcm5lbDwvYXJ0aWZhY3RJZD4KKyAgICAgICAgPC9kZXBlbmRlbmN5Pgor CisgICAgICAgIDxkZXBlbmRlbmN5PgorICAgICAgICAgICAgPGdyb3VwSWQ+b3JnLmFwYWNoZS5n ZXJvbmltby5tb2R1bGVzPC9ncm91cElkPgorICAgICAgICAgICAgPGFydGlmYWN0SWQ+Z2Vyb25p bW8tc3lzdGVtPC9hcnRpZmFjdElkPgorICAgICAgICA8L2RlcGVuZGVuY3k+CisKKyAgICA8L2Rl cGVuZGVuY2llcz4KKyAgICAgICAgCisKKyAgICA8YnVpbGQ+CisgICAgICAgIDxwbHVnaW5zPgor ICAgICAgICAgICAgPHBsdWdpbj4KKyAgICAgICAgICAgICAgICA8YXJ0aWZhY3RJZD5tYXZlbi1w bHVnaW4tcGx1Z2luPC9hcnRpZmFjdElkPgorICAgICAgICAgICAgICAgIDx2ZXJzaW9uPjIuMTwv dmVyc2lvbj4KKyAgICAgICAgICAgICAgICA8Y29uZmlndXJhdGlvbj4KKyAgICAgICAgICAgICAg ICAgICAgPGdvYWxQcmVmaXg+YXNzZW1ibHk8L2dvYWxQcmVmaXg+CisgICAgICAgICAgICAgICAg PC9jb25maWd1cmF0aW9uPgorICAgICAgICAgICAgPC9wbHVnaW4+CisgICAgICAgIDwvcGx1Z2lu cz4KKyAgICA8L2J1aWxkPgorCisgICAgPCEtLQorICAgIDxyZXBvcnRpbmc+CisgICAgICAgIDxw bHVnaW5zPgorICAgICAgICAgICAgPHBsdWdpbj4KKyAgICAgICAgICAgICAgICA8Z3JvdXBJZD5v cmcuYXBhY2hlLm1hdmVuLnBsdWdpbnM8L2dyb3VwSWQ+CisgICAgICAgICAgICAgICAgPGFydGlm YWN0SWQ+bWF2ZW4tcHJvamVjdC1pbmZvLXJlcG9ydHMtcGx1Z2luPC9hcnRpZmFjdElkPgorICAg ICAgICAgICAgPC9wbHVnaW4+CisKKyAgICAgICAgICAgIDxwbHVnaW4+CisgICAgICAgICAgICAg ICAgPGdyb3VwSWQ+b3JnLmFwYWNoZS5tYXZlbi5wbHVnaW5zPC9ncm91cElkPgorICAgICAgICAg ICAgICAgIDxhcnRpZmFjdElkPm1hdmVuLXBsdWdpbi1wbHVnaW48L2FydGlmYWN0SWQ+CisgICAg ICAgICAgICA8L3BsdWdpbj4KKyAgICAgICAgPC9wbHVnaW5zPgorICAgIDwvcmVwb3J0aW5nPiAt LT4KKzwvcHJvamVjdD4KKwoNClByb3BlcnR5IGNoYW5nZXMgb246IG0yLXBsdWdpbnNcZ2Vyb25p bW8tYXNzZW1ibHktcGx1Z2luXHBvbS54bWwNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCk5hbWU6IHN2bjptaW1lLXR5 cGUNCiAgICsgdGV4dC94bWwNCk5hbWU6IHN2bjprZXl3b3Jkcw0KICAgKyBEYXRlIFJldmlzaW9u DQpOYW1lOiBzdm46ZW9sLXN0eWxlDQogICArIG5hdGl2ZQ0KDQpJbmRleDogbTItcGx1Z2lucy9n ZXJvbmltby1hc3NlbWJseS1wbHVnaW4vc3JjL2phdmEvb3JnL2FwYWNoZS9nZXJvbmltby9wbHVn aW4vYXNzZW1ibHkvQWJzdHJhY3RBc3NlbWJseU1vam8uamF2YQ0KPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIG0y LXBsdWdpbnMvZ2Vyb25pbW8tYXNzZW1ibHktcGx1Z2luL3NyYy9qYXZhL29yZy9hcGFjaGUvZ2Vy b25pbW8vcGx1Z2luL2Fzc2VtYmx5L0Fic3RyYWN0QXNzZW1ibHlNb2pvLmphdmEJKHJldmlzaW9u IDApDQorKysgbTItcGx1Z2lucy9nZXJvbmltby1hc3NlbWJseS1wbHVnaW4vc3JjL2phdmEvb3Jn L2FwYWNoZS9nZXJvbmltby9wbHVnaW4vYXNzZW1ibHkvQWJzdHJhY3RBc3NlbWJseU1vam8uamF2 YQkocmV2aXNpb24gMCkNCkBAIC0wLDAgKzEsNTUgQEANCisvKioKKyAqCisgKiBDb3B5cmlnaHQg MjAwNSBUaGUgQXBhY2hlIFNvZnR3YXJlIEZvdW5kYXRpb24KKyAqCisgKiAgTGljZW5zZWQgdW5k ZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlICJMaWNlbnNlIik7CisgKiAg eW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBM aWNlbnNlLgorICogIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdAorICoK KyAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjAKKyAqCisg KiAgVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0 aW5nLCBzb2Z0d2FyZQorICogIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3Ry aWJ1dGVkIG9uIGFuICJBUyBJUyIgQkFTSVMsCisgKiAgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENP TkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuCisgKiAgU2Vl IHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Np b25zIGFuZAorICogIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLgorICovCisgCisgCitw YWNrYWdlIG9yZy5hcGFjaGUuZ2Vyb25pbW8ucGx1Z2luLmFzc2VtYmx5OworCitpbXBvcnQgamF2 YS5pby5QcmludFN0cmVhbTsKKworaW1wb3J0IG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luLkFic3Ry YWN0TW9qbzsKK2ltcG9ydCBvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbi5Nb2pvRXhlY3V0aW9uRXhj ZXB0aW9uOworaW1wb3J0IG9yZy5hcGFjaGUubWF2ZW4ucGx1Z2luLk1vam9GYWlsdXJlRXhjZXB0 aW9uOworCitwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RBc3NlbWJseU1vam8gZXh0ZW5k cyBBYnN0cmFjdE1vam8geworCisJcHJvdGVjdGVkIGZpbmFsIFN0cmluZyBsaW5lU2VwID0gIj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0iOworCisJcHJpdmF0ZSBQ cmludFN0cmVhbSBsb2dTdHJlYW0gPSBTeXN0ZW0ub3V0OworCisJcHJpdmF0ZSBib29sZWFuIGZh aWxPbkVycm9yID0gdHJ1ZTsKKworCXB1YmxpYyBhYnN0cmFjdCB2b2lkIGV4ZWN1dGUoKSB0aHJv d3MgTW9qb0V4ZWN1dGlvbkV4Y2VwdGlvbjsKKworCXByb3RlY3RlZCB2b2lkIGhhbmRsZUVycm9y KEV4Y2VwdGlvbiBlKSB0aHJvd3MgTW9qb0V4ZWN1dGlvbkV4Y2VwdGlvbiB7CisJCS8vIHNlZUxv ZygpOworCQllLnByaW50U3RhY2tUcmFjZShsb2dTdHJlYW0pOworCQlsb2dTdHJlYW0ucHJpbnRs bihsaW5lU2VwKTsKKwkJaWYgKGZhaWxPbkVycm9yKSB7CisJCQl0aHJvdyAoTW9qb0V4ZWN1dGlv bkV4Y2VwdGlvbikgbmV3IE1vam9FeGVjdXRpb25FeGNlcHRpb24oZQorCQkJCQkudG9TdHJpbmco KSwgZSk7CisJCX0gZWxzZSB7CisJCQl0cnkgeworCQkJCXRocm93IChNb2pvRmFpbHVyZUV4Y2Vw dGlvbikgbmV3IE1vam9GYWlsdXJlRXhjZXB0aW9uKGUsIGUKKwkJCQkJCS50b1N0cmluZygpLCBl LmdldE1lc3NhZ2UoKSk7CisJCQl9IGNhdGNoIChNb2pvRmFpbHVyZUV4Y2VwdGlvbiBlMSkgewor CQkJCWUxLnByaW50U3RhY2tUcmFjZShsb2dTdHJlYW0pOworCQkJCWxvZ1N0cmVhbS5wcmludGxu KGxpbmVTZXApOworCQkJfQorCQl9CisJfQorCit9Cg0KUHJvcGVydHkgY2hhbmdlcyBvbjogbTIt cGx1Z2luc1xnZXJvbmltby1hc3NlbWJseS1wbHVnaW5cc3JjXGphdmFcb3JnXGFwYWNoZVxnZXJv bmltb1xwbHVnaW5cYXNzZW1ibHlcQWJzdHJhY3RBc3NlbWJseU1vam8uamF2YQ0KX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Xw0KTmFtZTogc3ZuOm1pbWUtdHlwZQ0KICAgKyB0ZXh0L3BsYWluDQpOYW1lOiBzdm46a2V5d29y ZHMNCiAgICsgRGF0ZSBSZXZpc2lvbg0KTmFtZTogc3ZuOmVvbC1zdHlsZQ0KICAgKyBuYXRpdmUN Cg0KSW5kZXg6IG0yLXBsdWdpbnMvZ2Vyb25pbW8tYXNzZW1ibHktcGx1Z2luL3NyYy9qYXZhL29y Zy9hcGFjaGUvZ2Vyb25pbW8vcGx1Z2luL2Fzc2VtYmx5L0NvbmZpZ0luc3RhbGxlck1vam8uamF2 YQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KLS0tIG0yLXBsdWdpbnMvZ2Vyb25pbW8tYXNzZW1ibHktcGx1Z2luL3Ny Yy9qYXZhL29yZy9hcGFjaGUvZ2Vyb25pbW8vcGx1Z2luL2Fzc2VtYmx5L0NvbmZpZ0luc3RhbGxl ck1vam8uamF2YQkocmV2aXNpb24gMCkNCisrKyBtMi1wbHVnaW5zL2dlcm9uaW1vLWFzc2VtYmx5 LXBsdWdpbi9zcmMvamF2YS9vcmcvYXBhY2hlL2dlcm9uaW1vL3BsdWdpbi9hc3NlbWJseS9Db25m aWdJbnN0YWxsZXJNb2pvLmphdmEJKHJldmlzaW9uIDApDQpAQCAtMCwwICsxLDI1MyBAQA0KKy8q KgorICoKKyAqIENvcHlyaWdodCAyMDA1IFRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbgor ICoKKyAqICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0 aGUgIkxpY2Vuc2UiKTsKKyAqICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBj b21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuCisgKiAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9m IHRoZSBMaWNlbnNlIGF0CisgKgorICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNl cy9MSUNFTlNFLTIuMAorICoKKyAqICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcg b3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlCisgKiAgZGlzdHJpYnV0ZWQgdW5kZXIg dGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKKyAqICBXSVRI T1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mg b3IgaW1wbGllZC4KKyAqICBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFn ZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCisgKiAgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExp Y2Vuc2UuCisgKi8KKworIAorcGFja2FnZSBvcmcuYXBhY2hlLmdlcm9uaW1vLnBsdWdpbi5hc3Nl bWJseTsKKworaW1wb3J0IG9yZy5hcGFjaGUuZ2Vyb25pbW8ua2VybmVsLmNvbmZpZy5JbnZhbGlk Q29uZmlnRXhjZXB0aW9uOworaW1wb3J0IG9yZy5hcGFjaGUuZ2Vyb25pbW8ua2VybmVsLmNvbmZp Zy5Ob1N1Y2hDb25maWdFeGNlcHRpb247CitpbXBvcnQgb3JnLmFwYWNoZS5nZXJvbmltby5rZXJu ZWwuY29uZmlnLkNvbmZpZ3VyYXRpb25EYXRhOworaW1wb3J0IG9yZy5hcGFjaGUuZ2Vyb25pbW8u a2VybmVsLnJlcG9zaXRvcnkuQXJ0aWZhY3Q7CitpbXBvcnQgb3JnLmFwYWNoZS5nZXJvbmltby5r ZXJuZWwucmVwb3NpdG9yeS5BcnRpZmFjdE1hbmFnZXI7CitpbXBvcnQgb3JnLmFwYWNoZS5nZXJv bmltby5rZXJuZWwucmVwb3NpdG9yeS5BcnRpZmFjdFJlc29sdmVyOworaW1wb3J0IG9yZy5hcGFj aGUuZ2Vyb25pbW8ua2VybmVsLnJlcG9zaXRvcnkuRGVmYXVsdEFydGlmYWN0TWFuYWdlcjsKK2lt cG9ydCBvcmcuYXBhY2hlLmdlcm9uaW1vLmtlcm5lbC5yZXBvc2l0b3J5LkVudmlyb25tZW50Owor aW1wb3J0IG9yZy5hcGFjaGUuZ2Vyb25pbW8ua2VybmVsLnJlcG9zaXRvcnkuRmlsZVdyaXRlTW9u aXRvcjsKK2ltcG9ydCBvcmcuYXBhY2hlLmdlcm9uaW1vLmtlcm5lbC5yZXBvc2l0b3J5Lk1pc3Np bmdEZXBlbmRlbmN5RXhjZXB0aW9uOworaW1wb3J0IG9yZy5hcGFjaGUuZ2Vyb25pbW8ua2VybmVs LnJlcG9zaXRvcnkuRGVwZW5kZW5jeTsKK2ltcG9ydCBvcmcuYXBhY2hlLmdlcm9uaW1vLmtlcm5l bC5yZXBvc2l0b3J5LldyaXRhYmxlTGlzdGFibGVSZXBvc2l0b3J5OworaW1wb3J0IG9yZy5hcGFj aGUuZ2Vyb25pbW8uc3lzdGVtLnJlcG9zaXRvcnkuTWF2ZW4yUmVwb3NpdG9yeTsKK2ltcG9ydCBv cmcuYXBhY2hlLmdlcm9uaW1vLnN5c3RlbS5jb25maWd1cmF0aW9uLlJlcG9zaXRvcnlDb25maWd1 cmF0aW9uU3RvcmU7CitpbXBvcnQgb3JnLmFwYWNoZS5nZXJvbmltby5zeXN0ZW0ucmVzb2x2ZXIu RXhwbGljaXREZWZhdWx0QXJ0aWZhY3RSZXNvbHZlcjsKK2ltcG9ydCBvcmcuYXBhY2hlLm1hdmVu LmFydGlmYWN0LnJlcG9zaXRvcnkuQXJ0aWZhY3RSZXBvc2l0b3J5OworaW1wb3J0IG9yZy5hcGFj aGUubWF2ZW4ucHJvamVjdC5NYXZlblByb2plY3Q7CitpbXBvcnQgb3JnLmFwYWNoZS5tYXZlbi5w bHVnaW4uTW9qb0V4ZWN1dGlvbkV4Y2VwdGlvbjsKKworaW1wb3J0IGphdmEuaW8uRmlsZTsKK2lt cG9ydCBqYXZhLmlvLkZpbGVJbnB1dFN0cmVhbTsKK2ltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9u OworaW1wb3J0IGphdmEuaW8uSW5wdXRTdHJlYW07CitpbXBvcnQgamF2YS51dGlsLkl0ZXJhdG9y OworaW1wb3J0IGphdmEudXRpbC5IYXNoU2V0OworaW1wb3J0IGphdmEudXRpbC5MaW5rZWRIYXNo U2V0OworaW1wb3J0IGphdmEudXRpbC5TZXQ7CitpbXBvcnQgamF2YS51dGlsLkNvbGxlY3Rpb25z OworCisvKioKKyAqIEBnb2FsIGluc3RhbGxDb25maWcKKyAqIAorICogQHZlcnNpb24gJFJldiQg JERhdGUkCisgKi8KK3B1YmxpYyBjbGFzcyBDb25maWdJbnN0YWxsZXJNb2pvIGV4dGVuZHMgQWJz dHJhY3RBc3NlbWJseU1vam8geworICAgIHB1YmxpYyBzdGF0aWMgZmluYWwgRmlsZVdyaXRlTW9u aXRvciBMT0dfQ09QWV9TVEFSVCA9IG5ldyBTdGFydEZpbGVXcml0ZU1vbml0b3IoKTsKKworICAg IC8qKgorICAgICAqIFRoZSBNYXZlbiBQcm9qZWN0LgorICAgICAqCisgICAgICogQHBhcmFtZXRl ciBleHByZXNzaW9uPSIke3Byb2plY3R9IgorICAgICAqIEByZXF1aXJlZAorICAgICAqIEByZWFk b25seQorICAgICAqLworICAgIHByb3RlY3RlZCBNYXZlblByb2plY3QgcHJvamVjdDsKKworCisg ICAgLyoqCisgICAgICogcm9vdCBmaWxlIG9mIHRoZSBUYXJnZXRSZXBvc2l0b3J5LgorICAgICAq IEBwYXJhbWV0ZXIgZXhwcmVzc2lvbj0iJHtwcm9qZWN0LmJ1aWxkLmRpcmVjdG9yeX0iCisgICAg ICovCisgICAgcHJpdmF0ZSBTdHJpbmcgdGFyZ2V0Um9vdDsKKworCisgICAgLyoqCisgICAgICog bG9jYXRpb24gb2YgdGhlIHRhcmdldCByZXBvc2l0b3J5IHJlbGF0aXZlIHRvIHRhcmdldFJvb3Qu CisgICAgICogQHBhcmFtZXRlciBkZWZhdWx0LXZhbHVlPSJhcmNoaXZlLXRtcC9yZXBvc2l0b3J5 IgorICAgICAqLworICAgIHByaXZhdGUgU3RyaW5nIHRhcmdldFJlcG9zaXRvcnk7CisKKyAgICAv KioKKyAgICAgKiBjb25maWd1cmF0aW9uIHRvIGJlIGluc3RhbGxlZCBzcGVjaWZpZWQgYXMgZ3Jv dXBJZC9hcnRpZmFjdElkL3ZlcnNpb24vdHlwZQorICAgICAqIGlmIG5vbmUgc3BlY2lmaWVkLCBw bHVnaW4gd2lsbCBpbnN0YWxsIGFsbCBkZXBlbmRlbmNpZXMgb2YgdHlwZSAiY2FyIgorICAgICAq IEBwYXJhbWV0ZXIKKyAgICAgKiBAb3B0aW9uYWwKKyAgICAgKi8KKyAgICBwcml2YXRlIFN0cmlu ZyBhcnRpZmFjdDsKKworICAgIC8qKgorICAgICAqIGxvY2F0aW9uIG9mIHRoZSBzb3VyY2UgcmVw b3NpdG9yeSBmb3IgdGhlIGRlcGVuZGVuY2llcworICAgICAqIEBwYXJhbWV0ZXIgZXhwcmVzc2lv bj0iJHtsb2NhbFJlcG9zaXRvcnl9IgorICAgICAqLworICAgIHByaXZhdGUgQXJ0aWZhY3RSZXBv c2l0b3J5IHNvdXJjZVJlcG9zaXRvcnk7CisKKyAgICAvKioKKyAgICAgKiBAcGFyYW1ldGVyIGV4 cHJlc3Npb249IiR7YmFzZWRpcn0vLi4vLi4vZXRjL2V4cGxpY2l0X3ZlcnNpb25zLnByb3BlcnRp ZXMiCisgICAgICovCisgICAgcHJpdmF0ZSBTdHJpbmcgZXhwbGljaXRSZXNvbHV0aW9uTG9jYXRp b247CisKKyAgICBwcml2YXRlIEFydGlmYWN0UmVzb2x2ZXIgYXJ0aWZhY3RSZXNvbHZlcjsKKwor ICAgIHByaXZhdGUgV3JpdGFibGVMaXN0YWJsZVJlcG9zaXRvcnkgdGFyZ2V0UmVwbzsKKyAgICBw cml2YXRlIFJlcG9zaXRvcnlDb25maWd1cmF0aW9uU3RvcmUgdGFyZ2V0U3RvcmU7CisKKyAgICBw cml2YXRlIFdyaXRhYmxlTGlzdGFibGVSZXBvc2l0b3J5IHNvdXJjZVJlcG87CisgICAgcHJpdmF0 ZSBSZXBvc2l0b3J5Q29uZmlndXJhdGlvblN0b3JlIHNvdXJjZVN0b3JlOworCisgICAgCisKKyAg ICBwdWJsaWMgdm9pZCBleGVjdXRlKCkgdGhyb3dzIE1vam9FeGVjdXRpb25FeGNlcHRpb24gewor ICAgICAgICBzb3VyY2VSZXBvID0gbmV3IE1hdmVuMlJlcG9zaXRvcnkobmV3IEZpbGUoc291cmNl UmVwb3NpdG9yeS5nZXRCYXNlZGlyKCkgKSk7CisgICAgICAgIHNvdXJjZVN0b3JlID0gbmV3IFJl cG9zaXRvcnlDb25maWd1cmF0aW9uU3RvcmUoc291cmNlUmVwbyk7CisKKyAgICAgICAgRmlsZSB0 YXJnZXRSZXBvRmlsZSA9IG5ldyBGaWxlKHRhcmdldFJvb3QsIHRhcmdldFJlcG9zaXRvcnkpOwor ICAgICAgICBpZiAoICAhdGFyZ2V0UmVwb0ZpbGUuZXhpc3RzKCkgKSB7CisgICAgICAgICAgICB0 YXJnZXRSZXBvRmlsZS5ta2RpcnMoKTsKKyAgICAgICAgfQorICAgICAgICB0YXJnZXRSZXBvID0g bmV3IE1hdmVuMlJlcG9zaXRvcnkodGFyZ2V0UmVwb0ZpbGUpOworICAgICAgICB0YXJnZXRTdG9y ZSA9IG5ldyBSZXBvc2l0b3J5Q29uZmlndXJhdGlvblN0b3JlKHRhcmdldFJlcG8pOworCisgICAg ICAgIEFydGlmYWN0IGNvbmZpZ0lkOworICAgICAgICB0cnkgeworICAgICAgICAgICAgQXJ0aWZh Y3RNYW5hZ2VyIGFydGlmYWN0TWFuYWdlciA9IG5ldyBEZWZhdWx0QXJ0aWZhY3RNYW5hZ2VyKCk7 CisgICAgICAgICAgICBhcnRpZmFjdFJlc29sdmVyID0gbmV3IEV4cGxpY2l0RGVmYXVsdEFydGlm YWN0UmVzb2x2ZXIoZXhwbGljaXRSZXNvbHV0aW9uTG9jYXRpb24sCisgICAgICAgICAgICAgICAg ICAgIGFydGlmYWN0TWFuYWdlciwgQ29sbGVjdGlvbnMuc2luZ2xldG9uKHNvdXJjZVJlcG8pLCBu dWxsKTsKKworICAgICAgICAgICAgaWYgKCBhcnRpZmFjdCAhPSBudWxsICkgeworICAgICAgICAg ICAgICAgIGNvbmZpZ0lkID0gQXJ0aWZhY3QuY3JlYXRlKGFydGlmYWN0KTsKKyAgICAgICAgICAg ICAgICBleGVjdXRlKGNvbmZpZ0lkKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2Ug eworICAgICAgICAgICAgICAgIGZvciAoIEl0ZXJhdG9yIGl0ciA9IGdldERlcGVuZGVuY2llcygp Lml0ZXJhdG9yKCk7IGl0ci5oYXNOZXh0KCk7ICkgeworICAgICAgICAgICAgICAgICAgICBvcmcu YXBhY2hlLm1hdmVuLmFydGlmYWN0LkFydGlmYWN0ICBtYXZlbkFydGlmYWN0ID0gKG9yZy5hcGFj aGUubWF2ZW4uYXJ0aWZhY3QuQXJ0aWZhY3QpIGl0ci5uZXh0KCk7CisgICAgICAgICAgICAgICAg ICAgIGlmICggImNhciIuZXF1YWxzKG1hdmVuQXJ0aWZhY3QuZ2V0VHlwZSgpKSApIHsKKyAgICAg ICAgICAgICAgICAgICAgICAgIGNvbmZpZ0lkID0gbmV3IEFydGlmYWN0KG1hdmVuQXJ0aWZhY3Qu Z2V0R3JvdXBJZCgpLCBtYXZlbkFydGlmYWN0LmdldEFydGlmYWN0SWQoKSwgbWF2ZW5BcnRpZmFj dC5nZXRWZXJzaW9uKCksICJjYXIiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV4ZWN1dGUo Y29uZmlnSWQpOworICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgfQorICAg ICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGNhdGNoIChFeGNlcHRpb24gZSkgeworICAg ICAgICAgICAgdGhyb3cgbmV3IE1vam9FeGVjdXRpb25FeGNlcHRpb24oIkNvbmZpZ3VyYXRpb24g aW5zdGFsbCBmYWlsZWQgIiwgZSApOworICAgICAgICB9CisgICAgfQorCisgICAgLyoqCisgICAg ICogUmV0cmlldmVzIGFsbCBhcnRpZmFjdCBkZXBlbmRlbmNpZXMuCisgICAgICoKKyAgICAgKiBA cmV0dXJuIEEgSGFzaFNldCBvZiBhcnRpZmFjdHMKKyAgICAgKi8KKyAgICBwcm90ZWN0ZWQgU2V0 IGdldERlcGVuZGVuY2llcygpCisgICAgeworICAgICAgICBTZXQgZGVwZW5kZW5jaWVzU2V0ID0g bmV3IEhhc2hTZXQoKTsKKworICAgICAgICBpZiAoIHByb2plY3QuZ2V0QXJ0aWZhY3QoKSAhPSBu dWxsICYmIHByb2plY3QuZ2V0QXJ0aWZhY3QoKS5nZXRGaWxlKCkgIT0gbnVsbCApCisgICAgICAg IHsKKyAgICAgICAgICAgIGRlcGVuZGVuY2llc1NldC5hZGQoIHByb2plY3QuZ2V0QXJ0aWZhY3Qo KSApOworICAgICAgICB9CisKKyAgICAgICAgU2V0IHByb2plY3RBcnRpZmFjdHMgPSBwcm9qZWN0 LmdldEFydGlmYWN0cygpOworICAgICAgICBpZiAoIHByb2plY3RBcnRpZmFjdHMgIT0gbnVsbCAp CisgICAgICAgIHsKKyAgICAgICAgICAgIGRlcGVuZGVuY2llc1NldC5hZGRBbGwoIHByb2plY3RB cnRpZmFjdHMgKTsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiBkZXBlbmRlbmNpZXNTZXQ7 CisgICAgfQorCisKKworICAgIHByaXZhdGUgdm9pZCBleGVjdXRlKEFydGlmYWN0IGNvbmZpZ0lk KSB0aHJvd3MgSU9FeGNlcHRpb24sIEludmFsaWRDb25maWdFeGNlcHRpb24sIE1pc3NpbmdEZXBl bmRlbmN5RXhjZXB0aW9uLCBOb1N1Y2hDb25maWdFeGNlcHRpb24geworCisgICAgICAgIExpbmtl ZEhhc2hTZXQgZGVwZW5kZW5jaWVzOworCisgICAgICAgIC8vIGRvZXMgdGhpcyBjb25maWd1cmF0 aW9uIGV4aXN0PworICAgICAgICBpZiAoIXNvdXJjZVJlcG8uY29udGFpbnMoY29uZmlnSWQpKSB7 CisgICAgICAgICAgICB0aHJvdyBuZXcgTm9TdWNoQ29uZmlnRXhjZXB0aW9uKGNvbmZpZ0lkKTsK KyAgICAgICAgfQorCisgICAgICAgIC8vIGlzIHRoaXMgY29uZmlnIGFscmVhZHkgaW5zdGFsbGVk PworICAgICAgICBpZiAodGFyZ2V0U3RvcmUuY29udGFpbnNDb25maWd1cmF0aW9uKGNvbmZpZ0lk KSkgeworICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJDb25maWd1cmF0aW9uICIgKyBj b25maWdJZCArICIgYWxyZWFkeSBwcmVzZW50IGluIGNvbmZpZ3VyYXRpb24gc3RvcmUiKTsKKyAg ICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChzb3VyY2VTdG9yZS5j b250YWluc0NvbmZpZ3VyYXRpb24oY29uZmlnSWQpKSB7CisgICAgICAgICAgICAvLyBDb3B5IHRo ZSBjb25maWd1cmF0aW9uIGludG8gdGhlIHRhcmdldCBjb25maWd1cmF0aW9uIHN0b3JlCisgICAg ICAgICAgICBpZiAoIXRhcmdldFN0b3JlLmNvbnRhaW5zQ29uZmlndXJhdGlvbihjb25maWdJZCkp IHsKKyAgICAgICAgICAgICAgICBGaWxlIHNvdXJjZUZpbGUgPSBzb3VyY2VSZXBvLmdldExvY2F0 aW9uKGNvbmZpZ0lkKTsKKyAgICAgICAgICAgICAgICBJbnB1dFN0cmVhbSBpbiA9IG5ldyBGaWxl SW5wdXRTdHJlYW0oc291cmNlRmlsZSk7CisgICAgICAgICAgICAgICAgdHJ5IHsKKyAgICAgICAg ICAgICAgICAgICAgdGFyZ2V0U3RvcmUuaW5zdGFsbChpbiwgKGludClzb3VyY2VGaWxlLmxlbmd0 aCgpLCBjb25maWdJZCwgTE9HX0NPUFlfU1RBUlQpOworICAgICAgICAgICAgICAgIH0gZmluYWxs eSB7CisgICAgICAgICAgICAgICAgICAgIGluLmNsb3NlKCk7CisgICAgICAgICAgICAgICAgfQor ICAgICAgICAgICAgfQorCisgICAgICAgICAgICAvLyBEZXRlcm1pbmUgdGhlIGRlcGVuZGVuY2ll cyBvZiB0aGlzIGNvbmZpZ3VyYXRpb24KKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAg ICAgQ29uZmlndXJhdGlvbkRhdGEgY29uZmlndXJhdGlvbkRhdGEgPSB0YXJnZXRTdG9yZS5sb2Fk Q29uZmlndXJhdGlvbihjb25maWdJZCk7CisgICAgICAgICAgICAgICAgRW52aXJvbm1lbnQgZW52 aXJvbm1lbnQgPSBjb25maWd1cmF0aW9uRGF0YS5nZXRFbnZpcm9ubWVudCgpOworICAgICAgICAg ICAgICAgIGRlcGVuZGVuY2llcyA9IG5ldyBMaW5rZWRIYXNoU2V0KCk7CisgICAgICAgICAgICAg ICAgZm9yIChJdGVyYXRvciBpdGVyYXRvciA9IGVudmlyb25tZW50LmdldERlcGVuZGVuY2llcygp Lml0ZXJhdG9yKCk7IGl0ZXJhdG9yLmhhc05leHQoKTspIHsKKyAgICAgICAgICAgICAgICAgICAg RGVwZW5kZW5jeSBkZXBlbmRlbmN5ID0gKERlcGVuZGVuY3kpIGl0ZXJhdG9yLm5leHQoKTsKKyAg ICAgICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzLmFkZChkZXBlbmRlbmN5LmdldEFydGlmYWN0 KCkpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJp bnRsbigiSW5zdGFsbGVkIGNvbmZpZ3VyYXRpb24gIiArIGNvbmZpZ0lkKTsKKyAgICAgICAgICAg IH0gY2F0Y2ggKElPRXhjZXB0aW9uIGUpIHsKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgSW52 YWxpZENvbmZpZ0V4Y2VwdGlvbigiVW5hYmxlIHRvIGxvYWQgY29uZmlndXJhdGlvbjogIiArIGNv bmZpZ0lkLCBlKTsKKyAgICAgICAgICAgIH0gY2F0Y2ggKE5vU3VjaENvbmZpZ0V4Y2VwdGlvbiBl KSB7CisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRDb25maWdFeGNlcHRpb24oIlVu YWJsZSB0byBsb2FkIGNvbmZpZ3VyYXRpb246ICIgKyBjb25maWdJZCwgZSk7CisgICAgICAgICAg ICB9CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBpZiAoIXNvdXJjZVJlcG8uY29udGFp bnMoY29uZmlnSWQpKSB7CisgICAgICAgICAgICAgICAgdGhyb3cgbmV3IFJ1bnRpbWVFeGNlcHRp b24oIkRlcGVuZGVuY3k6ICIgKyBjb25maWdJZCArICIgbm90IGZvdW5kIGluIGxvY2FsIG1hdmVu IHJlcG86IGZvciBjb25maWd1cmF0aW9uOiAiICsgYXJ0aWZhY3QpOworICAgICAgICAgICAgfQor CisgICAgICAgICAgICAvLyBDb3B5IHRoZSBhcnRpZmFjdCBpbnRvIHRoZSB0YXJnZXQgcmVwbwor ICAgICAgICAgICAgaWYgKCF0YXJnZXRSZXBvLmNvbnRhaW5zKGNvbmZpZ0lkKSkgeworICAgICAg ICAgICAgICAgIEZpbGUgc291cmNlRmlsZSA9IHNvdXJjZVJlcG8uZ2V0TG9jYXRpb24oY29uZmln SWQpOworICAgICAgICAgICAgICAgIElucHV0U3RyZWFtIGluID0gbmV3IEZpbGVJbnB1dFN0cmVh bShzb3VyY2VGaWxlKTsKKyAgICAgICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICAgICAg ICB0YXJnZXRSZXBvLmNvcHlUb1JlcG9zaXRvcnkoaW4sIChpbnQpc291cmNlRmlsZS5sZW5ndGgo KSwgY29uZmlnSWQsIExPR19DT1BZX1NUQVJUKTsKKyAgICAgICAgICAgICAgICB9IGZpbmFsbHkg eworICAgICAgICAgICAgICAgICAgICBpbi5jbG9zZSgpOworICAgICAgICAgICAgICAgIH0KKyAg ICAgICAgICAgIH0KKworICAgICAgICAgICAgLy8gRGV0ZXJtaW5lIHRoZSBkZXBlbmRlbmNpZXMg b2YgdGhpcyBhcnRpZmFjdAorICAgICAgICAgICAgZGVwZW5kZW5jaWVzID0gc291cmNlUmVwby5n ZXREZXBlbmRlbmNpZXMoY29uZmlnSWQpOworICAgICAgICB9CisgICAgICAgIGRlcGVuZGVuY2ll cyA9IGFydGlmYWN0UmVzb2x2ZXIucmVzb2x2ZUluQ2xhc3NMb2FkZXIoZGVwZW5kZW5jaWVzKTsK KyAgICAgICAgZm9yIChJdGVyYXRvciBpdGVyYXRvciA9IGRlcGVuZGVuY2llcy5pdGVyYXRvcigp OyBpdGVyYXRvci5oYXNOZXh0KCk7KSB7CisgICAgICAgICAgICBBcnRpZmFjdCBhcnRpZmFjdCA9 IChBcnRpZmFjdCkgaXRlcmF0b3IubmV4dCgpOworICAgICAgICAgICAgZXhlY3V0ZShhcnRpZmFj dCk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBwcml2YXRlIHN0YXRpYyBjbGFzcyBTdGFydEZp bGVXcml0ZU1vbml0b3IgaW1wbGVtZW50cyBGaWxlV3JpdGVNb25pdG9yIHsKKyAgICAgICAgcHVi bGljIHZvaWQgd3JpdGVTdGFydGVkKFN0cmluZyBmaWxlRGVzY3JpcHRpb24sIGludCBmaWxlU2l6 ZSkgeworICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJDb3B5aW5nICIgKyBmaWxlRGVz Y3JpcHRpb24pOworICAgICAgICB9CisKKyAgICAgICAgcHVibGljIHZvaWQgd3JpdGVQcm9ncmVz cyhpbnQgYnl0ZXMpIHsKKworICAgICAgICB9CisKKyAgICAgICAgcHVibGljIHZvaWQgd3JpdGVD b21wbGV0ZShpbnQgYnl0ZXMpIHsKKworICAgICAgICB9CisgICAgfQorfQoNClByb3BlcnR5IGNo YW5nZXMgb246IG0yLXBsdWdpbnNcZ2Vyb25pbW8tYXNzZW1ibHktcGx1Z2luXHNyY1xqYXZhXG9y Z1xhcGFjaGVcZ2Vyb25pbW9ccGx1Z2luXGFzc2VtYmx5XENvbmZpZ0luc3RhbGxlck1vam8uamF2 YQ0KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXw0KTmFtZTogc3ZuOm1pbWUtdHlwZQ0KICAgKyB0ZXh0L3BsYWluDQpOYW1l OiBzdm46a2V5d29yZHMNCiAgICsgRGF0ZSBSZXZpc2lvbg0KTmFtZTogc3ZuOmVvbC1zdHlsZQ0K ICAgKyBuYXRpdmUNCg0K ------=_Part_12834_11098129.1151344242726--