wrapperT.cc

Go to the documentation of this file.
00001 // wrapperT.cc
00002 
00003 // This file is part of bes, A C++ back-end server implementation framework
00004 // for the OPeNDAP Data Access Protocol.
00005 
00006 // Copyright (c) 2004,2005 University Corporation for Atmospheric Research
00007 // Author: Patrick West <pwest@ucar.edu> and Jose Garcia <jgarcia@ucar.edu>
00008 //
00009 // This library is free software; you can redistribute it and/or
00010 // modify it under the terms of the GNU Lesser General Public
00011 // License as published by the Free Software Foundation; either
00012 // version 2.1 of the License, or (at your option) any later version.
00013 // 
00014 // This library is distributed in the hope that it will be useful,
00015 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00017 // Lesser General Public License for more details.
00018 // 
00019 // You should have received a copy of the GNU Lesser General Public
00020 // License along with this library; if not, write to the Free Software
00021 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00022 //
00023 // You can contact University Corporation for Atmospheric Research at
00024 // 3080 Center Green Drive, Boulder, CO 80301
00025  
00026 // (c) COPYRIGHT University Corporation for Atmospheric Research 2004-2005
00027 // Please read the full copyright statement in the file COPYRIGHT_UCAR.
00028 //
00029 // Authors:
00030 //      pwest       Patrick West <pwest@ucar.edu>
00031 //      jgarcia     Jose Garcia <jgarcia@ucar.edu>
00032 
00033 #include <iostream>
00034 
00035 using std::cout ;
00036 using std::cerr ;
00037 using std::endl ;
00038 
00039 #include "BESApacheWrapper.h"
00040 #include "BESDataRequestInterface.h"
00041 #include "BESException.h"
00042 #include "BESGlobalIQ.h"
00043 #include "BESDefaultModule.h"
00044 #include "BESDefaultCommands.h"
00045 #include "BESDapModule.h"
00046 #include "DAPCommandModule.h"
00047 
00048 int
00049 main( int argc, char **argv )
00050 {
00051     BESGlobalIQ::BESGlobalInit( argc, argv ) ;
00052 
00053     BESDefaultModule::initialize( argc, argv ) ;
00054     BESDefaultCommands::initialize( argc, argv ) ;
00055     BESDapModule dm ;
00056     dm.initialize( "dap" ) ;
00057     DAPCommandModule cm ;
00058     cm.initialize( "dap" ) ;
00059 
00060     /*
00061     if( argc != 2 )
00062     {
00063         cerr << "usage: " << argv[0] << " <requests>" << endl ;
00064         return 1 ;
00065     }
00066     */
00067 
00068     BESDataRequestInterface rq;
00069 
00070     // BEGIN Initialize all data request elements correctly to a null pointer 
00071     rq.server_name=0;
00072     rq.server_address=0;
00073     rq.server_protocol=0;
00074     rq.server_port=0;
00075     rq.script_name=0;
00076     rq.user_address=0;
00077     rq.user_agent=0;
00078     rq.request=0;
00079     // END Initialize all the data request elements correctly to a null pointer
00080 
00081     rq.server_name="cedar-l" ;
00082     rq.server_address="jose" ;
00083     rq.server_protocol="TXT" ;
00084     rq.server_port="8081" ;
00085     rq.script_name="someting" ;
00086     rq.user_address="0.0.0.0" ;
00087     rq.user_agent = "Patrick" ;
00088 
00089     try
00090     {
00091         BESApacheWrapper wrapper ;
00092         rq.cookie=wrapper.process_user( "username=pwest" ) ;
00093         wrapper.process_request( "request=define+d1+as+mfp920504a;get+das+for+d1;" ) ;
00094         rq.request = wrapper.get_first_request() ;
00095         while( rq.request )
00096         {
00097             wrapper.call_BES(rq);
00098             rq.request = wrapper.get_next_request() ;
00099         }
00100 
00101     }
00102     catch( BESException &e )
00103     {
00104         cerr << "problem: " << e.get_message() << endl ;
00105     }
00106 
00107     BESGlobalIQ::BESGlobalQuit() ;
00108 
00109     return 0 ;
00110 }
00111 

Generated on Sat Jan 19 04:05:38 2008 for OPeNDAP Back End Server (BES) by  doxygen 1.5.4