From thomasstokes@example.com Mon Dec 02 15:57:22 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 24029 invoked by uid 500); 2 Dec 2002 15:57:21 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 24009 invoked from network); 2 Dec 2002 15:57:20 -0000 content-class: urn:content-classes:message Subject: RE: [PATCH] Create ISO8859_1 String from char array MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-MimeOLE: Produced By Microsoft Exchange V6.0.6249.0 Date: Mon, 2 Dec 2002 17:58:42 +0200 Message-ID: <thomasstokes@example.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [PATCH] Create ISO8859_1 String from char array Thread-Index: AcKX+eVhdAOXAEZlTD2qZFCR9AXk0wCII5Kg From: "Pavel Ausianik" <thomasstokes@example.com> To: <thomasstokes@example.com> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Scott, Thank you and I agree that this could be useful for other apps as well. I also have found an xml parser (SAP XML toolkit), which is not compatible to setting an additional parameter (http://apache.org/xml/features/dom/defer-node-expansion) to DocumentBuilderFactory. It appears that setting attribute for the facory does not throw any error, but an attempt to create a DocumentBuilder throws ParserConfiurationException. It is a bug in the xml library, but it it makes latest soap not compatible to SAP XML toolkit. It may happen that hard coded comparison to xerces factory would be better. Best regards, Pavel -----Original Message----- From: Scott Nichol [mailto:thomasstokes@example.com]=20 Sent: Saturday, November 30, 2002 12:54 AM To: thomasstokes@example.com Subject: Re: [PATCH] Create ISO8859_1 String from char array Pavel, I committed this change, moving your getXXX function to StringUtils since it is generally useful. Scott Nichol ----- Original Message ----- From: "Pavel Ausianik" <thomasstokes@example.com> To: <thomasstokes@example.com> Sent: Friday, November 22, 2002 7:23 AM Subject: [PATCH] Create ISO8859_1 String from char array > Please find a patch proposed for converting HTTP headers using own > conversion instead of using JVM byte to char converter, as it happens not > to be efficient > Also I have concatenated several const Strings in StringBuffer.append > > Thanks, > Pavel > > ------------------------------------------------------------------------ -------- > -- > To unsubscribe, e-mail: <mailto:thomasstokes@example.com> > For additional commands, e-mail: <mailto:thomasstokes@example.com> -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Mon Dec 02 20:59:07 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 6212 invoked by uid 500); 2 Dec 2002 20:58:56 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 6200 invoked from network); 2 Dec 2002 20:58:55 -0000 content-class: urn:content-classes:message Subject: Use of Apache SOAP with Java Plugin MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Date: Mon, 2 Dec 2002 16:00:31 -0500 Message-ID: <C5C2928E548B4241B0092A0F48ECE71C081131@usmail2k2> X-MimeOLE: Produced By Microsoft Exchange V6.0.6249.0 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Use of Apache SOAP with Java Plugin Thread-Index: AcKaRbwyZPB/4vBqQZm6mJq59Bq7cg== From: "Kellogg, Richard" <thomasstokes@example.com> To: <thomasstokes@example.com> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Greetings! After much trouble shooting, I have successfully used the Apache SOAP = Toolkit under the Java Plugin 1.3.1_02. To do so, you need to add the = following to your client applet jar: activation.jar, soap.jar, mail.jar = and crimson.jar. Then you will need to sign your jar. The use of = crimson.jar should only be necessary under 1.3.x. Could someone please add the following to CVS: Within the SoapMappingRegistry.java file: Original source: try { Class XMISerializer =3D Class.forName("org.apache.soap.util.xml.XMISerializer"); Class XMIParameterSerializer =3D = Class.forName("org.apache.soap.encoding.xmi.XMIParameterSerializer"); // Register default serializers for XMI encoding style. mapTypes(Constants.NS_URI_XMI_ENC, null, null, (Serializer)XMISerializer.newInstance(), (Deserializer)XMIParameterSerializer.newInstance()); // Register serializer for Parameter class - not deserializer! mapTypes(Constants.NS_URI_XMI_ENC, null, Parameter.class, (Serializer)XMIParameterSerializer.newInstance(), null); } catch (IllegalAccessException iae) { } catch (InstantiationException ie) { } catch (ClassNotFoundException cnfe) { } catch (NoClassDefFoundError ncdfe) { // If the class can't be loaded, continue without it... } New source: try { Class XMISerializer =3D Class.forName("org.apache.soap.util.xml.XMISerializer"); Class XMIParameterSerializer =3D = Class.forName("org.apache.soap.encoding.xmi.XMIParameterSerializer"); // Register default serializers for XMI encoding style. mapTypes(Constants.NS_URI_XMI_ENC, null, null, (Serializer)XMISerializer.newInstance(), (Deserializer)XMIParameterSerializer.newInstance()); // Register serializer for Parameter class - not deserializer! mapTypes(Constants.NS_URI_XMI_ENC, null, Parameter.class, (Serializer)XMIParameterSerializer.newInstance(), null); } catch (IllegalAccessException iae) { } catch (InstantiationException ie) { } catch (ClassNotFoundException cnfe) { } catch (NoClassDefFoundError ncdfe) { + } catch (java.security.AccessControlException ace) { // If the class can't be loaded, continue without it... } You will see, I have caught the exception generated by the plugin when = it cannot find the XMISerializer class. Happy SOAPing! Rick Kellogg -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Mon Dec 02 21:27:00 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 29111 invoked by uid 500); 2 Dec 2002 21:27:00 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 14121 invoked from network); 2 Dec 2002 21:12:25 -0000 Message-ID: <014801c29a47$8371e430$0a00a8c0@boo> From: "Ted Leung" <thomasstokes@example.com> To: <thomasstokes@example.com> Cc: <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com> Subject: The organization of xml.apache.org Date: Mon, 2 Dec 2002 13:12:25 -0800 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="----=_NextPart_000_0145_01C29A04.75346570" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N ------=_NextPart_000_0145_01C29A04.75346570 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hello all, At ApacheCon I had a number of great discussions with people from all = over the ASF. One of the many topics of discussion was around the organization of the ASF. = I'm going to try to summarize the organization discussion below. It seems that there are 2 major issues: 1. The ASF has a legal responsibility for oversight of the ASF projects. = In order to provide=20 some degree of legal protection for committers, the ASF needs to = demonstrate that=20 it is providing effective oversight of the projects. Ultimately, this = responsibility rests with the=20 ASF board and is currently implemented via PMCs. However, within the = ASF there is wide=20 variation in the implementation of the PMC concept. In httpd there is a = PMC for a single code base and most of the committers are a part of the PMC. Contrast that = with XML and Jakarta where there is a single (umbrella/container) PMC for many code bases, = and a tiny fraction of=20 the committers are a part of the PMC. There has been a movement in the = ASF to move=20 projects out from under the umbrella PMC's and have them be their own = projects. Some people believe that this will improve the board's visibility into the projects, = others believe that this will create an unmanageable amount of work for the board. 2. The ASF is currently membership-based, non-profit corporation. The = legal liability protections=20 of the corporation apply to the members. In the event of a legal action = against one of the committers, the ASF would attempt to defend the committer, but the automatic = liability protection of the corpration would not apply. At the moment the best way to provide = protection to those working=20 on ASFprojects is via election to membership. There has been some = discussion that the ASF needs=20 to find a better way to provide legal protection for all contributors to = projects. So why am I sending this message? I feel that the level of oversight that is being provided for the = xml.apache.org projects is insufficient. The ASF does not have the visibility into the projects that it should = have, and the projects are not getting the help/guidance/whatever that they need from the ASF. = Something needs to be changed. There are a number of possible solutions -- not all of them are mutually = exclusive: 1. Help any xml.apache.org project that wishes to become a top-level = project to do so. Each=20 top-level project will then have its own PMC which will report directly = to the ASF board. 2. Expand the xml.apache.org PMC so that every project has a = representative 3. Alter the structure of xml.apache.org to have an "administrative" PMC = that takes care of legal type stuff, and a "technical" PMC that focuses more on techical issues and = oversight. 4. Some option that hasn't been thought of yet. So, let's have a discussion about how to improve the situation. I'd like = to hear people's opinions on the options that I presented above, as well as any other suggestions for = improvement. =20 Please express your opinions! Ted ------=_NextPart_000_0145_01C29A04.75346570 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META http-equiv=3DContent-Type content=3D"text/html; = charset=3Diso-8859-1"> <META content=3D"MSHTML 6.00.2800.1126" name=3DGENERATOR> <STYLE></STYLE> </HEAD> <BODY bgColor=3D#ffffff> <DIV><FONT face=3DArial size=3D2> <DIV><FONT face=3DArial size=3D2>Hello all,</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>At ApacheCon I had a number of great = discussions=20 with people from all over the ASF.&nbsp; One</FONT></DIV> <DIV><FONT face=3DArial size=3D2>of the many topics of&nbsp;discussion=20 was&nbsp;around the organization of the ASF.&nbsp; I'm going to try=20 to</FONT></DIV> <DIV>summarize the organization discussion below.</DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>It seems that&nbsp;there are 2 major=20 issues:</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>1. The ASF has a legal responsibility = for oversight=20 of the ASF projects.&nbsp; In order to provide </FONT></DIV> <DIV><FONT face=3DArial size=3D2>some </FONT>degree of = legal&nbsp;protection for=20 committers, the ASF&nbsp;needs to demonstrate that&nbsp;</DIV> <DIV>it is&nbsp;providing effective oversight of the=20 projects.&nbsp;&nbsp;Ultimately,<FONT face=3DArial size=3D2>&nbsp;this=20 responsibility </FONT><FONT face=3DArial size=3D2>rests with the = </FONT></DIV> <DIV><FONT face=3DArial size=3D2>ASF board and is currently implemented = via=20 PMCs.&nbsp; </FONT><FONT face=3DArial size=3D2>However, within the ASF = </FONT><FONT=20 face=3DArial size=3D2>there is wide </FONT></DIV> <DIV><FONT face=3DArial size=3D2>variation in the implementation of the = PMC=20 concept.&nbsp; In httpd&nbsp;</FONT><FONT face=3DArial size=3D2>there is = a PMC for a=20 single code</FONT></DIV> <DIV><FONT face=3DArial size=3D2>base and most of the committers are a = part of the=20 PMC.&nbsp;&nbsp; Contrast that with XML and Jakarta</FONT></DIV> <DIV><FONT face=3DArial size=3D2>where there is a single=20 (umbrella/container)&nbsp;PMC for many code bases, and a tiny fraction = of=20 </FONT></DIV> <DIV><FONT face=3DArial size=3D2>the committers are a </FONT><FONT = face=3DArial=20 size=3D2>part of the PMC.&nbsp;&nbsp; There has been a movement in the = ASF to move=20 </FONT></DIV> <DIV><FONT face=3DArial size=3D2>projects out from under the umbrella = PMC's and have=20 them be their own projects.&nbsp; Some people</FONT></DIV> <DIV><FONT face=3DArial size=3D2>believe that this will improve the = board's=20 visibility into the projects, others believe that this will</FONT></DIV> <DIV><FONT face=3DArial size=3D2>create an unmanageable amount of work = for the=20 board.</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>2. The ASF is&nbsp;currently = membership-based,=20 non-profit corporation.&nbsp; The legal liability protections = </FONT></DIV> <DIV><FONT face=3DArial size=3D2>of the </FONT><FONT face=3DArial = size=3D2>corporation=20 apply to the members.&nbsp; In the event of a legal action against one = of the=20 committers,</FONT></DIV> <DIV><FONT face=3DArial size=3D2>the ASF would attempt to defend the = committer, but=20 the automatic liability protection of</FONT></DIV> <DIV><FONT face=3DArial size=3D2>the corpration would not = apply.&nbsp;&nbsp; At the=20 moment the best way to provide protection </FONT><FONT face=3DArial = size=3D2>to=20 those </FONT><FONT face=3DArial size=3D2>working </FONT></DIV> <DIV><FONT face=3DArial size=3D2>on ASFprojects is via election to = membership.&nbsp;=20 There has been some discussion </FONT><FONT face=3DArial size=3D2>that = the ASF needs=20 </FONT></DIV> <DIV><FONT face=3DArial size=3D2>to find a better way to provide legal = protection=20 for all contributors to </FONT><FONT face=3DArial = size=3D2>projects.</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>So why am I sending this = message?</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>I feel that the level of oversight that = is being=20 provided for the xml.apache.org projects is insufficient.</FONT></DIV> <DIV><FONT face=3DArial size=3D2>The ASF does not have the visibility = into the=20 projects that it should have, and the projects are not</FONT></DIV> <DIV><FONT face=3DArial size=3D2>getting the help/guidance/whatever that = they need=20 from the ASF.&nbsp; Something needs to be changed.</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>There are a number of possible = solutions -- not all=20 of them are mutually exclusive:</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>1. Help any xml.apache.org project that = wishes to=20 become a top-level project to do so.&nbsp; Each </FONT></DIV> <DIV><FONT face=3DArial size=3D2>top-level project will then have its = own PMC which=20 will report directly to the ASF board.</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>2. Expand the xml.apache.org PMC so = that every=20 project has a representative</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>3. Alter the structure of = xml.apache.org to=20 have&nbsp;an "administrative"&nbsp;PMC that takes care of legal=20 type</FONT></DIV> <DIV><FONT face=3DArial size=3D2>stuff, and a "technical" PMC that = focuses more on=20 techical issues and oversight.</FONT></DIV> <DIV><FONT face=3DArial size=3D2></FONT>&nbsp;</DIV> <DIV><FONT face=3DArial size=3D2>4. Some option that hasn't been thought = of=20 yet.</FONT></DIV> <DIV>&nbsp;</DIV> <DIV>So, let's have a discussion about how to improve the situation. I'd = like to=20 hear people's opinions on the</DIV> <DIV>options that I presented above, as well as any other suggestions = for=20 improvement.&nbsp;&nbsp; </DIV> <DIV>&nbsp;</DIV> <DIV>Please express your opinions!</DIV> <DIV>&nbsp;</DIV> <DIV>Ted</DIV></FONT></DIV></BODY></HTML> ------=_NextPart_000_0145_01C29A04.75346570-- From thomasstokes@example.com Tue Dec 03 00:41:52 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 46125 invoked by uid 500); 3 Dec 2002 00:41:42 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 45894 invoked from network); 3 Dec 2002 00:41:38 -0000 Message-ID: <thomasstokes@example.com> Date: Mon, 02 Dec 2002 19:41:35 -0500 From: Sam Ruby <thomasstokes@example.com> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.1) Gecko/20020826 X-Accept-Language: en-us, en MIME-Version: 1.0 To: thomasstokes@example.com CC: thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com Subject: Re: The organization of xml.apache.org References: <014801c29a47$8371e430$0a00a8c0@boo> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Ted Leung wrote: > > 4. Some option that hasn't been thought of yet. Based initially on the reorg discussions, and then a number of F2F discussions at ApacheCon, I am planning on proposing something radical within Jakarta, but it applies equally well here. I provided some foreshadowing for this proposal in an e-mail to thomasstokes@example.com, with the subject of "Convergence, vetoes, forks, and projects". Specifically, I said: > Separate code bases with separate communities should be separate > projects. Independent of the size of the codebase, if the size of > the community is only a few people, then it is not an ASF project. > Such efforts can be pursued outside of the ASF, be pursued inside the > Incubator, or be incorporated inside an existing community – as long > as all participants in that larger community are treated as peers. With respect to XML, I honestly don't know how many communities we have. But the above provides a recipe to find out. Without changing any physical layout of mailing lists or cvs repositories, we can begin to phase out the karma and voting boundaries between various subprojects. Those that don't wish to participate will be encouraged to form their own separate projects (or move into incubation). What I like most about such a proposal is that it is completely up to the commiters to decide whether they want opt in or opt out. What do others think? - Sam Ruby -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 02:22:40 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 6328 invoked by uid 500); 3 Dec 2002 02:22:39 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 61210 invoked from network); 3 Dec 2002 01:02:53 -0000 Message-ID: <thomasstokes@example.com> Date: Tue, 03 Dec 2002 02:03:00 +0100 From: Steven Noels <thomasstokes@example.com> Organization: Outerthought User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.2) Gecko/20021126 X-Accept-Language: en MIME-Version: 1.0 To: thomasstokes@example.com Cc: thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com Subject: Re: The organization of xml.apache.org References: <014801c29a47$8371e430$0a00a8c0@boo> <thomasstokes@example.com> In-Reply-To: <thomasstokes@example.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N [suggestion to hold this discussion only on thomasstokes@example.com from now?] Sam Ruby wrote: > > Separate code bases with separate communities should be separate > > projects. Independent of the size of the codebase, if the size of > > the community is only a few people, then it is not an ASF project. > > Such efforts can be pursued outside of the ASF, be pursued inside the > > Incubator, or be incorporated inside an existing community – as long > > as all participants in that larger community are treated as peers. Please define 'a few': bash-2.04$ cat /home/cvs/CVSROOT/avail | grep fop avail|coar,dirkx,stefano,twl,andyh,sboag,jtauber,andyc,rpfeiffe,mpogue,mdierken,kvisco,eduardop,abagchi,rahulj,rwebster,roddey,dleslie,mmidy,sanjiva,dmarston,pauldick,curcuru,dbertoni,jdonohue,robweir,balld,ricardo,zvia,gmarcy,arkin,duncan,aruna1,rajiv,fotis,eschaeffer,arved,gears,jordan,keiron,stanislav,klease,kellyc,artw,tore,bdelacretaz,chrisg,pbwest,pietsch,jeremias,olegt,vmote|xml-fop,xml-site,xml-commons bash-2.04$ cat /home/cvs/CVSROOT/avail | grep xang avail|coar,dirkx,mode,stefano,twl,andyh,sboag,jtauber,andyc,rpfeiffe,mpogue,mdierken,kvisco,eduardop,abagchi,rahulj,rwebster,roddey,dleslie,mmidy,sanjiva,dmarston,pauldick,curcuru,dbertoni,jdonohue,robweir,balld,ricardo,zvia,gmarcy,arkin,duncan,aruna1,rajiv,lehors,jeffreyr,rubys,ben,hbed,duftler,jkesselm,auriemma,jacek,martinf,costin,garyp,johng,tmiller,amiro,morten,ovidiu,jambroziak,santiagopg,ilene,zongaro,mkwan|xml-site,xml-xalan,xml-stylebook,xml-xang,xml-admin,xml-commons From the result of this, one could possibly say FOP has less community then Xang, but we all knew the opposite is quite true. > With respect to XML, I honestly don't know how many communities we have. > But the above provides a recipe to find out. Without changing any > physical layout of mailing lists or cvs repositories, we can begin to > phase out the karma and voting boundaries between various subprojects. > Those that don't wish to participate will be encouraged to form their > own separate projects (or move into incubation). I agree that breaking the barriers between subprojects, especially concerning voting (not so sure about karma), is an interesting Darwinistic and community exercise, but if we do so, we should do it based on some well-defined criteria. Concerning commit rights, I still believe that commit rights should be earned within the community that grows a certain subproject however. That is, when a 'project' in your scenario would be something like cocoon.a.o, and a 'subproject' of that being Forrest. > What I like most about such a proposal is that it is completely up to > the commiters to decide whether they want opt in or opt out. I would say 'make use of their rights or not' instead of 'opt in/out'. > What do others think? I'm still trying to understand what you are aiming at ;-) </Steven> -- Steven Noels http://outerthought.org/ Outerthought - Open Source, Java & XML Competence Support Center Read my weblog at http://radio.weblogs.com/0103539/ thomasstokes@example.com thomasstokes@example.com -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 02:26:23 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 12738 invoked by uid 500); 3 Dec 2002 02:26:23 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 67331 invoked from network); 3 Dec 2002 01:09:08 -0000 Message-ID: <thomasstokes@example.com> Date: Mon, 02 Dec 2002 20:06:20 -0500 From: "Andrew C. Oliver" <thomasstokes@example.com> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.2b) Gecko/20021016 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Sam Ruby <thomasstokes@example.com> CC: thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com Subject: Re: The organization of xml.apache.org References: <014801c29a47$8371e430$0a00a8c0@boo> <thomasstokes@example.com> In-Reply-To: <014801c29a47$8371e430$0a00a8c0@boo> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N > > What I like most about such a proposal is that it is completely up to > the commiters to decide whether they want opt in or opt out. > > What do others think? It continues to sound reasonable to me, but I'd personally like to see the Jakarta "brand" continue. Not sure how to *do* that... I don't think the same applies to XML. Note that I asked like the tapestry guys "want to be top level" and it was "well no one will find us there, we want Jakarta"... They're probably right quite honestly. Half the people I know barely know there is an XML.apache.org... -Andy > > - Sam Ruby > > > --------------------------------------------------------------------- > In case of troubles, e-mail: thomasstokes@example.com > To unsubscribe, e-mail: thomasstokes@example.com > For additional commands, e-mail: thomasstokes@example.com > > -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 08:24:36 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 85507 invoked by uid 500); 3 Dec 2002 08:24:34 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 85496 invoked from network); 3 Dec 2002 08:24:33 -0000 Message-ID: <C59B57F38112D311A47A0008C7F33BA102AA8692@TAMFS11> From: Leif Nilsson TACMa <thomasstokes@example.com> To: "'thomasstokes@example.com'" <thomasstokes@example.com> Subject: Again: Attachments through COMProvider Date: Tue, 3 Dec 2002 09:24:28 +0100 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: multipart/mixed; boundary="----_=_NextPart_000_01C29AA5.6578EBA0" X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N ------_=_NextPart_000_01C29AA5.6578EBA0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi! Since no one seems to object I suggest this change to be added. /Leif > -----Original Message----- > From: Leif Nilsson TACMa =20 > Sent: Monday, October 28, 2002 19:10 > To: 'thomasstokes@example.com' > Subject: Attachments through COMProvider >=20 > Hi! >=20 > We send XML-files through Apache Soap. > There is a COM-server accessed via Apaches COMProvider. > The best way to send files as discussed is through attachments. > The only way I have figured out to do this via the ComProvider is to = alter > the > org.apache.soap.providers.com.RPCProvider.java code. >=20 > I'm sure there is a better way but I will explain what I have done. > I have added an option for the COmProvider DeploymentDescriptor > (attachString), which if present and set to true will cause > Strings returned from COM-servers to be packaged in a DataHandler = object > using UTF-8 coding.=20 >=20 > Any suggestions for how to do this better / cleaner ?=20 > Cf. attached java code. > <<Original RPCProvider.java>> <<RPCProvider.java>>=20 >=20 > Leif Nilsson > Software Engineer >=20 > TAC AB > J=E4gershillgatan 18 > SE-213 75 Malm=F6, Sweden > Direct +1-415-678-4794 > Fax +1-415-678-4794 > Mobile +1-415-678-4794 > www.tac-global.com >=20 > This email is intended only for the use of the individual or entity = to > whom it is addressed. It may contain information that is privileged, > confidential or otherwise protected from disclosure under applicable = law. > If you have received this transmission in error, please delete it > immediately and notify me by mailing me. >=20 >=20 ------_=_NextPart_000_01C29AA5.6578EBA0 Content-Type: application/octet-stream; name="Original RPCProvider.java" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="Original RPCProvider.java" LyoNCiAqIFRoZSBBcGFjaGUgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjENCiAqDQogKg0K ICogQ29weXJpZ2h0IChjKSAyMDAxIFRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbi4gIEFs bCByaWdodHMNCiAqIHJlc2VydmVkLg0KICoNCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dA0KICogbW9kaWZpY2F0aW9u LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zDQog KiBhcmUgbWV0Og0KICoNCiAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0 IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQogKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQogKg0KICogMi4gUmVkaXN0 cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln aHQNCiAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp bmcgZGlzY2xhaW1lciBpbg0KICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQ0KICogICAgZGlzdHJpYnV0aW9uLg0KICoNCiAqIDMu IFRoZSBlbmQtdXNlciBkb2N1bWVudGF0aW9uIGluY2x1ZGVkIHdpdGggdGhlIHJlZGlzdHJpYnV0 aW9uLA0KICogICAgaWYgYW55LCBtdXN0IGluY2x1ZGUgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRn bWVudDoNCiAqICAgICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVk IGJ5IHRoZQ0KICogICAgICAgIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIChodHRwOi8vd3d3 LmFwYWNoZS5vcmcvKS4iDQogKiAgICBBbHRlcm5hdGVseSwgdGhpcyBhY2tub3dsZWRnbWVudCBt YXkgYXBwZWFyIGluIHRoZSBzb2Z0d2FyZSBpdHNlbGYsDQogKiAgICBpZiBhbmQgd2hlcmV2ZXIg c3VjaCB0aGlyZC1wYXJ0eSBhY2tub3dsZWRnbWVudHMgbm9ybWFsbHkgYXBwZWFyLg0KICoNCiAq IDQuIFRoZSBuYW1lcyAiU09BUCIgYW5kICJBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbiIgbXVz dA0KICogICAgbm90IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2 ZWQgZnJvbSB0aGlzDQogKiAgICBzb2Z0d2FyZSB3aXRob3V0IHByaW9yIHdyaXR0ZW4gcGVybWlz c2lvbi4gRm9yIHdyaXR0ZW4NCiAqICAgIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0IGFwYWNo ZUBhcGFjaGUub3JnLg0KICoNCiAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3 YXJlIG1heSBub3QgYmUgY2FsbGVkICJBcGFjaGUiLA0KICogICAgbm9yIG1heSAiQXBhY2hlIiBh cHBlYXIgaW4gdGhlaXIgbmFtZSwgd2l0aG91dCBwcmlvciB3cml0dGVuDQogKiAgICBwZXJtaXNz aW9uIG9mIHRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbi4NCiAqDQogKiBUSElTIFNPRlRX QVJFIElTIFBST1ZJREVEIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1NFRCBPUiBJTVBMSUVEDQog KiBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQg V0FSUkFOVElFUw0KICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRSBBUkUNCiAqIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg QVBBQ0hFIFNPRlRXQVJFIEZPVU5EQVRJT04gT1INCiAqIElUUyBDT05UUklCVVRPUlMgQkUgTElB QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwNCiAqIFNQRUNJQUwsIEVY RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QNCiAq IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7 IExPU1MgT0YNCiAqIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQNCiAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLA0KICogT1IgVE9SVCAoSU5DTFVE SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUDQogKiBP RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC SUxJVFkgT0YNCiAqIFNVQ0ggREFNQUdFLg0KICogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiAqDQogKiBUaGlzIHNv ZnR3YXJlIGNvbnNpc3RzIG9mIHZvbHVudGFyeSBjb250cmlidXRpb25zIG1hZGUgYnkgbWFueQ0K ICogaW5kaXZpZHVhbHMgb24gYmVoYWxmIG9mIHRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlv biBhbmQgd2FzDQogKiBvcmlnaW5hbGx5IGJhc2VkIG9uIHNvZnR3YXJlIGNvcHlyaWdodCAoYykg MjAwMSwgSW50ZXJuYXRpb25hbA0KICogQnVzaW5lc3MgTWFjaGluZXMsIEluYy4sIGh0dHA6Ly93 d3cuYXBhY2hlLm9yZy4gIEZvciBtb3JlDQogKiBpbmZvcm1hdGlvbiBvbiB0aGUgQXBhY2hlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIHBsZWFzZSBzZWUNCiAqIDxodHRwOi8vd3d3LmFwYWNoZS5vcmcv Pi4NCiAqLw0KcGFja2FnZSBvcmcuYXBhY2hlLnNvYXAucHJvdmlkZXJzLmNvbTsNCg0KaW1wb3J0 IGphdmEuaW8uKiA7DQppbXBvcnQgamF2YS51dGlsLiogOw0KaW1wb3J0IGphdmEudGV4dC5NZXNz YWdlRm9ybWF0Ow0KaW1wb3J0IGphdmF4LnNlcnZsZXQuKiA7DQppbXBvcnQgamF2YXguc2Vydmxl dC5odHRwLiogOw0KaW1wb3J0IG9yZy5hcGFjaGUuc29hcC4qIDsNCmltcG9ydCBvcmcuYXBhY2hl LnNvYXAucnBjLiogOw0KaW1wb3J0IG9yZy5hcGFjaGUuc29hcC5zZXJ2ZXIuKiA7DQppbXBvcnQg b3JnLmFwYWNoZS5zb2FwLnV0aWwuKiA7DQppbXBvcnQgamF2YS5sYW5nLk1hdGg7DQoNCnB1Ymxp YyBjbGFzcyBSUENQcm92aWRlciBpbXBsZW1lbnRzIFByb3ZpZGVyDQp7DQogIHByaXZhdGUgRGVw bG95bWVudERlc2NyaXB0b3IgZGQgOw0KICBwcml2YXRlIEVudmVsb3BlICAgICAgICAgICAgIGVu dmVsb3BlIDsNCiAgcHJpdmF0ZSBDYWxsICAgICAgICAgICAgICAgICBjYWxsIDsNCiAgcHJpdmF0 ZSBTdHJpbmcgICAgICAgICAgICAgICBtZXRob2ROYW1lIDsNCiAgcHJpdmF0ZSBTdHJpbmcgICAg ICAgICAgICAgICB0YXJnZXRPYmplY3RVUkkgOw0KICBwcml2YXRlIEh0dHBTZXJ2bGV0ICAgICAg ICAgIHNlcnZsZXQgOw0KICBwcml2YXRlIEh0dHBTZXNzaW9uICAgICAgICAgIHNlc3Npb24gOw0K ICBwcml2YXRlIGJ5dGVbXSB2cD0gbnVsbDsNCiAgcHJpdmF0ZSBTdHJpbmcgcHJvZ2lkPSBudWxs Ow0KICBwcml2YXRlIFNlcnZsZXRDb250ZXh0IHNjPSBudWxsOw0KICBwcml2YXRlIFN0cmluZyB0 aHJlYWRpbmdNb2RlbD0gbnVsbDsNCiAgcHJpdmF0ZSBzdGF0aWMgYm9vbGVhbiBpbml0TG9nPSBm YWxzZTsNCg0KICBwdWJsaWMgdm9pZCBsb2NhdGUoIERlcGxveW1lbnREZXNjcmlwdG9yIGRkLA0K ICAgICAgICAgICAgICAgICAgICAgIEVudmVsb3BlIGVudiwNCiAgICAgICAgICAgICAgICAgICAg ICBDYWxsIGNhbGwsDQogICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIG1ldGhvZE5hbWUsDQog ICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIHRhcmdldE9iamVjdFVSSSwNCiAgICAgICAgICAg ICAgICAgICAgICBTT0FQQ29udGV4dCByZXFDb250ZXh0KQ0KICAgICAgdGhyb3dzIFNPQVBFeGNl cHRpb24NCiAgew0KICAgIEh0dHBTZXJ2bGV0IHNlcnZsZXQgPSAoSHR0cFNlcnZsZXQpIHJlcUNv bnRleHQuZ2V0UHJvcGVydHkoIENvbnN0YW50cy5CQUdfSFRUUFNFUlZMRVQgKTsNCiAgICBIdHRw U2Vzc2lvbiBzZXNzaW9uID0gKEh0dHBTZXNzaW9uKSByZXFDb250ZXh0LmdldFByb3BlcnR5KCBD b25zdGFudHMuQkFHX0hUVFBTRVNTSU9OICk7DQogICAgLy8gc2M9IHNlcnZsZXQuZ2V0U2Vydmxl dENvbmZpZygpLmdldFNlcnZsZXRDb250ZXh0KCk7DQogICAgaWYoIWluaXRMb2cpDQogICAgew0K ICAgICAgTG9nLmluaXQoc2VydmxldCk7DQogICAgICBpbml0bG9nKExvZy5nZXRMZXZlbCgpKTsN CiAgICAgIGluaXRMb2c9dHJ1ZTsNCiAgICB9DQoNCiAgICBMb2cubXNnKExvZy5TVUNDRVNTLCAi bXNnLmNvbXByb3ZpZGVyLmlubG9jYXRlIiwgZ2V0Q2xhc3MoKS5nZXROYW1lKCksIHRhcmdldE9i amVjdFVSSSwgbWV0aG9kTmFtZSApOw0KICAgIGlmKCBudWxsICE9IGRsbExvYWRFeGNlcHRpb24p DQogICAgew0KICAgICAgTG9nLm1zZyhMb2cuRVJST1IsICJtc2cuY29tcHJvdmlkZXIuZGxsZmFp bCIsIGRsbExvYWRFeGNlcHRpb24gKTsNCiAgICAgIHRocm93IGRsbExvYWRFeGNlcHRpb247DQog ICAgIH0NCg0KICAgIC8vVGhpcyB2YWxpZGF0ZXMgdGhhdCB0aGUgbWV0aG9kIG5hbWUgaXMgbGlz dGVkIGluIHRoZSBkZXBsb3ltZW50IGRlc2NyaXB0b3IuDQogICAgaWYgKCFNZXNzYWdlUm91dGVy LnZhbGlkTWVzc2FnZSAoZGQsIG1ldGhvZE5hbWUpKSB7DQogICAgICBTdHJpbmcgbXNnPQ0KICAg ICAgTG9nLm1zZyhMb2cuRVJST1IsICJtc2cuY29tcHJvdmlkZXIuYmFkTWV0aG9kIiwgdGFyZ2V0 T2JqZWN0VVJJLCBtZXRob2ROYW1lKTsNCiAgICAgICAgdGhyb3cgbmV3IFNPQVBFeGNlcHRpb24g KENvbnN0YW50cy5GQVVMVF9DT0RFX1NFUlZFUiwgbXNnKTsNCiAgICAgIH0NCg0KICAgIFZlY3Rv ciBwYXJtcz0gY2FsbC5nZXRQYXJhbXMoKTsNCiAgICBpbnQgbm9QYXJtcz0gMDsNCiAgICBpZihw YXJtcyAhPSBudWxsKQ0KICAgIHsNCiAgICAgIHZwPSBuZXcgYnl0ZVtzaXplT2ZWYXJpYW50ICAq IHBhcm1zLnNpemUoKV07DQogICAgICBub1Bhcm1zPSBwYXJtcy5zaXplKCk7DQogICAgfQ0KDQog ICAgZm9yKGludCBpPTA7IGkgPCBub1Bhcm1zOyArK2kpDQogICAgew0KICAgICBMb2cubXNnKExv Zy5JTkZPUk1BVElPTiwgIm1zZy5jb21wcm92aWRlci5pbmZvLnBhcm1zIiwgbmV3IEludGVnZXIo aSksIHBhcm1zLmVsZW1lbnRBdChpKS5nZXRDbGFzcygpLmdldE5hbWUoKSwgcGFybXMuZWxlbWVu dEF0KGkpLnRvU3RyaW5nKCkpOw0KICAgICAvL1llcy4gUHJhbWV0ZXJzIGFyZSByZXZlcnNlZCBo ZXJlLg0KICAgICBvYmplY3RUb1ZhcmlhbnQoICgoUGFyYW1ldGVyKShwYXJtcy5lbGVtZW50QXQo bm9QYXJtcyAtIGkgLTEpKSkuZ2V0VmFsdWUoKSwgdnAsIGkgKiBzaXplT2ZWYXJpYW50KTsNCiAg ICB9DQoNCiAgICBIYXNodGFibGUgICAgcHJvcHMgPSBkZC5nZXRQcm9wcygpOw0KDQogICAgcHJv Z2lkPSAgKFN0cmluZykgcHJvcHMuZ2V0KCJwcm9naWQiKTsNCiAgICBpZihudWxsPT0gcHJvZ2lk KQ0KICAgIHsNCiAgICAgaWYodGFyZ2V0T2JqZWN0VVJJLnN0YXJ0c1dpdGgoInVybjoiKSkNCiAg ICAgew0KICAgICAgIHByb2dpZD0gdGFyZ2V0T2JqZWN0VVJJLnN1YnN0cmluZyg0KTsNCiAgICAg fQ0KICAgICBlbHNlDQogICAgICAgcHJvZ2lkPSB0YXJnZXRPYmplY3RVUkk7DQogICAgfQ0KDQog ICAgdGhyZWFkaW5nTW9kZWw9ICAoU3RyaW5nKSBwcm9wcy5nZXQoInRocmVhZG1vZGVsIik7DQog ICAgaWYoIG51bGwgPT0gdGhyZWFkaW5nTW9kZWwpIHRocmVhZGluZ01vZGVsPSAiTVVMVElUSFJF QURFRCI7DQogICAgTG9nLm1zZyhMb2cuSU5GT1JNQVRJT04sICJtc2cuY29tcHJvdmlkZXIuaW5m by5jb21pbmYiLCBwcm9naWQsIHRocmVhZGluZ01vZGVsICk7DQoNCiAgICB0aGlzLmRkICAgICAg ICAgICAgICA9IGRkIDsNCiAgICB0aGlzLmVudmVsb3BlICAgICAgICA9IGVudiA7DQogICAgdGhp cy5jYWxsICAgICAgICAgICAgPSBjYWxsIDsNCiAgICB0aGlzLm1ldGhvZE5hbWUgICAgICA9IG1l dGhvZE5hbWUgOw0KICAgIHRoaXMudGFyZ2V0T2JqZWN0VVJJID0gdGFyZ2V0T2JqZWN0VVJJIDsN CiAgICB0aGlzLnNlcnZsZXQgICAgICAgICA9IHNlcnZsZXQgOw0KICAgIHRoaXMuc2Vzc2lvbiAg ICAgICAgID0gc2Vzc2lvbiA7DQoNCg0KICAgIC8vIEFkZCBsb2dpYyB0byBsb2NhdGUvbG9hZCB0 aGUgc2VydmljZSBoZXJlDQogIH0gLy9FbmRvZiBvZiBsb2NhdGUNCg0KDQogIHB1YmxpYyB2b2lk IGludm9rZShTT0FQQ29udGV4dCByZXFDb250ZXh0LCBTT0FQQ29udGV4dCByZXNDb250ZXh0KQ0K ICAgICAgICAgICAgICAgICAgICAgIHRocm93cyBTT0FQRXhjZXB0aW9uDQogIHsNCiAgICBpZigg bnVsbCAhPSBkbGxMb2FkRXhjZXB0aW9uKQ0KICAgIHsNCiAgICAgIExvZy5tc2coTG9nLkVSUk9S LCAibXNnLmNvbXByb3ZpZGVyLmRsbGZhaWwiLCBkbGxMb2FkRXhjZXB0aW9uICk7DQogICAgICB0 aHJvdyBkbGxMb2FkRXhjZXB0aW9uOw0KICAgICB9DQogICAgIGlmKCBudWxsID09IHByb2dpZCkN CiAgICAgew0KICAgICAgIFN0cmluZyBtc2c9IExvZy5tc2coTG9nLkVSUk9SLCAibXNnLmNvbXBy b3ZpZGVyLmVycm9yLm51bGxwcm9nIiwgbWV0aG9kTmFtZSwgdGFyZ2V0T2JqZWN0VVJJKTsNCiAg ICAgICB0aHJvdyBuZXcgU09BUEV4Y2VwdGlvbiggQ29uc3RhbnRzLkZBVUxUX0NPREVfU0VSVkVS LCBtc2cpOw0KICAgICB9DQogICAgIGlmKCBudWxsID09IG1ldGhvZE5hbWUpDQogICAgIHsNCiAg ICAgICBTdHJpbmcgbXNnPSBMb2cubXNnKExvZy5FUlJPUiwgIm1zZy5jb21wcm92aWRlci5lcnJv ci5udWxsbW5hbWUiLCB0YXJnZXRPYmplY3RVUkkpOw0KICAgICAgIHRocm93IG5ldyBTT0FQRXhj ZXB0aW9uKCBDb25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsIG1zZyk7DQogICAgIH0NCg0KDQoN CiAgICAvLyBJZiB5b3Ugd2FudCB0aGUgY2xpZW50IHRvIHVzZSBhIG5ldyB0YXJnZXRPYmplY3RV UkkgZm9yIHN1YnNlcXVlbmNlDQogICAgLy8gY2FsbHMgcGxhY2UgaXQgaGVyZSAodGFyZ2V0T2Jq ZWN0VVJJIG9uICduZXcgUmVzcG9uc2UnKS4NCiAgICAvLyAgIGkuZS4gd2UgYWRkZWQgYW4gJ2lu c3RhbmNlLWlkJyB0byB0aGUgdXJuDQogICAgT2JqZWN0IHJldD0gbnVsbDsNCiAgICAgICAgIHRy eXsNCiAgICAgICAgICByZXQ9ICAgICBpbnZva2UoIHRocmVhZGluZ01vZGVsLCBwcm9naWQsIG1l dGhvZE5hbWUsIHZwKTsNCiAgICAgICAgICB9Y2F0Y2goIEV4Y2VwdGlvbiBlKQ0KICAgICAgICAg IHsNCiAgICAgICAgICAgIFN0cmluZyBtc2c9IExvZy5tc2coTG9nLkVSUk9SLCAibXNnLmNvbXBy b3ZpZGVyLmVycm9yLm5hdGl2ZUVycm9yIiwgZS50b1N0cmluZygpKTsNCiAgICAgICAgICAgIHRo cm93IG5ldyBTT0FQRXhjZXB0aW9uKCBDb25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsIG1zZyk7 DQogICAgICAgICAgfQ0KICAgICAgICAgIHRyeSB7DQogICAgICAgICAgUGFyYW1ldGVyIHByZXQ9 IG51bGw7DQogICAgICAgICAgaWYocmV0ICE9IG51bGwpIHByZXQ9IG5ldyBQYXJhbWV0ZXIoUlBD Q29uc3RhbnRzLkVMRU1fUkVUVVJOICwgcmV0LmdldENsYXNzKCksIHJldCwgbnVsbCk7DQogICAg ICAgICAgICAgIHZwPW51bGw7IC8vZGVyZWZlcmVuY2UuDQogICAgICAgICAgUmVzcG9uc2UgcmVz cCA9IG5ldyBSZXNwb25zZSggdGFyZ2V0T2JqZWN0VVJJLCAgIC8vIFVSSQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgY2FsbC5nZXRNZXRob2ROYW1lKCksICAvLyBNZXRob2QNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgIHByZXQsICAgICAgLy8gUmV0dXJuVmFsdWUNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgIG51bGwsICAgICAgICAgICAgICAgICAgLy8gUGFyYW1zDQogICAgICAg ICAgICAgICAgICAgICAgICAgICBudWxsLCAgICAgICAgICAgICAgICAgIC8vIEhlYWRlcg0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgY2FsbC5nZXRFbmNvZGluZ1N0eWxlVVJJICgpLCAgICAg ICAgICAgICAgICAgIC8vIGVuY29kaW5nDQogICAgICAgICAgICAgICAgICAgICAgICAgICByZXND b250ZXh0ICk7ICAgICAgICAgIC8vIHJlc3BvbnNlIHNvYXBjb250ZXh0IC0gbm90IHN1cHBvcnRl ZCB5ZXQNCg0KICAgICAgICAgIEVudmVsb3BlIGVudiA9IHJlc3AuYnVpbGRFbnZlbG9wZSgpOw0K ICAgICAgICAgIFN0cmluZ1dyaXRlciAgc3cgPSBuZXcgU3RyaW5nV3JpdGVyKCk7DQogICAgICAg ICAgZW52Lm1hcnNoYWxsKCBzdywgY2FsbC5nZXRTT0FQTWFwcGluZ1JlZ2lzdHJ5KCksIHJlc0Nv bnRleHQgKTsNCiAgICAgICAgICByZXNDb250ZXh0LnNldFJvb3RQYXJ0KCBzdy50b1N0cmluZygp LCBDb25zdGFudHMuSEVBREVSVkFMX0NPTlRFTlRfVFlQRV9VVEY4KTsNCiAgICAgICAgICB9DQog ICAgICAgICAgY2F0Y2goIEV4Y2VwdGlvbiBlICkgew0KICAgICAgICAgICAgU3RyaW5nIG1zZz0g TG9nLm1zZyhMb2cuRVJST1IsICJtc2cuY29tcHJvdmlkZXIuZXJyb3IuZXhwIiwgZS50b1N0cmlu ZygpKTsNCiAgICAgICAgICAgaWYgKCBlIGluc3RhbmNlb2YgU09BUEV4Y2VwdGlvbiApIHRocm93 IChTT0FQRXhjZXB0aW9uICkgZSA7DQogICAgICAgICAgICB0aHJvdyBuZXcgU09BUEV4Y2VwdGlv biggQ29uc3RhbnRzLkZBVUxUX0NPREVfU0VSVkVSLCBtc2cgKTsNCiAgICAgICAgICB9DQoNCiAg IExvZy5tc2coTG9nLlNVQ0NFU1MsICJtc2cuY29tcHJvdmlkZXIub2siLCByZXQgPT0gbnVsbCA/ ICIqbnVsbCoiIDogcmV0LnRvU3RyaW5nKCkgKTsNCiAgfSAvL2ludm9rZQ0KDQogIC8qIEpOSSBD b2RlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCiAgc3RhdGljIFNPQVBFeGNlcHRpb24gZGxs TG9hZEV4Y2VwdGlvbj0gbnVsbDsgLy9DYW4gaG9sZCBhbiBleGNlcHRpb24gb24gZnJvbSB0aGUg bG9hZGluZyBvZiB0aGUgYysrIGRsbC4NCiAgc3RhdGljIGZpbmFsIFN0cmluZyBsaWJOYW1lPSAi Q09NUHJvdmlkZXIiOyAgLy9DKysgZGxsIG5hbWUuDQogIHByb3RlY3RlZCB2b2lkIGxvZ2l0KCBp bnQgbGV2ZWwsIFN0cmluZyBtc2cpIC8vQ2FsbGVkIGJ5IENQUA0KICB7DQogICAgTG9nLm1zZyhs ZXZlbCwgbXNnKTsNCiAgfQ0KDQoNCiAgc3RhdGljIGZpbmFsIFN0cmluZyBwbmFtZT0gIm9yZy5h cGFjaGUuc29hcC5wcm92aWRlcnMuY29tIjsNCiAgc3RhdGljIGZpbmFsIFN0cmluZyBjbmFtZT0g cG5hbWUgKyAiLlJQQ1Byb3ZpZGVyIjsNCiAgc3RhdGljDQogIHsNCiAgICB0cnkNCiAgICB7DQog ICAgICBTeXN0ZW0ubG9hZExpYnJhcnkgKGxpYk5hbWUpOw0KICAgIH0NCiAgICBjYXRjaChqYXZh LmxhbmcuU2VjdXJpdHlFeGNlcHRpb24gZSkNCiAgICB7DQogICAgICBkbGxMb2FkRXhjZXB0aW9u PSBuZXcgU09BUEV4Y2VwdGlvbihDb25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsICJTZWN1cml0 eUV4Y2VwdGlvbiBmcm9tICIgKyBjbmFtZSArICIgbG9hZGluZyBsaWJyYXJ5OiIgKyBsaWJOYW1l ICsgIiAiICsgZS5nZXRNZXNzYWdlKCksZSk7DQogICAgfQ0KICAgIGNhdGNoKGphdmEubGFuZy5V bnNhdGlzZmllZExpbmtFcnJvciBlKQ0KICAgIHsNCiAgICAgIGRsbExvYWRFeGNlcHRpb249IG5l dyBTT0FQRXhjZXB0aW9uKENvbnN0YW50cy5GQVVMVF9DT0RFX1NFUlZFUiwgIlVuc2F0aXNmaWVk TGlua0Vycm9yIGZyb20gIiArIGNuYW1lICsgIiBsb2FkaW5nIGxpYnJhcnk6IiArIGxpYk5hbWUg KyAiICIgKyBlLmdldE1lc3NhZ2UoKSxlKTsNCiAgICB9DQogIH0gLy9FbmRvZiBzdGF0aWMNCg0K ICBwcml2YXRlIHN0YXRpYyBTT0FQRXhjZXB0aW9uIGdldFNPQVBFeGNlcHRpb24oIFN0cmluZyBt c2cpDQogIHsNCiAgICByZXR1cm4gIG5ldyBTT0FQRXhjZXB0aW9uKENvbnN0YW50cy5GQVVMVF9D T0RFX1NFUlZFUiwgbXNnKTsNCiAgfQ0KDQogIHByaXZhdGUgbmF0aXZlIE9iamVjdCBpbnZva2Uo U3RyaW5nIHRocmVhZGluZ01vZGVsLCBTdHJpbmcgcHJvZ0lkLCBTdHJpbmcgbWV0aG9kTmFtZSwg IGJ5dGVbXSBwYXJtcykgdGhyb3dzIFNPQVBFeGNlcHRpb247DQogIHByaXZhdGUgc3RhdGljIG5h dGl2ZSB2b2lkIGluaXRsb2coc2hvcnQgbGV2ZWwpOw0KICBwcml2YXRlIHN0YXRpYyBuYXRpdmUg IGJ5dGVbXSBuYXRpdmVDb252ZXJ0VG9CU3RyaW5nKCBTdHJpbmcgIG8gKTsNCg0KICAvKiBKYXZh IHRvIENQUCBNYXJzaGFsbGluZyBjb2RlLiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQoNCiAg cHJpdmF0ZSBzdGF0aWMgZmluYWwgaW50IHNpemVPZlZhcmlhbnQ9IDE2Ow0KDQoNCiAgcHJpdmF0 ZSBmaW5hbCBieXRlW10gb2JqZWN0VG9WYXJpYW50KCBPYmplY3QgbyApIHRocm93cyBTT0FQRXhj ZXB0aW9uDQogIHsNCiAgIHJldHVybiBvYmplY3RUb1ZhcmlhbnQoIG8sIG51bGwsIDApOw0KICB9 DQogIHByaXZhdGUgZmluYWwgYnl0ZVtdIG9iamVjdHNUb1ZhcmlhbnRzKCBPYmplY3RbXSBvICAp IHRocm93cyBTT0FQRXhjZXB0aW9uDQogIHsNCiAgICBieXRlW10gYm89IG5ldyBieXRlWyBvLmxl bmd0aCAqIHNpemVPZlZhcmlhbnRdOw0KICAgIGZvcihpbnQgaT0wOyBpIDwgby5sZW5ndGg7ICsr aSkNCiAgICAgICBvYmplY3RUb1ZhcmlhbnQoIG9baV0sIGJvLCBpICogc2l6ZU9mVmFyaWFudCk7 DQogICAgcmV0dXJuIGJvOw0KICB9DQogIHByaXZhdGUgZmluYWwgYnl0ZVtdIG9iamVjdFRvVmFy aWFudCggT2JqZWN0IG8sICBieXRlW10gYm8sICBpbnQgb3MpIHRocm93cyBTT0FQRXhjZXB0aW9u DQogIHsNCiAgICBieXRlW10gdj0gYm87DQogICAgaWYoIG51bGwgPT0gdikNCiAgICB7DQogICAg IHY9IG5ldyBieXRlW3NpemVPZlZhcmlhbnRdOyAvL1NpemUgb2YgYSB2YXJpYW50DQogICAgIG9z PTA7DQogICAgfQ0KDQogICAgIGlmKCBudWxsPT0gbykNCiAgICAgeyAvL3RvIGJlIHNhZmUuDQog ICAgICB2W29zKzBdID0gMTsgLy9WVF9OVUxMDQogICAgICB2W29zKzFdID0gMDsNCiAgICAgfQ0K ICAgICBlbHNlIGlmKG8gIGluc3RhbmNlb2YgamF2YS5sYW5nLkJvb2xlYW4pIC8vVlRfUjgNCiAg ICAgew0KICAgICAgdltvcyswXSA9IDExOyAvL1ZUX0JPT0wNCiAgICAgIHZbb3MrMV0gPSAwOw0K ICAgICAgYnl0ZSB4PSAoYnl0ZSkoICgoKEJvb2xlYW4pIG8pLmJvb2xlYW5WYWx1ZSgpKSA/IDB4 ZmY6IDApOw0KICAgICAgdltvcys4XT0geDsNCiAgICAgIHZbb3MrOV09IHg7DQogICAgICB2W29z KzEwXT0geDsNCiAgICAgIHZbb3MrMTFdPSB4Ow0KICAgICB9DQogICAgIGVsc2UgaWYobyAgaW5z dGFuY2VvZiBqYXZhLmxhbmcuSW50ZWdlcikgLy9WVF9SOA0KICAgICB7DQogICAgICB2W29zKzBd ID0gMzsgLy9WVF9JNA0KICAgICAgIHZbb3MrMV0gPSAwOw0KICAgICAgaW50IHg9ICgoSW50ZWdl cilvKS5pbnRWYWx1ZSgpOw0KICAgICAgdltvcys4XT0gKGJ5dGUpeDsNCiAgICAgIHZbb3MrOV09 IChieXRlKSgoeD4+PjgpICYgMHhmZik7DQogICAgICB2W29zKzEwXT0gKGJ5dGUpKCh4Pj4+MTYp ICYgMHhmZik7DQogICAgICB2W29zKzExXT0gKGJ5dGUpKCh4Pj4+MjQpICYgMHhmZik7DQogICAg IH0NCiAgICAgZWxzZSBpZiggbyBpbnN0YW5jZW9mIGphdmEubGFuZy5TdHJpbmcpDQogICAgIHsN CiAgICAgIHZbb3MrMF0gPSA4OyAvL1ZUX0JTVFINCiAgICAgIHZbb3MrMV0gPSAwOw0KICAgICAg Ynl0ZVtdIHBicz0gbmF0aXZlQ29udmVydFRvQlN0cmluZyggKFN0cmluZykgbyApOw0KICAgICAg dltvcys4XT0gcGJzWzBdOw0KICAgICAgdltvcys5XT0gcGJzWzFdOw0KICAgICAgdltvcysxMF09 IHBic1syXTsNCiAgICAgIHZbb3MrMTFdPSBwYnNbM107DQogICAgIH0NCiAgICAgZWxzZSBpZihv ICBpbnN0YW5jZW9mIGphdmEubGFuZy5Mb25nKSAvL1ZUX1I4DQogICAgIHsgLy9DT00gaGFzIG5v IGxvbmcgdHlwZSBzbyBwcm9tb3RlIGl0IHRvIGRvdWJsZSB3aGljaCBjYW4gY29udGFpbiBpdC4N CiAgICAgIHZbb3MrMF0gPSA1OyAvL1ZUX1I4DQogICAgIAl2W29zKzFdID0gMDsNCiAgICAgIGxv bmcgeD0gRG91YmxlLmRvdWJsZVRvTG9uZ0JpdHMoKGRvdWJsZSkoKChMb25nKW8pLmxvbmdWYWx1 ZSgpKSk7DQogICAgICB2W29zKzhdPSAoYnl0ZSl4Ow0KICAgICAgdltvcys5XT0gKGJ5dGUpKCh4 Pj4+OCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTBdPSAoYnl0ZSkoKHg+Pj4xNikgJiAweGZmKTsN CiAgICAgIHZbb3MrMTFdPSAoYnl0ZSkoKHg+Pj4yNCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTJd PSAoYnl0ZSkoKHg+Pj4zMikgJiAweGZmKTsNCiAgICAgIHZbb3MrMTNdPSAoYnl0ZSkoKHg+Pj40 MCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTRdPSAoYnl0ZSkoKHg+Pj40OCkgJiAweGZmKTsNCiAg ICAgIHZbb3MrMTVdPSAoYnl0ZSkoKHg+Pj41NikgJiAweGZmKTsNCiAgICAgfQ0KICAgICBlbHNl IGlmKG8gaW5zdGFuY2VvZiBqYXZhLmxhbmcuU2hvcnQpDQogICAgIHsNCiAgICAgIHZbb3MrMF0g PSAyOyAvL1ZUX0kyDQogICAgICB2W29zKzFdID0gMDsNCiAgICAgIGludCB4PSAoKFNob3J0KW8p LmludFZhbHVlKCk7DQogICAgICB2W29zKzhdPSAoYnl0ZSl4Ow0KICAgICAgdltvcys5XT0gKGJ5 dGUpKCh4Pj4+OCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTBdPSAoYnl0ZSkoKHg+Pj4xNikgJiAw eGZmKTsNCiAgICAgIHZbb3MrMTFdPSAoYnl0ZSkoKHg+Pj4yNCkgJiAweGZmKTsNCiAgICAgfQ0K ICAgICBlbHNlIGlmKG8gaW5zdGFuY2VvZiBqYXZhLmxhbmcuRmxvYXQpDQogICAgIHsNCiAgICAg IHZbb3MrMF0gPSA0OyAvL1ZUX1I0DQogICAgICAgdltvcysxXSA9IDA7DQogICAgICAgaW50IHg9 IEZsb2F0LmZsb2F0VG9JbnRCaXRzKCgoRmxvYXQpbykuZmxvYXRWYWx1ZSgpKTsNCiAgICAgICB2 W29zKzhdPSAoYnl0ZSl4Ow0KICAgICAgIHZbb3MrOV09IChieXRlKSgoeD4+PjgpICYgMHhmZik7 DQogICAgICAgdltvcysxMF09IChieXRlKSgoeD4+PjE2KSAmIDB4ZmYpOw0KICAgICAgIHZbb3Mr MTFdPSAoYnl0ZSkoKHg+Pj4yNCkgJiAweGZmKTsNCiAgICAgfQ0KICAgICBlbHNlIGlmKG8gIGlu c3RhbmNlb2YgamF2YS5sYW5nLkRvdWJsZSkgLy9WVF9SOA0KICAgICB7DQogICAgICB2W29zKzBd ID0gNTsgLy9WVF9SOA0KICAgICAgdltvcysxXSA9IDA7DQogICAgICBsb25nIHg9IERvdWJsZS5k b3VibGVUb0xvbmdCaXRzKCgoRG91YmxlKW8pLmRvdWJsZVZhbHVlKCkpOw0KICAgICAgdltvcys4 XT0gKGJ5dGUpeDsNCiAgICAgIHZbb3MrOV09IChieXRlKSgoeD4+PjgpICYgMHhmZik7DQogICAg ICB2W29zKzEwXT0gKGJ5dGUpKCh4Pj4+MTYpICYgMHhmZik7DQogICAgICB2W29zKzExXT0gKGJ5 dGUpKCh4Pj4+MjQpICYgMHhmZik7DQogICAgICB2W29zKzEyXT0gKGJ5dGUpKCh4Pj4+MzIpICYg MHhmZik7DQogICAgICB2W29zKzEzXT0gKGJ5dGUpKCh4Pj4+NDApICYgMHhmZik7DQogICAgICB2 W29zKzE0XT0gKGJ5dGUpKCh4Pj4+NDgpICYgMHhmZik7DQogICAgICB2W29zKzE1XT0gKGJ5dGUp KCh4Pj4+NTYpICYgMHhmZik7DQogICAgIH0NCiAgICAgZWxzZSBpZihvICBpbnN0YW5jZW9mIGph dmEubGFuZy5CeXRlKQ0KICAgICB7DQogICAgICB2W29zKzBdID0gMTc7IC8vVlRfVUkxDQogICAg ICB2W29zKzFdID0gMDsNCiAgICAgIGJ5dGUgeD0gKChCeXRlKW8pLmJ5dGVWYWx1ZSgpOw0KICAg ICAgdltvcys4XT0geDsNCiAgICAgfQ0KICAgICBlbHNlIGlmKG8gIGluc3RhbmNlb2YgamF2YS5s YW5nLkNoYXJhY3RlcikNCiAgICAgew0KICAgICAgdltvcyswXSA9IDE3OyAvL1ZUX1VJMQ0KICAg ICAgdltvcysxXSA9IDA7DQogICAgICBieXRlIHg9IChieXRlKSAoKENoYXJhY3RlcilvKS5jaGFy VmFsdWUoKTsNCiAgICAgIHZbb3MrOF09IHg7DQogICAgIH0NCiAgICAgZWxzZSBpZihvICBpbnN0 YW5jZW9mIGphdmEubGFuZy5Wb2lkKQ0KICAgICB7DQogICAgICB2W29zKzBdID0gMTsgLy9WVF9O VUxMDQogICAgICB2W29zKzFdID0gMDsNCiAgICAgfQ0KICAgICBlbHNlIGlmKCBvLmdldENsYXNz KCkuaXNBcnJheSgpKQ0KICAgICB7DQogICAgICAvLyBBcnJheUluZm8gYWk9IG5ldyBBcnJheUlu Zm8obyk7DQogICAgICAvLyB2PSBhaS50b1ZhcmlhbnQoKTsNCiAgICAgIHRocm93IG5ldyBTT0FQ RXhjZXB0aW9uKENvbnN0YW50cy5GQVVMVF9DT0RFX1NFUlZFUiwgIkN1cnJlbnRseSBhcnJheXMg YXJlIHVuc3VwcG9ydGVkLCAgdHlwZSByZWNlaXZlZDoiICsgby5nZXRDbGFzcygpLmdldE5hbWUo KSk7DQogICAgIH0NCiAgICAgZWxzZQ0KICAgICB7DQogICAgICB0aHJvdyBuZXcgU09BUEV4Y2Vw dGlvbihDb25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsICJDdXJyZW50bHkgdW5zdXBwb3J0ZWQg ZGF0YSB0eXBlIHJlY2VpdmVkOiIgKyBvLmdldENsYXNzKCkuZ2V0TmFtZSgpKTsNCiAgICAgLyoN CiAgICAgIC8vIHZbb3MrMF0gPSA5OyAvL1ZUX0RJU1BBVENIIGZvciBvYmplY3QNCiAgICAgIC8v IHZbb3MrMV0gPSAwOw0KDQogICAgICBieXRlW10gY3BwcmVmPSBudWxsOw0KDQogICAgICBpZihv ICBpbnN0YW5jZW9mICApDQogICAgICB7DQogICAgICAgLy8gU3lzdGVtLmFycmF5Y29weShjcHBy ZWYsMCx2LDgsIGNwcHJlZi5sZW5ndGgpOw0KICAgICAgfQ0KICAgICAgZWxzZSBpZihvICApIC8v U3BlY2lmaWMgcmVxdWVzdCB0byByZXR1cm4gYmFjayBlbXB0eQ0KICAgICAgew0KICAgICAgICB2 W29zKzBdID0gMDsgLy9WVF9FTVBUWQ0KICAgICAgICB2W29zKzFdID0gMDsNCiAgICAgIH0NCiAg ICAgIGVsc2UNCiAgICAgIHsNCiAgICAgICAgLy8gY3BwcmVmPSBuYXRpdmVPYmplY3RUb1Zhcmlh bnQobyk7DQogICAgICAgIFN5c3RlbS5hcnJheWNvcHkoY3BwcmVmLDAsdiw4LCBjcHByZWYubGVu Z3RoKTsNCiAgICAgIH0NCiAgICAgKi8NCg0KICAgICB9DQogICAgcmV0dXJuIHY7DQogIH0NCg0K fSAvL0VuZG9mIFJQQ1Byb3ZpZGVyDQo= ------_=_NextPart_000_01C29AA5.6578EBA0 Content-Type: application/octet-stream; name="RPCProvider.java" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="RPCProvider.java" LyoNCiAqIFRoZSBBcGFjaGUgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjENCiAqDQogKg0K ICogQ29weXJpZ2h0IChjKSAyMDAxIFRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbi4gIEFs bCByaWdodHMNCiAqIHJlc2VydmVkLg0KICoNCiAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dA0KICogbW9kaWZpY2F0aW9u LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zDQog KiBhcmUgbWV0Og0KICoNCiAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0 IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0DQogKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBj b25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuDQogKg0KICogMi4gUmVkaXN0 cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln aHQNCiAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp bmcgZGlzY2xhaW1lciBpbg0KICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQ0KICogICAgZGlzdHJpYnV0aW9uLg0KICoNCiAqIDMu IFRoZSBlbmQtdXNlciBkb2N1bWVudGF0aW9uIGluY2x1ZGVkIHdpdGggdGhlIHJlZGlzdHJpYnV0 aW9uLA0KICogICAgaWYgYW55LCBtdXN0IGluY2x1ZGUgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRn bWVudDoNCiAqICAgICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVk IGJ5IHRoZQ0KICogICAgICAgIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIChodHRwOi8vd3d3 LmFwYWNoZS5vcmcvKS4iDQogKiAgICBBbHRlcm5hdGVseSwgdGhpcyBhY2tub3dsZWRnbWVudCBt YXkgYXBwZWFyIGluIHRoZSBzb2Z0d2FyZSBpdHNlbGYsDQogKiAgICBpZiBhbmQgd2hlcmV2ZXIg c3VjaCB0aGlyZC1wYXJ0eSBhY2tub3dsZWRnbWVudHMgbm9ybWFsbHkgYXBwZWFyLg0KICoNCiAq IDQuIFRoZSBuYW1lcyAiU09BUCIgYW5kICJBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbiIgbXVz dA0KICogICAgbm90IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2 ZWQgZnJvbSB0aGlzDQogKiAgICBzb2Z0d2FyZSB3aXRob3V0IHByaW9yIHdyaXR0ZW4gcGVybWlz c2lvbi4gRm9yIHdyaXR0ZW4NCiAqICAgIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0IGFwYWNo ZUBhcGFjaGUub3JnLg0KICoNCiAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3 YXJlIG1heSBub3QgYmUgY2FsbGVkICJBcGFjaGUiLA0KICogICAgbm9yIG1heSAiQXBhY2hlIiBh cHBlYXIgaW4gdGhlaXIgbmFtZSwgd2l0aG91dCBwcmlvciB3cml0dGVuDQogKiAgICBwZXJtaXNz aW9uIG9mIHRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlvbi4NCiAqDQogKiBUSElTIFNPRlRX QVJFIElTIFBST1ZJREVEIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1NFRCBPUiBJTVBMSUVEDQog KiBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJRUQg V0FSUkFOVElFUw0KICogT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRSBBUkUNCiAqIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUg QVBBQ0hFIFNPRlRXQVJFIEZPVU5EQVRJT04gT1INCiAqIElUUyBDT05UUklCVVRPUlMgQkUgTElB QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwNCiAqIFNQRUNJQUwsIEVY RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QNCiAq IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7 IExPU1MgT0YNCiAqIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQNCiAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLA0KICogT1IgVE9SVCAoSU5DTFVE SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUDQogKiBP RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC SUxJVFkgT0YNCiAqIFNVQ0ggREFNQUdFLg0KICogPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiAqDQogKiBUaGlzIHNv ZnR3YXJlIGNvbnNpc3RzIG9mIHZvbHVudGFyeSBjb250cmlidXRpb25zIG1hZGUgYnkgbWFueQ0K ICogaW5kaXZpZHVhbHMgb24gYmVoYWxmIG9mIHRoZSBBcGFjaGUgU29mdHdhcmUgRm91bmRhdGlv biBhbmQgd2FzDQogKiBvcmlnaW5hbGx5IGJhc2VkIG9uIHNvZnR3YXJlIGNvcHlyaWdodCAoYykg MjAwMSwgSW50ZXJuYXRpb25hbA0KICogQnVzaW5lc3MgTWFjaGluZXMsIEluYy4sIGh0dHA6Ly93 d3cuYXBhY2hlLm9yZy4gIEZvciBtb3JlDQogKiBpbmZvcm1hdGlvbiBvbiB0aGUgQXBhY2hlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIHBsZWFzZSBzZWUNCiAqIDxodHRwOi8vd3d3LmFwYWNoZS5vcmcv Pi4NCiAqLw0KcGFja2FnZSBvcmcuYXBhY2hlLnNvYXAucHJvdmlkZXJzLmNvbTsNCg0KaW1wb3J0 IGphdmEuaW8uKiA7DQppbXBvcnQgamF2YS51dGlsLiogOw0KaW1wb3J0IGphdmEudGV4dC5NZXNz YWdlRm9ybWF0Ow0KaW1wb3J0IGphdmF4LnNlcnZsZXQuKiA7DQppbXBvcnQgamF2YXguc2Vydmxl dC5odHRwLiogOw0KaW1wb3J0IG9yZy5hcGFjaGUuc29hcC4qIDsNCmltcG9ydCBvcmcuYXBhY2hl LnNvYXAucnBjLiogOw0KaW1wb3J0IG9yZy5hcGFjaGUuc29hcC5zZXJ2ZXIuKiA7DQppbXBvcnQg b3JnLmFwYWNoZS5zb2FwLnV0aWwuKiA7DQppbXBvcnQgamF2YS5sYW5nLk1hdGg7DQppbXBvcnQg b3JnLmFwYWNoZS5zb2FwLnV0aWwubWltZS5CeXRlQXJyYXlEYXRhU291cmNlOw0KaW1wb3J0IGph dmF4LmFjdGl2YXRpb24uRGF0YUhhbmRsZXI7DQppbXBvcnQgamF2YXguYWN0aXZhdGlvbi5EYXRh U291cmNlOw0KDQpwdWJsaWMgY2xhc3MgUlBDUHJvdmlkZXIgaW1wbGVtZW50cyBQcm92aWRlcg0K ew0KICBwcml2YXRlIERlcGxveW1lbnREZXNjcmlwdG9yIGRkIDsNCiAgcHJpdmF0ZSBFbnZlbG9w ZSAgICAgICAgICAgICBlbnZlbG9wZSA7DQogIHByaXZhdGUgQ2FsbCAgICAgICAgICAgICAgICAg Y2FsbCA7DQogIHByaXZhdGUgU3RyaW5nICAgICAgICAgICAgICAgbWV0aG9kTmFtZSA7DQogIHBy aXZhdGUgU3RyaW5nICAgICAgICAgICAgICAgdGFyZ2V0T2JqZWN0VVJJIDsNCiAgcHJpdmF0ZSBI dHRwU2VydmxldCAgICAgICAgICBzZXJ2bGV0IDsNCiAgcHJpdmF0ZSBIdHRwU2Vzc2lvbiAgICAg ICAgICBzZXNzaW9uIDsNCiAgcHJpdmF0ZSBieXRlW10gdnA9IG51bGw7DQogIHByaXZhdGUgU3Ry aW5nIHByb2dpZD0gbnVsbDsNCiAgcHJpdmF0ZSBTZXJ2bGV0Q29udGV4dCBzYz0gbnVsbDsNCiAg cHJpdmF0ZSBTdHJpbmcgdGhyZWFkaW5nTW9kZWw9IG51bGw7DQogIHByaXZhdGUgc3RhdGljIGJv b2xlYW4gaW5pdExvZz0gZmFsc2U7DQogIHByaXZhdGUgYm9vbGVhbiBhdHRhY2hTdHJpbmc9ZmFs c2U7DQoNCiAgcHVibGljIHZvaWQgbG9jYXRlKCBEZXBsb3ltZW50RGVzY3JpcHRvciBkZCwNCiAg ICAgICAgICAgICAgICAgICAgICBFbnZlbG9wZSBlbnYsDQogICAgICAgICAgICAgICAgICAgICAg Q2FsbCBjYWxsLA0KICAgICAgICAgICAgICAgICAgICAgIFN0cmluZyBtZXRob2ROYW1lLA0KICAg ICAgICAgICAgICAgICAgICAgIFN0cmluZyB0YXJnZXRPYmplY3RVUkksDQogICAgICAgICAgICAg ICAgICAgICAgU09BUENvbnRleHQgcmVxQ29udGV4dCkNCiAgICAgIHRocm93cyBTT0FQRXhjZXB0 aW9uDQogIHsNCiAgICBIdHRwU2VydmxldCBzZXJ2bGV0ID0gKEh0dHBTZXJ2bGV0KSByZXFDb250 ZXh0LmdldFByb3BlcnR5KCBDb25zdGFudHMuQkFHX0hUVFBTRVJWTEVUICk7DQogICAgSHR0cFNl c3Npb24gc2Vzc2lvbiA9IChIdHRwU2Vzc2lvbikgcmVxQ29udGV4dC5nZXRQcm9wZXJ0eSggQ29u c3RhbnRzLkJBR19IVFRQU0VTU0lPTiApOw0KICAgIC8vIHNjPSBzZXJ2bGV0LmdldFNlcnZsZXRD b25maWcoKS5nZXRTZXJ2bGV0Q29udGV4dCgpOw0KICAgIGlmKCFpbml0TG9nKQ0KICAgIHsNCiAg ICAgIExvZy5pbml0KHNlcnZsZXQpOw0KICAgICAgaW5pdGxvZyhMb2cuZ2V0TGV2ZWwoKSk7DQog ICAgICBpbml0TG9nPXRydWU7DQogICAgfQ0KDQogICAgTG9nLm1zZyhMb2cuU1VDQ0VTUywgIm1z Zy5jb21wcm92aWRlci5pbmxvY2F0ZSIsIGdldENsYXNzKCkuZ2V0TmFtZSgpLCB0YXJnZXRPYmpl Y3RVUkksIG1ldGhvZE5hbWUgKTsNCiAgICBpZiggbnVsbCAhPSBkbGxMb2FkRXhjZXB0aW9uKQ0K ICAgIHsNCiAgICAgIExvZy5tc2coTG9nLkVSUk9SLCAibXNnLmNvbXByb3ZpZGVyLmRsbGZhaWwi LCBkbGxMb2FkRXhjZXB0aW9uICk7DQogICAgICB0aHJvdyBkbGxMb2FkRXhjZXB0aW9uOw0KICAg ICB9DQoNCiAgICAvL1RoaXMgdmFsaWRhdGVzIHRoYXQgdGhlIG1ldGhvZCBuYW1lIGlzIGxpc3Rl ZCBpbiB0aGUgZGVwbG95bWVudCBkZXNjcmlwdG9yLg0KICAgIGlmICghTWVzc2FnZVJvdXRlci52 YWxpZE1lc3NhZ2UgKGRkLCBtZXRob2ROYW1lKSkgew0KICAgICAgU3RyaW5nIG1zZz0NCiAgICAg IExvZy5tc2coTG9nLkVSUk9SLCAibXNnLmNvbXByb3ZpZGVyLmJhZE1ldGhvZCIsIHRhcmdldE9i amVjdFVSSSwgbWV0aG9kTmFtZSk7DQogICAgICAgIHRocm93IG5ldyBTT0FQRXhjZXB0aW9uIChD b25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsIG1zZyk7DQogICAgICB9DQoNCiAgICBWZWN0b3Ig cGFybXM9IGNhbGwuZ2V0UGFyYW1zKCk7DQogICAgaW50IG5vUGFybXM9IDA7DQogICAgaWYocGFy bXMgIT0gbnVsbCkNCiAgICB7DQogICAgICB2cD0gbmV3IGJ5dGVbc2l6ZU9mVmFyaWFudCAgKiBw YXJtcy5zaXplKCldOw0KICAgICAgbm9QYXJtcz0gcGFybXMuc2l6ZSgpOw0KICAgIH0NCg0KICAg IGZvcihpbnQgaT0wOyBpIDwgbm9QYXJtczsgKytpKQ0KICAgIHsNCiAgICAgTG9nLm1zZyhMb2cu SU5GT1JNQVRJT04sICJtc2cuY29tcHJvdmlkZXIuaW5mby5wYXJtcyIsIG5ldyBJbnRlZ2VyKGkp LCBwYXJtcy5lbGVtZW50QXQoaSkuZ2V0Q2xhc3MoKS5nZXROYW1lKCksIHBhcm1zLmVsZW1lbnRB dChpKS50b1N0cmluZygpKTsNCiAgICAgLy9ZZXMuIFByYW1ldGVycyBhcmUgcmV2ZXJzZWQgaGVy ZS4NCiAgICAgb2JqZWN0VG9WYXJpYW50KCAoKFBhcmFtZXRlcikocGFybXMuZWxlbWVudEF0KG5v UGFybXMgLSBpIC0xKSkpLmdldFZhbHVlKCksIHZwLCBpICogc2l6ZU9mVmFyaWFudCk7DQogICAg fQ0KDQogICAgSGFzaHRhYmxlICAgIHByb3BzID0gZGQuZ2V0UHJvcHMoKTsNCg0KICAgIHByb2dp ZD0gIChTdHJpbmcpIHByb3BzLmdldCgicHJvZ2lkIik7DQogICAgaWYobnVsbD09IHByb2dpZCkN CiAgICB7DQogICAgIGlmKHRhcmdldE9iamVjdFVSSS5zdGFydHNXaXRoKCJ1cm46IikpDQogICAg IHsNCiAgICAgICBwcm9naWQ9IHRhcmdldE9iamVjdFVSSS5zdWJzdHJpbmcoNCk7DQogICAgIH0N CiAgICAgZWxzZQ0KICAgICAgIHByb2dpZD0gdGFyZ2V0T2JqZWN0VVJJOw0KICAgIH0NCg0KICAg IHRocmVhZGluZ01vZGVsPSAgKFN0cmluZykgcHJvcHMuZ2V0KCJ0aHJlYWRtb2RlbCIpOw0KICAg IGlmKCBudWxsID09IHRocmVhZGluZ01vZGVsKSB0aHJlYWRpbmdNb2RlbD0gIk1VTFRJVEhSRUFE RUQiOw0KICAgIExvZy5tc2coTG9nLklORk9STUFUSU9OLCAibXNnLmNvbXByb3ZpZGVyLmluZm8u Y29taW5mIiwgcHJvZ2lkLCB0aHJlYWRpbmdNb2RlbCApOw0KDQogICAgLy8gU2hvdWxkIHdlIHNl bmQgU3RyaW5ncyBhcyBhdHRhY2htZW50cyA/DQogICAgU3RyaW5nIGF0dGFjaCA9IChTdHJpbmcp IHByb3BzLmdldCgiYXR0YWNoU3RyaW5nIik7DQogICAgYXR0YWNoU3RyaW5nICA9IChhdHRhY2gg IT0gbnVsbCAmJiBhdHRhY2guZXF1YWxzKCJ0cnVlIikpOw0KDQogICAgdGhpcy5kZCAgICAgICAg ICAgICAgPSBkZCA7DQogICAgdGhpcy5lbnZlbG9wZSAgICAgICAgPSBlbnYgOw0KICAgIHRoaXMu Y2FsbCAgICAgICAgICAgID0gY2FsbCA7DQogICAgdGhpcy5tZXRob2ROYW1lICAgICAgPSBtZXRo b2ROYW1lIDsNCiAgICB0aGlzLnRhcmdldE9iamVjdFVSSSA9IHRhcmdldE9iamVjdFVSSSA7DQog ICAgdGhpcy5zZXJ2bGV0ICAgICAgICAgPSBzZXJ2bGV0IDsNCiAgICB0aGlzLnNlc3Npb24gICAg ICAgICA9IHNlc3Npb24gOw0KDQoNCiAgICAvLyBBZGQgbG9naWMgdG8gbG9jYXRlL2xvYWQgdGhl IHNlcnZpY2UgaGVyZQ0KICB9IC8vRW5kb2Ygb2YgbG9jYXRlDQoNCg0KICBwdWJsaWMgdm9pZCBp bnZva2UoU09BUENvbnRleHQgcmVxQ29udGV4dCwgU09BUENvbnRleHQgcmVzQ29udGV4dCkNCiAg ICAgICAgICAgICAgICAgICAgICB0aHJvd3MgU09BUEV4Y2VwdGlvbg0KICB7DQogICAgaWYoIG51 bGwgIT0gZGxsTG9hZEV4Y2VwdGlvbikNCiAgICB7DQogICAgICBMb2cubXNnKExvZy5FUlJPUiwg Im1zZy5jb21wcm92aWRlci5kbGxmYWlsIiwgZGxsTG9hZEV4Y2VwdGlvbiApOw0KICAgICAgdGhy b3cgZGxsTG9hZEV4Y2VwdGlvbjsNCiAgICAgfQ0KICAgICBpZiggbnVsbCA9PSBwcm9naWQpDQog ICAgIHsNCiAgICAgICBTdHJpbmcgbXNnPSBMb2cubXNnKExvZy5FUlJPUiwgIm1zZy5jb21wcm92 aWRlci5lcnJvci5udWxscHJvZyIsIG1ldGhvZE5hbWUsIHRhcmdldE9iamVjdFVSSSk7DQogICAg ICAgdGhyb3cgbmV3IFNPQVBFeGNlcHRpb24oIENvbnN0YW50cy5GQVVMVF9DT0RFX1NFUlZFUiwg bXNnKTsNCiAgICAgfQ0KICAgICBpZiggbnVsbCA9PSBtZXRob2ROYW1lKQ0KICAgICB7DQogICAg ICAgU3RyaW5nIG1zZz0gTG9nLm1zZyhMb2cuRVJST1IsICJtc2cuY29tcHJvdmlkZXIuZXJyb3Iu bnVsbG1uYW1lIiwgdGFyZ2V0T2JqZWN0VVJJKTsNCiAgICAgICB0aHJvdyBuZXcgU09BUEV4Y2Vw dGlvbiggQ29uc3RhbnRzLkZBVUxUX0NPREVfU0VSVkVSLCBtc2cpOw0KICAgICB9DQoNCg0KDQog ICAgLy8gSWYgeW91IHdhbnQgdGhlIGNsaWVudCB0byB1c2UgYSBuZXcgdGFyZ2V0T2JqZWN0VVJJ IGZvciBzdWJzZXF1ZW5jZQ0KICAgIC8vIGNhbGxzIHBsYWNlIGl0IGhlcmUgKHRhcmdldE9iamVj dFVSSSBvbiAnbmV3IFJlc3BvbnNlJykuDQogICAgLy8gICBpLmUuIHdlIGFkZGVkIGFuICdpbnN0 YW5jZS1pZCcgdG8gdGhlIHVybg0KICAgIE9iamVjdCByZXQ9IG51bGw7DQogICAgICAgICB0cnl7 DQogICAgICAgICAgcmV0PSAgICAgaW52b2tlKCB0aHJlYWRpbmdNb2RlbCwgcHJvZ2lkLCBtZXRo b2ROYW1lLCB2cCk7DQogICAgICAgICAgfWNhdGNoKCBFeGNlcHRpb24gZSkNCiAgICAgICAgICB7 DQogICAgICAgICAgICBTdHJpbmcgbXNnPSBMb2cubXNnKExvZy5FUlJPUiwgIm1zZy5jb21wcm92 aWRlci5lcnJvci5uYXRpdmVFcnJvciIsIGUudG9TdHJpbmcoKSk7DQogICAgICAgICAgICB0aHJv dyBuZXcgU09BUEV4Y2VwdGlvbiggQ29uc3RhbnRzLkZBVUxUX0NPREVfU0VSVkVSLCBtc2cpOw0K ICAgICAgICAgIH0NCiAgICAgICAgICB0cnkgew0KICAgICAgICAgIFBhcmFtZXRlciBwcmV0PSBu dWxsOw0KICAgICAgICAgIGlmKHJldCAhPSBudWxsKSB7DQogICAgICAgICAgICAgaWYgKGF0dGFj aFN0cmluZyAmJiByZXQgaW5zdGFuY2VvZiBTdHJpbmcpIHsNCgkJCQkvLyBXZSBhcmUgYWJvdXQg dG8gcmV0dXJuIGEgU3RyaW5nIGFuZCB0aGV5IHNob3VsZCBiZSByZXR1cm5lZCBhcw0KCQkJCS8v ICBhdHRhY2htZW50cy4gVXNlIGEgRGF0YUhhbmRsZXIgb2JqZWN0Lg0KCQkgICAgICAgIERhdGFT b3VyY2UgIGRzICA9IG5ldyBCeXRlQXJyYXlEYXRhU291cmNlKCgoU3RyaW5nKSByZXQpLmdldEJ5 dGVzKCJVVEYtOCIpLCAiYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtIik7DQoJCSAgICAgICAgRGF0 YUhhbmRsZXIgZGggID0gbmV3IERhdGFIYW5kbGVyKGRzKTsNCgkJICAgICAgICByZXQgPSBkaDsN CgkJCSB9DQogICAgICAgICAgICAgcHJldD0gbmV3IFBhcmFtZXRlcihSUENDb25zdGFudHMuRUxF TV9SRVRVUk4gLCByZXQuZ2V0Q2xhc3MoKSwgcmV0LCBudWxsKTsNCiAgICAgICAgICB9DQogICAg ICAgICAgICAgIHZwPW51bGw7IC8vZGVyZWZlcmVuY2UuDQogICAgICAgICAgUmVzcG9uc2UgcmVz cCA9IG5ldyBSZXNwb25zZSggdGFyZ2V0T2JqZWN0VVJJLCAgIC8vIFVSSQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgY2FsbC5nZXRNZXRob2ROYW1lKCksICAvLyBNZXRob2QNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgIHByZXQsICAgICAgLy8gUmV0dXJuVmFsdWUNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgIG51bGwsICAgICAgICAgICAgICAgICAgLy8gUGFyYW1zDQogICAgICAg ICAgICAgICAgICAgICAgICAgICBudWxsLCAgICAgICAgICAgICAgICAgIC8vIEhlYWRlcg0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgY2FsbC5nZXRFbmNvZGluZ1N0eWxlVVJJICgpLCAgICAg ICAgICAgICAgICAgIC8vIGVuY29kaW5nDQogICAgICAgICAgICAgICAgICAgICAgICAgICByZXND b250ZXh0ICk7ICAgICAgICAgIC8vIHJlc3BvbnNlIHNvYXBjb250ZXh0IC0gbm90IHN1cHBvcnRl ZCB5ZXQNCg0KICAgICAgICAgIEVudmVsb3BlIGVudiA9IHJlc3AuYnVpbGRFbnZlbG9wZSgpOw0K ICAgICAgICAgIFN0cmluZ1dyaXRlciAgc3cgPSBuZXcgU3RyaW5nV3JpdGVyKCk7DQogICAgICAg ICAgZW52Lm1hcnNoYWxsKCBzdywgY2FsbC5nZXRTT0FQTWFwcGluZ1JlZ2lzdHJ5KCksIHJlc0Nv bnRleHQgKTsNCiAgICAgICAgICByZXNDb250ZXh0LnNldFJvb3RQYXJ0KCBzdy50b1N0cmluZygp LCBDb25zdGFudHMuSEVBREVSVkFMX0NPTlRFTlRfVFlQRV9VVEY4KTsNCiAgICAgICAgICB9DQog ICAgICAgICAgY2F0Y2goIEV4Y2VwdGlvbiBlICkgew0KICAgICAgICAgICAgU3RyaW5nIG1zZz0g TG9nLm1zZyhMb2cuRVJST1IsICJtc2cuY29tcHJvdmlkZXIuZXJyb3IuZXhwIiwgZS50b1N0cmlu ZygpKTsNCiAgICAgICAgICAgaWYgKCBlIGluc3RhbmNlb2YgU09BUEV4Y2VwdGlvbiApIHRocm93 IChTT0FQRXhjZXB0aW9uICkgZSA7DQogICAgICAgICAgICB0aHJvdyBuZXcgU09BUEV4Y2VwdGlv biggQ29uc3RhbnRzLkZBVUxUX0NPREVfU0VSVkVSLCBtc2cgKTsNCiAgICAgICAgICB9DQoNCiAg IExvZy5tc2coTG9nLlNVQ0NFU1MsICJtc2cuY29tcHJvdmlkZXIub2siLCByZXQgPT0gbnVsbCA/ ICIqbnVsbCoiIDogcmV0LnRvU3RyaW5nKCkgKTsNCiAgfSAvL2ludm9rZQ0KDQogIC8qIEpOSSBD b2RlIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCiAgc3RhdGljIFNPQVBFeGNlcHRpb24gZGxs TG9hZEV4Y2VwdGlvbj0gbnVsbDsgLy9DYW4gaG9sZCBhbiBleGNlcHRpb24gb24gZnJvbSB0aGUg bG9hZGluZyBvZiB0aGUgYysrIGRsbC4NCiAgc3RhdGljIGZpbmFsIFN0cmluZyBsaWJOYW1lPSAi Q09NUHJvdmlkZXIiOyAgLy9DKysgZGxsIG5hbWUuDQogIHByb3RlY3RlZCB2b2lkIGxvZ2l0KCBp bnQgbGV2ZWwsIFN0cmluZyBtc2cpIC8vQ2FsbGVkIGJ5IENQUA0KICB7DQogICAgTG9nLm1zZyhs ZXZlbCwgbXNnKTsNCiAgfQ0KDQoNCiAgc3RhdGljIGZpbmFsIFN0cmluZyBwbmFtZT0gIm9yZy5h cGFjaGUuc29hcC5wcm92aWRlcnMuY29tIjsNCiAgc3RhdGljIGZpbmFsIFN0cmluZyBjbmFtZT0g cG5hbWUgKyAiLlJQQ1Byb3ZpZGVyIjsNCiAgc3RhdGljDQogIHsNCiAgICB0cnkNCiAgICB7DQog ICAgICBTeXN0ZW0ubG9hZExpYnJhcnkgKGxpYk5hbWUpOw0KICAgIH0NCiAgICBjYXRjaChqYXZh LmxhbmcuU2VjdXJpdHlFeGNlcHRpb24gZSkNCiAgICB7DQogICAgICBkbGxMb2FkRXhjZXB0aW9u PSBuZXcgU09BUEV4Y2VwdGlvbihDb25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsICJTZWN1cml0 eUV4Y2VwdGlvbiBmcm9tICIgKyBjbmFtZSArICIgbG9hZGluZyBsaWJyYXJ5OiIgKyBsaWJOYW1l ICsgIiAiICsgZS5nZXRNZXNzYWdlKCksZSk7DQogICAgfQ0KICAgIGNhdGNoKGphdmEubGFuZy5V bnNhdGlzZmllZExpbmtFcnJvciBlKQ0KICAgIHsNCiAgICAgIGRsbExvYWRFeGNlcHRpb249IG5l dyBTT0FQRXhjZXB0aW9uKENvbnN0YW50cy5GQVVMVF9DT0RFX1NFUlZFUiwgIlVuc2F0aXNmaWVk TGlua0Vycm9yIGZyb20gIiArIGNuYW1lICsgIiBsb2FkaW5nIGxpYnJhcnk6IiArIGxpYk5hbWUg KyAiICIgKyBlLmdldE1lc3NhZ2UoKSxlKTsNCiAgICB9DQogIH0gLy9FbmRvZiBzdGF0aWMNCg0K ICBwcml2YXRlIHN0YXRpYyBTT0FQRXhjZXB0aW9uIGdldFNPQVBFeGNlcHRpb24oIFN0cmluZyBt c2cpDQogIHsNCiAgICByZXR1cm4gIG5ldyBTT0FQRXhjZXB0aW9uKENvbnN0YW50cy5GQVVMVF9D T0RFX1NFUlZFUiwgbXNnKTsNCiAgfQ0KDQogIHByaXZhdGUgbmF0aXZlIE9iamVjdCBpbnZva2Uo U3RyaW5nIHRocmVhZGluZ01vZGVsLCBTdHJpbmcgcHJvZ0lkLCBTdHJpbmcgbWV0aG9kTmFtZSwg IGJ5dGVbXSBwYXJtcykgdGhyb3dzIFNPQVBFeGNlcHRpb247DQogIHByaXZhdGUgc3RhdGljIG5h dGl2ZSB2b2lkIGluaXRsb2coc2hvcnQgbGV2ZWwpOw0KICBwcml2YXRlIHN0YXRpYyBuYXRpdmUg IGJ5dGVbXSBuYXRpdmVDb252ZXJ0VG9CU3RyaW5nKCBTdHJpbmcgIG8gKTsNCg0KICAvKiBKYXZh IHRvIENQUCBNYXJzaGFsbGluZyBjb2RlLiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQoNCiAg cHJpdmF0ZSBzdGF0aWMgZmluYWwgaW50IHNpemVPZlZhcmlhbnQ9IDE2Ow0KDQoNCiAgcHJpdmF0 ZSBmaW5hbCBieXRlW10gb2JqZWN0VG9WYXJpYW50KCBPYmplY3QgbyApIHRocm93cyBTT0FQRXhj ZXB0aW9uDQogIHsNCiAgIHJldHVybiBvYmplY3RUb1ZhcmlhbnQoIG8sIG51bGwsIDApOw0KICB9 DQogIHByaXZhdGUgZmluYWwgYnl0ZVtdIG9iamVjdHNUb1ZhcmlhbnRzKCBPYmplY3RbXSBvICAp IHRocm93cyBTT0FQRXhjZXB0aW9uDQogIHsNCiAgICBieXRlW10gYm89IG5ldyBieXRlWyBvLmxl bmd0aCAqIHNpemVPZlZhcmlhbnRdOw0KICAgIGZvcihpbnQgaT0wOyBpIDwgby5sZW5ndGg7ICsr aSkNCiAgICAgICBvYmplY3RUb1ZhcmlhbnQoIG9baV0sIGJvLCBpICogc2l6ZU9mVmFyaWFudCk7 DQogICAgcmV0dXJuIGJvOw0KICB9DQogIHByaXZhdGUgZmluYWwgYnl0ZVtdIG9iamVjdFRvVmFy aWFudCggT2JqZWN0IG8sICBieXRlW10gYm8sICBpbnQgb3MpIHRocm93cyBTT0FQRXhjZXB0aW9u DQogIHsNCiAgICBieXRlW10gdj0gYm87DQogICAgaWYoIG51bGwgPT0gdikNCiAgICB7DQogICAg IHY9IG5ldyBieXRlW3NpemVPZlZhcmlhbnRdOyAvL1NpemUgb2YgYSB2YXJpYW50DQogICAgIG9z PTA7DQogICAgfQ0KDQogICAgIGlmKCBudWxsPT0gbykNCiAgICAgeyAvL3RvIGJlIHNhZmUuDQog ICAgICB2W29zKzBdID0gMTsgLy9WVF9OVUxMDQogICAgICB2W29zKzFdID0gMDsNCiAgICAgfQ0K ICAgICBlbHNlIGlmKG8gIGluc3RhbmNlb2YgamF2YS5sYW5nLkJvb2xlYW4pIC8vVlRfUjgNCiAg ICAgew0KICAgICAgdltvcyswXSA9IDExOyAvL1ZUX0JPT0wNCiAgICAgIHZbb3MrMV0gPSAwOw0K ICAgICAgYnl0ZSB4PSAoYnl0ZSkoICgoKEJvb2xlYW4pIG8pLmJvb2xlYW5WYWx1ZSgpKSA/IDB4 ZmY6IDApOw0KICAgICAgdltvcys4XT0geDsNCiAgICAgIHZbb3MrOV09IHg7DQogICAgICB2W29z KzEwXT0geDsNCiAgICAgIHZbb3MrMTFdPSB4Ow0KICAgICB9DQogICAgIGVsc2UgaWYobyAgaW5z dGFuY2VvZiBqYXZhLmxhbmcuSW50ZWdlcikgLy9WVF9SOA0KICAgICB7DQogICAgICB2W29zKzBd ID0gMzsgLy9WVF9JNA0KICAgICAgIHZbb3MrMV0gPSAwOw0KICAgICAgaW50IHg9ICgoSW50ZWdl cilvKS5pbnRWYWx1ZSgpOw0KICAgICAgdltvcys4XT0gKGJ5dGUpeDsNCiAgICAgIHZbb3MrOV09 IChieXRlKSgoeD4+PjgpICYgMHhmZik7DQogICAgICB2W29zKzEwXT0gKGJ5dGUpKCh4Pj4+MTYp ICYgMHhmZik7DQogICAgICB2W29zKzExXT0gKGJ5dGUpKCh4Pj4+MjQpICYgMHhmZik7DQogICAg IH0NCiAgICAgZWxzZSBpZiggbyBpbnN0YW5jZW9mIGphdmEubGFuZy5TdHJpbmcpDQogICAgIHsN CiAgICAgIHZbb3MrMF0gPSA4OyAvL1ZUX0JTVFINCiAgICAgIHZbb3MrMV0gPSAwOw0KICAgICAg Ynl0ZVtdIHBicz0gbmF0aXZlQ29udmVydFRvQlN0cmluZyggKFN0cmluZykgbyApOw0KICAgICAg dltvcys4XT0gcGJzWzBdOw0KICAgICAgdltvcys5XT0gcGJzWzFdOw0KICAgICAgdltvcysxMF09 IHBic1syXTsNCiAgICAgIHZbb3MrMTFdPSBwYnNbM107DQogICAgIH0NCiAgICAgZWxzZSBpZihv ICBpbnN0YW5jZW9mIGphdmEubGFuZy5Mb25nKSAvL1ZUX1I4DQogICAgIHsgLy9DT00gaGFzIG5v IGxvbmcgdHlwZSBzbyBwcm9tb3RlIGl0IHRvIGRvdWJsZSB3aGljaCBjYW4gY29udGFpbiBpdC4N CiAgICAgIHZbb3MrMF0gPSA1OyAvL1ZUX1I4DQogICAgIAl2W29zKzFdID0gMDsNCiAgICAgIGxv bmcgeD0gRG91YmxlLmRvdWJsZVRvTG9uZ0JpdHMoKGRvdWJsZSkoKChMb25nKW8pLmxvbmdWYWx1 ZSgpKSk7DQogICAgICB2W29zKzhdPSAoYnl0ZSl4Ow0KICAgICAgdltvcys5XT0gKGJ5dGUpKCh4 Pj4+OCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTBdPSAoYnl0ZSkoKHg+Pj4xNikgJiAweGZmKTsN CiAgICAgIHZbb3MrMTFdPSAoYnl0ZSkoKHg+Pj4yNCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTJd PSAoYnl0ZSkoKHg+Pj4zMikgJiAweGZmKTsNCiAgICAgIHZbb3MrMTNdPSAoYnl0ZSkoKHg+Pj40 MCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTRdPSAoYnl0ZSkoKHg+Pj40OCkgJiAweGZmKTsNCiAg ICAgIHZbb3MrMTVdPSAoYnl0ZSkoKHg+Pj41NikgJiAweGZmKTsNCiAgICAgfQ0KICAgICBlbHNl IGlmKG8gaW5zdGFuY2VvZiBqYXZhLmxhbmcuU2hvcnQpDQogICAgIHsNCiAgICAgIHZbb3MrMF0g PSAyOyAvL1ZUX0kyDQogICAgICB2W29zKzFdID0gMDsNCiAgICAgIGludCB4PSAoKFNob3J0KW8p LmludFZhbHVlKCk7DQogICAgICB2W29zKzhdPSAoYnl0ZSl4Ow0KICAgICAgdltvcys5XT0gKGJ5 dGUpKCh4Pj4+OCkgJiAweGZmKTsNCiAgICAgIHZbb3MrMTBdPSAoYnl0ZSkoKHg+Pj4xNikgJiAw eGZmKTsNCiAgICAgIHZbb3MrMTFdPSAoYnl0ZSkoKHg+Pj4yNCkgJiAweGZmKTsNCiAgICAgfQ0K ICAgICBlbHNlIGlmKG8gaW5zdGFuY2VvZiBqYXZhLmxhbmcuRmxvYXQpDQogICAgIHsNCiAgICAg IHZbb3MrMF0gPSA0OyAvL1ZUX1I0DQogICAgICAgdltvcysxXSA9IDA7DQogICAgICAgaW50IHg9 IEZsb2F0LmZsb2F0VG9JbnRCaXRzKCgoRmxvYXQpbykuZmxvYXRWYWx1ZSgpKTsNCiAgICAgICB2 W29zKzhdPSAoYnl0ZSl4Ow0KICAgICAgIHZbb3MrOV09IChieXRlKSgoeD4+PjgpICYgMHhmZik7 DQogICAgICAgdltvcysxMF09IChieXRlKSgoeD4+PjE2KSAmIDB4ZmYpOw0KICAgICAgIHZbb3Mr MTFdPSAoYnl0ZSkoKHg+Pj4yNCkgJiAweGZmKTsNCiAgICAgfQ0KICAgICBlbHNlIGlmKG8gIGlu c3RhbmNlb2YgamF2YS5sYW5nLkRvdWJsZSkgLy9WVF9SOA0KICAgICB7DQogICAgICB2W29zKzBd ID0gNTsgLy9WVF9SOA0KICAgICAgdltvcysxXSA9IDA7DQogICAgICBsb25nIHg9IERvdWJsZS5k b3VibGVUb0xvbmdCaXRzKCgoRG91YmxlKW8pLmRvdWJsZVZhbHVlKCkpOw0KICAgICAgdltvcys4 XT0gKGJ5dGUpeDsNCiAgICAgIHZbb3MrOV09IChieXRlKSgoeD4+PjgpICYgMHhmZik7DQogICAg ICB2W29zKzEwXT0gKGJ5dGUpKCh4Pj4+MTYpICYgMHhmZik7DQogICAgICB2W29zKzExXT0gKGJ5 dGUpKCh4Pj4+MjQpICYgMHhmZik7DQogICAgICB2W29zKzEyXT0gKGJ5dGUpKCh4Pj4+MzIpICYg MHhmZik7DQogICAgICB2W29zKzEzXT0gKGJ5dGUpKCh4Pj4+NDApICYgMHhmZik7DQogICAgICB2 W29zKzE0XT0gKGJ5dGUpKCh4Pj4+NDgpICYgMHhmZik7DQogICAgICB2W29zKzE1XT0gKGJ5dGUp KCh4Pj4+NTYpICYgMHhmZik7DQogICAgIH0NCiAgICAgZWxzZSBpZihvICBpbnN0YW5jZW9mIGph dmEubGFuZy5CeXRlKQ0KICAgICB7DQogICAgICB2W29zKzBdID0gMTc7IC8vVlRfVUkxDQogICAg ICB2W29zKzFdID0gMDsNCiAgICAgIGJ5dGUgeD0gKChCeXRlKW8pLmJ5dGVWYWx1ZSgpOw0KICAg ICAgdltvcys4XT0geDsNCiAgICAgfQ0KICAgICBlbHNlIGlmKG8gIGluc3RhbmNlb2YgamF2YS5s YW5nLkNoYXJhY3RlcikNCiAgICAgew0KICAgICAgdltvcyswXSA9IDE3OyAvL1ZUX1VJMQ0KICAg ICAgdltvcysxXSA9IDA7DQogICAgICBieXRlIHg9IChieXRlKSAoKENoYXJhY3RlcilvKS5jaGFy VmFsdWUoKTsNCiAgICAgIHZbb3MrOF09IHg7DQogICAgIH0NCiAgICAgZWxzZSBpZihvICBpbnN0 YW5jZW9mIGphdmEubGFuZy5Wb2lkKQ0KICAgICB7DQogICAgICB2W29zKzBdID0gMTsgLy9WVF9O VUxMDQogICAgICB2W29zKzFdID0gMDsNCiAgICAgfQ0KICAgICBlbHNlIGlmKCBvLmdldENsYXNz KCkuaXNBcnJheSgpKQ0KICAgICB7DQogICAgICAvLyBBcnJheUluZm8gYWk9IG5ldyBBcnJheUlu Zm8obyk7DQogICAgICAvLyB2PSBhaS50b1ZhcmlhbnQoKTsNCiAgICAgIHRocm93IG5ldyBTT0FQ RXhjZXB0aW9uKENvbnN0YW50cy5GQVVMVF9DT0RFX1NFUlZFUiwgIkN1cnJlbnRseSBhcnJheXMg YXJlIHVuc3VwcG9ydGVkLCAgdHlwZSByZWNlaXZlZDoiICsgby5nZXRDbGFzcygpLmdldE5hbWUo KSk7DQogICAgIH0NCiAgICAgZWxzZQ0KICAgICB7DQogICAgICB0aHJvdyBuZXcgU09BUEV4Y2Vw dGlvbihDb25zdGFudHMuRkFVTFRfQ09ERV9TRVJWRVIsICJDdXJyZW50bHkgdW5zdXBwb3J0ZWQg ZGF0YSB0eXBlIHJlY2VpdmVkOiIgKyBvLmdldENsYXNzKCkuZ2V0TmFtZSgpKTsNCiAgICAgLyoN CiAgICAgIC8vIHZbb3MrMF0gPSA5OyAvL1ZUX0RJU1BBVENIIGZvciBvYmplY3QNCiAgICAgIC8v IHZbb3MrMV0gPSAwOw0KDQogICAgICBieXRlW10gY3BwcmVmPSBudWxsOw0KDQogICAgICBpZihv ICBpbnN0YW5jZW9mICApDQogICAgICB7DQogICAgICAgLy8gU3lzdGVtLmFycmF5Y29weShjcHBy ZWYsMCx2LDgsIGNwcHJlZi5sZW5ndGgpOw0KICAgICAgfQ0KICAgICAgZWxzZSBpZihvICApIC8v U3BlY2lmaWMgcmVxdWVzdCB0byByZXR1cm4gYmFjayBlbXB0eQ0KICAgICAgew0KICAgICAgICB2 W29zKzBdID0gMDsgLy9WVF9FTVBUWQ0KICAgICAgICB2W29zKzFdID0gMDsNCiAgICAgIH0NCiAg ICAgIGVsc2UNCiAgICAgIHsNCiAgICAgICAgLy8gY3BwcmVmPSBuYXRpdmVPYmplY3RUb1Zhcmlh bnQobyk7DQogICAgICAgIFN5c3RlbS5hcnJheWNvcHkoY3BwcmVmLDAsdiw4LCBjcHByZWYubGVu Z3RoKTsNCiAgICAgIH0NCiAgICAgKi8NCg0KICAgICB9DQogICAgcmV0dXJuIHY7DQogIH0NCg0K fSAvL0VuZG9mIFJQQ1Byb3ZpZGVyDQo= ------_=_NextPart_000_01C29AA5.6578EBA0 Content-Type: text/plain; charset=us-ascii -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> ------_=_NextPart_000_01C29AA5.6578EBA0-- From thomasstokes@example.com Tue Dec 03 12:36:54 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 79116 invoked by uid 500); 3 Dec 2002 12:36:52 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 56578 invoked from network); 3 Dec 2002 07:43:55 -0000 Date: Tue, 3 Dec 2002 07:43:41 +0000 Subject: Re: The organization of xml.apache.org Content-Type: text/plain; charset=US-ASCII; format=flowed Mime-Version: 1.0 (Apple Message framework v548) Cc: <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com>, <thomasstokes@example.com> To: thomasstokes@example.com From: Matt Sergeant <thomasstokes@example.com> In-Reply-To: <014801c29a47$8371e430$0a00a8c0@boo> Message-Id: <thomasstokes@example.com> Content-Transfer-Encoding: 7bit X-Mailer: Apple Mail (2.548) X-SMTPD: qpsmtpd/0.12, http://develooper.com/code/qpsmtpd/ X-Virus-Checked: Checked X-Spam-Check-By: mail.sergeant.org X-Spam-Status: No, hits=-0.8 required=5.0 tests=CARRIAGE_RETURNS,IN_REP_TO,SUSPICIOUS_RECIPS,USER_AGENT_APPLEMAIL,VERY_SUSP_RECIPS version=2.50-cvs X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Please note that axkit's core dev list is thomasstokes@example.com or thomasstokes@example.com (note the extra "el" :-). I've had to forward all mails so far, so if you could all change follow ups that would be great. -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 12:41:26 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 81932 invoked by uid 500); 3 Dec 2002 12:41:25 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 81920 invoked from network); 3 Dec 2002 12:41:25 -0000 Date: Tue, 03 Dec 2002 07:45:34 -0500 From: Scott Nichol <thomasstokes@example.com> Subject: Re: Again: Attachments through COMProvider To: thomasstokes@example.com Message-id: <006e01c29ac9$df524510$c900a8c0@fastdata> MIME-version: 1.0 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4920.2300 X-Mailer: Microsoft Outlook Express 5.50.4920.2300 Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: 8BIT X-Priority: 3 X-MSMail-priority: Normal References: <C59B57F38112D311A47A0008C7F33BA102AA8692@TAMFS11> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Lief, Thank you for being both patient and persistent! My one question about this is that the option you add applies to Strings, which are returned from COM objects as Unicode. This would not allow binary files to be returned unless the COM object does some encoding on the file, such as Base64. Would we be able to implement this for another data type (array of byte?) that would support arbitrary files? Scott Nichol ----- Original Message ----- From: "Leif Nilsson TACMa" <thomasstokes@example.com> To: <thomasstokes@example.com> Sent: Tuesday, December 03, 2002 3:24 AM Subject: Again: Attachments through COMProvider Hi! Since no one seems to object I suggest this change to be added. /Leif > -----Original Message----- > From: Leif Nilsson TACMa > Sent: Monday, October 28, 2002 19:10 > To: 'thomasstokes@example.com' > Subject: Attachments through COMProvider > > Hi! > > We send XML-files through Apache Soap. > There is a COM-server accessed via Apaches COMProvider. > The best way to send files as discussed is through attachments. > The only way I have figured out to do this via the ComProvider is to alter > the > org.apache.soap.providers.com.RPCProvider.java code. > > I'm sure there is a better way but I will explain what I have done. > I have added an option for the COmProvider DeploymentDescriptor > (attachString), which if present and set to true will cause > Strings returned from COM-servers to be packaged in a DataHandler object > using UTF-8 coding. > > Any suggestions for how to do this better / cleaner ? > Cf. attached java code. > <<Original RPCProvider.java>> <<RPCProvider.java>> > > Leif Nilsson > Software Engineer > > TAC AB > Jägershillgatan 18 > SE-213 75 Malmö, Sweden > Direct +1-415-678-4794 > Fax +1-415-678-4794 > Mobile +1-415-678-4794 > www.tac-global.com > > This email is intended only for the use of the individual or entity to > whom it is addressed. It may contain information that is privileged, > confidential or otherwise protected from disclosure under applicable law. > If you have received this transmission in error, please delete it > immediately and notify me by mailing me. > > ------------------------------------------------------------------------ -------- > -- > To unsubscribe, e-mail: <mailto:thomasstokes@example.com> > For additional commands, e-mail: <mailto:thomasstokes@example.com> -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 16:53:20 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 77779 invoked by uid 500); 3 Dec 2002 16:53:20 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 43551 invoked from network); 3 Dec 2002 16:33:25 -0000 Message-ID: <thomasstokes@example.com> Date: Tue, 03 Dec 2002 11:33:24 -0500 From: Ryan Hoegg <thomasstokes@example.com> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.0.0) Gecko/20020530 X-Accept-Language: en-us, en MIME-Version: 1.0 To: thomasstokes@example.com Cc: Sam Ruby <thomasstokes@example.com>, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com, thomasstokes@example.com Subject: Re: The organization of xml.apache.org References: <014801c29a47$8371e430$0a00a8c0@boo> <thomasstokes@example.com> <thomasstokes@example.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Andrew C. Oliver wrote: >> What I like most about such a proposal is that it is completely up to >> the commiters to decide whether they want opt in or opt out. >> >> What do others think? > > It continues to sound reasonable to me, but I'd personally like to see > the Jakarta "brand" continue. Not sure how to *do* that... I don't > think the same applies to XML. Note that I asked like the tapestry > guys "want to be top level" and it was "well no one will > find us there, we want Jakarta"... They're probably right quite > honestly. Half the people I know barely know there is an > XML.apache.org... > > -Andy Not to pollute the discussion too much, but I just recently became a part of one xml.apache.org project, and have been a member of the Apache community only about 6 months. Before I got involved, though, I was using both Jakarta and xml.apache.org software for quite a while. To me the xml.apache.org brand was always a "subsidiary brand" of ASF, as was Jakarta. It carries enough weight that I have looked here first when I need a piece of software for a project, and will try an Apache project out before a random Sourceforge one every time. $0.02 -- Ryan Hoegg ISIS Networks http://www.isisnetworks.net -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 17:53:34 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 50653 invoked by uid 500); 3 Dec 2002 17:53:34 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 39260 invoked by uid 500); 3 Dec 2002 17:45:13 -0000 Delivered-To: thomasstokes@example.com Date: 3 Dec 2002 17:45:12 -0000 Message-ID: <thomasstokes@example.com> From: thomasstokes@example.com To: thomasstokes@example.com Subject: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N snichol 2002/12/03 09:45:11 Modified: java/src/org/apache/soap/util/xml XMLParserUtils.java Log: Only set Xerces-specific features if we believe we are using a Xerces factory. Rather than throwing an exception when a feature is set on the factory, parsers throw when a parser is actually instantiated, which is a problem. Thanks to Pavel for finding this problem and suggesting the fix. Revision Changes Path 1.10 +22 -3 xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java Index: XMLParserUtils.java =================================================================== RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- XMLParserUtils.java 21 Nov 2002 16:36:58 -0000 1.9 +++ XMLParserUtils.java 3 Dec 2002 17:45:11 -0000 1.10 @@ -161,10 +161,29 @@ dbf.setExpandEntityReferences(expandEntityReferences); try { - dbf.setAttribute("http://apache.org/xml/features/dom/defer-node-expansion", - Boolean.FALSE); + // Some parsers don't throw an exception here, but throw one when the + // factory creates an instance instead, so try to only do this for + // Xerces. + if (dbf.getClass().getName().equals("org.apache.xerces.jaxp.DocumentBuilderFactory")) { + // speed up processing by turning off deferred node expansion + dbf.setAttribute("http://apache.org/xml/features/dom/defer-node-expansion", + Boolean.FALSE); + } } catch (IllegalArgumentException e) { - // parsers that do not support this option with throw this exception + // parsers that do not support this option *should* throw this exception + } + + try { + // Some parsers don't throw an exception here, but throw one when the + // factory creates an instance instead, so try to only do this for + // Xerces. + if (dbf.getClass().getName().equals("org.apache.xerces.jaxp.DocumentBuilderFactory")) { + // future: protect against DOS attacks through DOCTYPE processing + dbf.setAttribute("http://apache.org/xml/features/disallow-doctype-decl", + Boolean.TRUE); + } + } catch (IllegalArgumentException e) { + // parsers that do not support this option *should* throw this exception } /* -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 17:54:27 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 52177 invoked by uid 500); 3 Dec 2002 17:54:27 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 52168 invoked from network); 3 Dec 2002 17:54:26 -0000 Date: Tue, 03 Dec 2002 12:58:40 -0500 From: Scott Nichol <thomasstokes@example.com> Subject: Re: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java To: thomasstokes@example.com Message-id: <086d01c29af5$9cd4c510$c900a8c0@fastdata> MIME-version: 1.0 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4920.2300 X-Mailer: Microsoft Outlook Express 5.50.4920.2300 Content-type: text/plain; charset=Windows-1252 Content-transfer-encoding: 7BIT X-Priority: 3 X-MSMail-priority: Normal References: <thomasstokes@example.com> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Pavel, Can you test with these changes? Thanks. Scott Nichol ----- Original Message ----- From: <thomasstokes@example.com> To: <thomasstokes@example.com> Sent: Tuesday, December 03, 2002 12:45 PM Subject: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java > snichol 2002/12/03 09:45:11 > > Modified: java/src/org/apache/soap/util/xml XMLParserUtils.java > Log: > Only set Xerces-specific features if we believe we are using a Xerces > factory. Rather than throwing an exception when a feature is set on the > factory, parsers throw when a parser is actually instantiated, which is > a problem. > > Thanks to Pavel for finding this problem and suggesting the fix. > > Revision Changes Path > 1.10 +22 -3 xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java > > Index: XMLParserUtils.java > =================================================================== > RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java ,v > retrieving revision 1.9 > retrieving revision 1.10 > diff -u -r1.9 -r1.10 > --- XMLParserUtils.java 21 Nov 2002 16:36:58 -0000 1.9 > +++ XMLParserUtils.java 3 Dec 2002 17:45:11 -0000 1.10 > @@ -161,10 +161,29 @@ > dbf.setExpandEntityReferences(expandEntityReferences); > > try { > - dbf.setAttribute("http://apache.org/xml/features/dom/defer-node-expansio n", > - Boolean.FALSE); > + // Some parsers don't throw an exception here, but throw one when the > + // factory creates an instance instead, so try to only do this for > + // Xerces. > + if (dbf.getClass().getName().equals("org.apache.xerces.jaxp.DocumentBuilder Factory")) { > + // speed up processing by turning off deferred node expansion > + dbf.setAttribute("http://apache.org/xml/features/dom/defer-node-expansio n", > + Boolean.FALSE); > + } > } catch (IllegalArgumentException e) { > - // parsers that do not support this option with throw this exception > + // parsers that do not support this option *should* throw this exception > + } > + > + try { > + // Some parsers don't throw an exception here, but throw one when the > + // factory creates an instance instead, so try to only do this for > + // Xerces. > + if (dbf.getClass().getName().equals("org.apache.xerces.jaxp.DocumentBuilder Factory")) { > + // future: protect against DOS attacks through DOCTYPE processing > + dbf.setAttribute("http://apache.org/xml/features/disallow-doctype-decl", > + Boolean.TRUE); > + } > + } catch (IllegalArgumentException e) { > + // parsers that do not support this option *should* throw this exception > } > > /* > > > > > -- > To unsubscribe, e-mail: <mailto:thomasstokes@example.com> > For additional commands, e-mail: <mailto:thomasstokes@example.com> > > -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 18:24:40 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 82508 invoked by uid 500); 3 Dec 2002 18:24:39 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 82457 invoked from network); 3 Dec 2002 18:24:38 -0000 Date: Tue, 03 Dec 2002 13:28:48 -0500 From: Scott Nichol <thomasstokes@example.com> Subject: Fw: Security Alert - Xerces] To: thomasstokes@example.com Message-id: <087c01c29af9$d2865b70$c900a8c0@fastdata> MIME-version: 1.0 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4920.2300 X-Mailer: Microsoft Outlook Express 5.50.4920.2300 Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: 7BIT X-Priority: 3 X-MSMail-priority: Normal X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N This is the "future" feature being set for Xerces. Scott Nichol ----- Original Message ----- From: "Ted Leung" <thomasstokes@example.com> To: <thomasstokes@example.com> Cc: <thomasstokes@example.com>; <thomasstokes@example.com> Sent: Tuesday, December 03, 2002 10:31 AM Subject: Re: Security Alert - Xerces] > The next version of Xerces-J will include a parser feature that will > turn off DOCTYPE processing. When activated, this feature will > prevent the entity expansion that causes this vulnerability. The Axis > team will be able to use this feature to close the hole. > > The URI for the parser feature will be > "http://apache.org/xml/features/disallow-doctype-decl" > > Ted > ----- Original Message ----- > From: "Ben Laurie" <thomasstokes@example.com> > To: "Ted Leung" <thomasstokes@example.com> > Sent: Wednesday, November 27, 2002 3:37 AM > Subject: [Fwd: Security Alert - Xerces] > > > > Here ya go. Please keep security@ copied on any followups... > > > > Cheers, > > > > Ben. > > > > -- > > http://www.apache-ssl.org/ben.html http://www.thebunker.net/ > > > > "There is no limit to what a man can do or how far he can go if he > > doesn't mind who gets the credit." - Robert Woodruff > > > > -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 21:18:35 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 64168 invoked by uid 500); 3 Dec 2002 21:18:34 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 59717 invoked by uid 500); 3 Dec 2002 21:16:09 -0000 Delivered-To: thomasstokes@example.com Date: 3 Dec 2002 21:16:08 -0000 Message-ID: <thomasstokes@example.com> From: thomasstokes@example.com To: thomasstokes@example.com Subject: cvs commit: xml-soap/java/src/org/apache/soap/util/net HTTPUtils.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N snichol 2002/12/03 13:16:08 Modified: java/src/org/apache/soap/util/net HTTPUtils.java Log: Fix bug in one of the post methods in which the copy buffers were not being passed along. Revision Changes Path 1.41 +1 -1 xml-soap/java/src/org/apache/soap/util/net/HTTPUtils.java Index: HTTPUtils.java =================================================================== RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/net/HTTPUtils.java,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- HTTPUtils.java 29 Nov 2002 21:42:39 -0000 1.40 +++ HTTPUtils.java 3 Dec 2002 21:16:08 -0000 1.41 @@ -374,7 +374,7 @@ StringBuffer responseCopy) throws IOException, SOAPException { return post(url, request, timeout, httpProxyHost, httpProxyPort, - outputBufferSize, tcpNoDelay, null, null, 0); + outputBufferSize, tcpNoDelay, requestCopy, responseCopy, 0); } /** -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Tue Dec 03 21:20:59 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 70518 invoked by uid 500); 3 Dec 2002 21:20:58 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 62137 invoked by uid 500); 3 Dec 2002 21:16:53 -0000 Delivered-To: thomasstokes@example.com Date: 3 Dec 2002 21:16:52 -0000 Message-ID: <thomasstokes@example.com> From: thomasstokes@example.com To: thomasstokes@example.com Subject: cvs commit: xml-soap/java/samples/multiref GetCircularBean.java X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N snichol 2002/12/03 13:16:52 Modified: java/samples/multiref GetCircularBean.java Log: Add use of request/response copy buffers. Revision Changes Path 1.2 +15 -0 xml-soap/java/samples/multiref/GetCircularBean.java Index: GetCircularBean.java =================================================================== RCS file: /home/cvs/xml-soap/java/samples/multiref/GetCircularBean.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- GetCircularBean.java 28 Jun 2002 02:33:16 -0000 1.1 +++ GetCircularBean.java 3 Dec 2002 21:16:52 -0000 1.2 @@ -65,6 +65,7 @@ import org.apache.soap.encoding.*; import org.apache.soap.encoding.soapenc.*; import org.apache.soap.rpc.*; +import org.apache.soap.transport.http.SOAPHTTPConnection; /** * See \samples\multiref\readme for info. @@ -84,6 +85,13 @@ SOAPMappingRegistry smr = new SOAPMappingRegistry(); BeanMultiRefSerializer beanSer = new BeanMultiRefSerializer(); + // Set up debug buffers + StringBuffer requestBuffer = new StringBuffer(1024); + StringBuffer responseBuffer = new StringBuffer(1024); + SOAPHTTPConnection shc = new SOAPHTTPConnection(); + shc.setRequestCopy(requestBuffer); + shc.setResponseCopy(responseBuffer); + // Map the types. smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("urn:xml-soap-multiref-sample", "circularbean"), @@ -96,6 +104,7 @@ call.setTargetObjectURI("urn:MultiRefSample"); call.setMethodName("getCircularBean"); call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC); + call.setSOAPTransport(shc); Vector params = new Vector(); call.setParams(params); @@ -123,5 +132,11 @@ System.err.println("Generated fault: " + fault); } + + // Display the request and response + System.out.println("********** Request *********"); + System.out.println(shc.getRequestCopy().toString()); + System.out.println("********** Response *********"); + System.out.println(shc.getResponseCopy().toString()); } } -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Wed Dec 04 03:35:14 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 99706 invoked by uid 500); 4 Dec 2002 03:35:14 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Delivered-To: moderator for thomasstokes@example.com Received: (qmail 98574 invoked by uid 500); 4 Dec 2002 03:33:03 -0000 Delivered-To: thomasstokes@example.com Date: 4 Dec 2002 03:33:01 -0000 Message-ID: <thomasstokes@example.com> From: thomasstokes@example.com To: thomasstokes@example.com Subject: cvs commit: xml-soap/java/docs changes.html X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N snichol 2002/12/03 19:33:01 Modified: java/src/org/apache/soap/server RPCRouter.java java/docs changes.html Log: Serialize method return values using their actual type rather than the declared type when the declared type is not a primitive. This may break existing services, e.g. where methods return subclasses of the declared return type, but a serializer is registered only for the declared return type. Revision Changes Path 1.18 +3 -1 xml-soap/java/src/org/apache/soap/server/RPCRouter.java Index: RPCRouter.java =================================================================== RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/server/RPCRouter.java,v retrieving revision 1.17 retrieving revision 1.18 diff -u -r1.17 -r1.18 --- RPCRouter.java 25 May 2001 19:25:28 -0000 1.17 +++ RPCRouter.java 4 Dec 2002 03:33:01 -0000 1.18 @@ -143,7 +143,9 @@ throw e; } - result = new Bean (m.getReturnType (), m.invoke (targetObject, args)); + Object ret = m.invoke(targetObject, args); + Class retType = m.getReturnType(); + result = new Bean(retType.isPrimitive() ? retType : ret.getClass(), ret); } else { // find the class that provides the BSF services (done // this way via reflection to avoid a compile-time dependency on BSF) 1.52 +6 -1 xml-soap/java/docs/changes.html Index: changes.html =================================================================== RCS file: /home/cvs/xml-soap/java/docs/changes.html,v retrieving revision 1.51 retrieving revision 1.52 diff -u -r1.51 -r1.52 --- changes.html 19 Nov 2002 02:47:38 -0000 1.51 +++ changes.html 4 Dec 2002 03:33:01 -0000 1.52 @@ -90,12 +90,17 @@ of Maps.</li> <li>Read HTTP[S] proxy information from system properties if not explicitly specified.</li> - <li>Support messaging in the Stateless EJB and CORBA provieders. Throw an + <li>Support messaging in the Stateless EJB and CORBA providers. Throw an exception for messaging calls in the Stateful EJB and Entity EJB providers rather than throwing a NPE.</li> <li>Add client support for HTTP redirects.</li> <li>Allow additional transport headers to be specified by client.</li> <li>Add client support for one-way (as defined in WSDL) calls.</li> + <li>Serialize method return values using their actual type rather than + the declared type when the declared type is not a primitive. This may + break existing services, e.g. where methods return subclasses of the + declared return type, but a serializer is registered only for the + declared return type.</li> </ul> </li> </ul> -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Wed Dec 04 12:32:45 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 85127 invoked by uid 500); 4 Dec 2002 12:32:44 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 85106 invoked from network); 4 Dec 2002 12:32:43 -0000 Subject: RE: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Date: Wed, 4 Dec 2002 14:33:57 +0200 content-class: urn:content-classes:message X-MimeOLE: Produced By Microsoft Exchange V6.0.6249.0 Message-ID: <thomasstokes@example.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java Thread-Index: AcKa9TuExOO4O7SVQ0yZt7tYoAwFTQAm78bA From: "Pavel Ausianik" <thomasstokes@example.com> To: <thomasstokes@example.com> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Scott, Thanks, no more problems now Another question was raised several times already. Can official public build of Xerces 2.3.2 be released? I remember you've asked other committers, but nobody answered. But at least nobody complains... Pavel -----Original Message----- From: Scott Nichol [mailto:thomasstokes@example.com]=20 Sent: Tuesday, December 03, 2002 7:59 PM To: thomasstokes@example.com Subject: Re: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java Pavel, Can you test with these changes? Thanks. Scott Nichol ----- Original Message ----- From: <thomasstokes@example.com> To: <thomasstokes@example.com> Sent: Tuesday, December 03, 2002 12:45 PM Subject: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java > snichol 2002/12/03 09:45:11 > > Modified: java/src/org/apache/soap/util/xml XMLParserUtils.java > Log: > Only set Xerces-specific features if we believe we are using a Xerces > factory. Rather than throwing an exception when a feature is set on the > factory, parsers throw when a parser is actually instantiated, which is > a problem. > > Thanks to Pavel for finding this problem and suggesting the fix. > > Revision Changes Path > 1.10 +22 -3 xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java > > Index: XMLParserUtils.java > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java ,v > retrieving revision 1.9 > retrieving revision 1.10 > diff -u -r1.9 -r1.10 > --- XMLParserUtils.java 21 Nov 2002 16:36:58 -0000 1.9 > +++ XMLParserUtils.java 3 Dec 2002 17:45:11 -0000 1.10 > @@ -161,10 +161,29 @@ > dbf.setExpandEntityReferences(expandEntityReferences); > > try { > - dbf.setAttribute("http://apache.org/xml/features/dom/defer-node-expansio n", > - Boolean.FALSE); > + // Some parsers don't throw an exception here, but throw one when the > + // factory creates an instance instead, so try to only do this for > + // Xerces. > + if (dbf.getClass().getName().equals("org.apache.xerces.jaxp.DocumentBuilder Factory")) { > + // speed up processing by turning off deferred node expansion > + dbf.setAttribute("http://apache.org/xml/features/dom/defer-node-expansio n", > + Boolean.FALSE); > + } > } catch (IllegalArgumentException e) { > - // parsers that do not support this option with throw this exception > + // parsers that do not support this option *should* throw this exception > + } > + > + try { > + // Some parsers don't throw an exception here, but throw one when the > + // factory creates an instance instead, so try to only do this for > + // Xerces. > + if (dbf.getClass().getName().equals("org.apache.xerces.jaxp.DocumentBuilder Factory")) { > + // future: protect against DOS attacks through DOCTYPE processing > + dbf.setAttribute("http://apache.org/xml/features/disallow-doctype-decl", > + Boolean.TRUE); > + } > + } catch (IllegalArgumentException e) { > + // parsers that do not support this option *should* throw this exception > } > > /* > > > > > -- > To unsubscribe, e-mail: <mailto:thomasstokes@example.com> > For additional commands, e-mail: <mailto:thomasstokes@example.com> > > -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> -- To unsubscribe, e-mail: <mailto:thomasstokes@example.com> For additional commands, e-mail: <mailto:thomasstokes@example.com> From thomasstokes@example.com Wed Dec 04 14:03:04 2002 Return-Path: <thomasstokes@example.com> Delivered-To: thomasstokes@example.com Received: (qmail 75085 invoked by uid 500); 4 Dec 2002 14:03:04 -0000 Mailing-List: contact thomasstokes@example.com; run by ezmlm Precedence: bulk Reply-To: thomasstokes@example.com list-help: <mailto:thomasstokes@example.com> list-unsubscribe: <mailto:thomasstokes@example.com> list-post: <mailto:thomasstokes@example.com> Delivered-To: mailing list thomasstokes@example.com Received: (qmail 75034 invoked from network); 4 Dec 2002 14:03:03 -0000 Date: Wed, 04 Dec 2002 09:03:43 -0500 From: Scott Nichol <thomasstokes@example.com> Subject: Re: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java To: thomasstokes@example.com Message-id: <002a01c29b9d$f4df7090$c900a8c0@fastdata> MIME-version: 1.0 X-MIMEOLE: Produced By Microsoft MimeOLE V5.50.4920.2300 X-Mailer: Microsoft Outlook Express 5.50.4920.2300 Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: 7BIT X-Priority: 3 X-MSMail-priority: Normal References: <thomasstokes@example.com> X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N I can put it to a vote, but even if approved, I need a more experienced committer to volunteer to be release manager, since I don't know everything that must be done. The timing may be less than ideal as well, since Axis is gearing up to release 1.1 before the end of the year. Some of the potential release managers are very busy on that project, and it's not clear whether we want releases of SOAP and Axis to occur at the same time. Scott Nichol ----- Original Message ----- From: "Pavel Ausianik" <thomasstokes@example.com> To: <thomasstokes@example.com> Sent: Wednesday, December 04, 2002 7:33 AM Subject: RE: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java Scott, Thanks, no more problems now Another question was raised several times already. Can official public build of Xerces 2.3.2 be released? I remember you've asked other committers, but nobody answered. But at least nobody complains... Pavel -----Original Message----- From: Scott Nichol [mailto:thomasstokes@example.com] Sent: Tuesday, December 03, 2002 7:59 PM To: thomasstokes@example.com Subject: Re: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java Pavel, Can you test with these changes? Thanks. Scott Nichol ----- Original Message ----- From: <thomasstokes@example.com> To: <thomasstokes@example.com> Sent: Tuesday, December 03, 2002 12:45 PM Subject: cvs commit: xml-soap/java/src/org/apache/soap/util/xml XMLParserUtils.java > snichol 2002/12/03 09:45:11 > > Modified: java/src/org/apache/soap/util/xml XMLParserUtils.java > Log: > Only set Xerces-specific features if we believe we are using a Xerces > factory. Rather than throwing an exception when a feature is set on the > factory, parsers throw when a parser is actually instantiated, which is > a problem. > > Thanks to Pavel for finding this problem and suggesting the fix. > > Revision Changes Path > 1.10 +22 -3 xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java > > Index: XMLParserUtils.java > =================================================================== > RCS file: /home/cvs/xml-soap/java/src/org/apache/soap/util/xml/XMLParserUtils.java ,v > retrieving revision 1.9 > retrieving revision 1.10 > diff
{'source': 'Apache Software Foundation Public Mail Archives'}