metacat_additions.tar.gz, MetacatGsiClient.java, bbaker_diff_metacat.txt and  bbaker_diff_utilities.txt files came from Bill Baker at UIUC. His work is part of effort on Pilot project. Baker's work focused on making Metacat support HTTPS+GSI (Grid Security Infrastructure) POST. 

Here are the emails from Baker:

---------- Forwarded message ----------
Date: Mon, 17 Oct 2005 14:42:28 -0500
From: Bill Baker <bbaker@ncsa.uiuc.edu>
To: Jing Tao <tao@nceas.ucsb.edu>
Cc: Matt Jones <jones@nceas.ucsb.edu>, Saurabh Garg <sgarg@nceas.ucsb.edu>,
    Von Welch <vwelch@ncsa.uiuc.edu>, mfreemon@ncsa.uiuc.edu
Subject: Re: Notes for Metacat Call

I just found a way to simplify the HTTPS+GSI protocol handling in Java, while I was writing some documentation -- I'm surprised I didn't see it before,
because it's just the use of a different URL constructor.  As a bonus, it should eliminate the compile dependency on JGlobus JARs.

The change is:

(1) delete the class edu.ucsb.nceas.protocols.httpg -- it
    is no longer necesary
(2) update MetacatGSIClient.java (attached)

I tested it out in the LTER grid pilot project app and ran some unit tests, and it seems to work fine.

-- Bill

At 14:19 2005-10-06, Bill Baker wrote:
Here, finally, are my Metacat diffs.  I've included three files:
 
   bbaker_diff_metacat.txt -- a cvs diff of the metacat module
   bbaker_diff_utilities.txt -- a cvs diff of the utilities module
   metacat_additions.tar.gz -- the files that I have added to metacat,in the directories where they belong in the metacat module

As for our unit tests, the easiest way to get them is probably to download from CVS, at :pserver:anonymous@cvs.ncsa.uiuc.edu/CVS/grids -- check out
the LTERPilotApp module, which has classes MetacatTest, which has GSI login tests and some simple queries with GSI authentication, and
MetacatQueryTest, which does more complex querying.
You may also find the metacat CVS module helpful -- it has our changes and a few extra Ant scripts for easy Metacat deployment in our particular
configuration, as seen on Roadrunner.

Bill Baker wrote:
An update on the Metacat patches that I'm working on:
I'm working on getting some changes into JGlobus to support HTTPS+GSI POST (it only supported GET before), including new support for streaming
data -- my previous additions to it buffered the entire POST in memory before transmitting.  Once I finish with that, I plan to package up the
Metacat changes and send them to you.
I have a question: unit tests.  We wrote some unit tests for the LTER Grid pilot project that covered HTTPS+GSI, but they are outside of the
Metacat unit testing framework.  They only tested logging in and querying over HTTPS+GSI -- not harvesting or any of the update/delete
operations. I'll include those tests when I send you my diffs.  Do you think you'll want to work them into Metacat's unit tests?
-- Bill


