Return-Path: Delivered-To: apmail-jakarta-commons-dev-archive@apache.org Received: (qmail 27008 invoked from network); 21 Aug 2002 15:50:29 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 21 Aug 2002 15:50:29 -0000 Received: (qmail 13233 invoked by uid 97); 21 Aug 2002 15:50:55 -0000 Delivered-To: qmlist-jakarta-archive-commons-dev@jakarta.apache.org Received: (qmail 13181 invoked by uid 97); 21 Aug 2002 15:50:54 -0000 Mailing-List: contact commons-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jakarta Commons Developers List" Reply-To: "Jakarta Commons Developers List" Delivered-To: mailing list commons-dev@jakarta.apache.org Received: (qmail 13167 invoked by uid 98); 21 Aug 2002 15:50:54 -0000 X-Antivirus: nagoya (v4218 created Aug 14 2002) Message-ID: <018001c24928$d41412c0$0700000a@mmmanager.org> From: "Brian Olsen" To: "Jakarta Commons Developers List" References: <002b01c248f4$50170060$0700000a@mmmanager.org> <01e001c2490a$c06fd3d0$9865fea9@spiritsoft.com> <00f601c2490a$d9b343e0$0700000a@mmmanager.org> <021801c2490c$8e123bb0$9865fea9@spiritsoft.com> <013701c24915$ef6045c0$0700000a@mmmanager.org> <003d01c24920$5beb17b0$0e00a8c0@adam> Subject: [VFS][PATCH] Jar provider Date: Wed, 21 Aug 2002 17:38:42 +0200 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_017E_01C24939.976A8820" X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N ------=_NextPart_000_017E_01C24939.976A8820 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable The jar provider is finally finished. It uses the getAttribute and getCertificates methods that came with the = class loader patch but in that patch returned null. The jar provider is the first to implement these features but there is = nothing preventing any file system from supporting features that were = previously reserved for jars. If the file system supports file signing, or the file system supports = attributes like "Sealed" or "Specification-Title" the class loader will = use these features. The provider does not have unit tests for signed jars at the moment, but = both class loader and jar provider should support these. Have fun! - Brian ------=_NextPart_000_017E_01C24939.976A8820 Content-Type: application/octet-stream; name="jarsupport.jar" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="jarsupport.jar" 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 7+d7r97Z2PqA3ZQEB8Ujkr7ZqM9ZMxgjx3XD99ADsUBxIReguFA9V6/KqDoLx8O+YSJ04pm2wxjU l6GJtXUOU1pov+kEnuDUdtAzpnnl4h8Inw4Ig1wRlpNmxiJJnP7G3RSaUW9QSwcIrH8hYYwAAAAI AQAAUEsDBAoAAAAAAB19FS0AAAAAAAAAAAAAAAAtAAAAc3JjL3Rlc3Qvb3JnL2FwYWNoZS9jb21t b25zL3Zmcy9wcm92aWRlci9qYXIvUEsDBAoAAAAAAA2KFS0AAAAAAAAAAAAAAAAyAAAAc3JjL3Rl c3Qvb3JnL2FwYWNoZS9jb21tb25zL3Zmcy9wcm92aWRlci9qYXIvdGVzdC9QSwMEFAAIAAgADYoV LQAAAAAAAAAAAAAAAEwAAABzcmMvdGVzdC9vcmcvYXBhY2hlL2NvbW1vbnMvdmZzL3Byb3ZpZGVy L2phci90ZXN0L0phckZpbGVTeXN0ZW1UZXN0Q2FzZS5qYXZhjVRNb9swDL37V7A+FG5aKOu1X2gW tECGri2SrNdBkelYnWx5kpw0GPrfR8l2+rGmni62RL7HR4ricBDBAMa62hi5zB0k4wOY5wijigv6 zHTm1twgXOu6TLmTumQwUgqCtwWDFs0KU0YsnmieSwu2A9F/VS+UtDmmQHg04IjUoSks6Cxs3ge6 kQJLi55shcZSQDhmx0fAQZBIj1rnUuSQcwsLxBJkKVSdUoC1dDlRUtBUWmfkovZyye65fKibyfjq dnbF3JODTCr0oocRxf/FlwjaLBkPYpjQRaFLy1aZZZXRK0nK2SM3zKF1p1Eki0obB498xZnU7Jq4 TrvD/6H5xo3HzDbWYXHfWvoYfGw2WlBmXLgp8vSuVJsXmjmZx9z2CvGIu8UjCp/IcNDcGmEtZLq5 HlIXygM2EHdXe8lrl5PLGYfcYHYeF1wqp094youiNqkW+WUbj0LHFyM6h++N4WzIL5pi+3YQIBS3 Ft6UodMfAS18climFvrTjf4EQMv7IWMCM+qGcgklLxAOgn+D8svWFZqktZ2G4+cofEJx/BrAFF1t ShvK82M62ZZqQfS0Uf5iW99ho8doRyWmrnypNyzRfSXAdfBPDojB6LWFqyeBlW/Vd8o8knosZATn Hu0zmqLVtRGUVRw6ghziTrhfba61kYSJyXoSw2FHw4iEaqpV7fCeu5xEHEK859NIpYlfWIqfBS/p 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 DQPpdgMAAPgKAAA/AAAAAAAAAAAAAAAAAAsOAABzcmMvamF2YS9vcmcvYXBhY2hlL2NvbW1vbnMv dmZzL3Byb3ZpZGVyL2phci9KYXJGaWxlT2JqZWN0LmphdmFQSwECFAAUAAgACAD6iRUtjCe0c0UF AAAmFwAAPwAAAAAAAAAAAAAAAADuEQAAc3JjL2phdmEvb3JnL2FwYWNoZS9jb21tb25zL3Zmcy9w cm92aWRlci9qYXIvSmFyRmlsZVN5c3RlbS5qYXZhUEsBAhQAFAAIAAgAHX0VLXFr3AKlAgAAbgYA AEcAAAAAAAAAAAAAAAAAoBcAAHNyYy9qYXZhL29yZy9hcGFjaGUvY29tbW9ucy92ZnMvcHJvdmlk ZXIvamFyL0phckZpbGVTeXN0ZW1Qcm92aWRlci5qYXZhUEsBAhQAFAAIAAgAHX0VLZ54XaZcBAAA QQ4AAEYAAAAAAAAAAAAAAAAAuhoAAHNyYy9qYXZhL29yZy9hcGFjaGUvY29tbW9ucy92ZnMvcHJv dmlkZXIvamFyL0phclVSTENvbm5lY3Rpb25JbXBsLmphdmFQSwECFAAUAAgACAAdfRUtrH8hYYwA AAAIAQAAQQAAAAAAAAAAAAAAAACKHwAAc3JjL2phdmEvb3JnL2FwYWNoZS9jb21tb25zL3Zmcy9w cm92aWRlci9qYXIvUmVzb3VyY2VzLnByb3BlcnRpZXNQSwECCgAKAAAAAAAdfRUtAAAAAAAAAAAA AAAALQAAAAAAAAAAAAAAAACFIAAAc3JjL3Rlc3Qvb3JnL2FwYWNoZS9jb21tb25zL3Zmcy9wcm92 aWRlci9qYXIvUEsBAgoACgAAAAAADYoVLQAAAAAAAAAAAAAAADIAAAAAAAAAAAAAAAAA0CAAAHNy Yy90ZXN0L29yZy9hcGFjaGUvY29tbW9ucy92ZnMvcHJvdmlkZXIvamFyL3Rlc3QvUEsBAhQAFAAI AAgADYoVLWB2c6XnAgAAPwcAAEwAAAAAAAAAAAAAAAAAICEAAHNyYy90ZXN0L29yZy9hcGFjaGUv Y29tbW9ucy92ZnMvcHJvdmlkZXIvamFyL3Rlc3QvSmFyRmlsZVN5c3RlbVRlc3RDYXNlLmphdmFQ SwECFAAUAAgACABXhRUtnJyGVIkEAAAJDwAAUgAAAAAAAAAAAAAAAACBJAAAc3JjL3Rlc3Qvb3Jn L2FwYWNoZS9jb21tb25zL3Zmcy9wcm92aWRlci9qYXIvdGVzdC9OZXN0ZWRKYXJGaWxlU3lzdGVt VGVzdENhc2UuamF2YVBLBQYAAAAADQANAAwFAACKKQAAAAA= ------=_NextPart_000_017E_01C24939.976A8820 Content-Type: text/plain; charset=us-ascii -- To unsubscribe, e-mail: For additional commands, e-mail: ------=_NextPart_000_017E_01C24939.976A8820--