uri.C

00001 #include <string>
00002 #include <iostream>
00003 
00004 #include <archon/util/exception.H>
00005 #include <archon/util/uri.H>
00006 
00007 using namespace std;
00008 using namespace Archon::Utilities;
00009 
00010 int main(int argc, const char *argv[]) throw()
00011 {
00012   set_unexpected(Exception::terminal<exceptionCatchInfo>);
00013   set_terminate (Exception::terminal<exceptionCatchInfo>);
00014 
00015   if(argc < 2)
00016   {
00017     cerr << "Synopsis: " << argv[0] << "  RELATIVE-URI  [ BASE-URI ]\n";
00018     exit(1);
00019   }
00020 
00021   string relativeUri = argv[1];
00022   Uri baseUri;
00023   if(argc == 3) baseUri = Uri(argv[2]);
00024 
00025   try
00026   {
00027     cout << Uri(relativeUri, baseUri) << "\n";
00028   }
00029   catch(Uri::SyntaxException &e)
00030   {
00031     cerr << Uri::explain(e);
00032     exit(1);
00033   }
00034 
00035   return 0;
00036 }

Generated on Sun Jul 30 22:55:43 2006 for Archon by  doxygen 1.4.4