Author: jamejose
Date: Wed Dec 21 03:01:57 2005
New Revision: 358263

URL: http://svn.apache.org/viewcvs?rev=358263&view=rev
Log:
Test cases for inquire APIs

Added:
    
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getBindingDetail_v2Test1Client.cpp
    
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getServiceDetail_v2Test1Client.cpp
    
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getTModelDetail_v2Test1Client.cpp

Added: 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getBindingDetail_v2Test1Client.cpp
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getBindingDetail_v2Test1Client.cpp?rev=358263&view=auto
==============================================================================
--- 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getBindingDetail_v2Test1Client.cpp
 (added)
+++ 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getBindingDetail_v2Test1Client.cpp
 Wed Dec 21 03:01:57 2005
@@ -0,0 +1,234 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   Licensed under the Apache License, Version 2.0 (the "License");
+ *   you may not use this file except in compliance with the License.
+ *   You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing, software
+ *   distributed under the License is distributed on an "AS IS" BASIS,
+ *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *   See the License for the specific language governing permissions and
+ *   limitations under the License.
+ */
+
+/*
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+#include <string>
+#include <iostream>
+#include <stdlib.h>
+#include <axis/AxisException.hpp>
+using namespace std;
+
+#include "Inquire.hpp"
+
+#define ARRAYSIZE 1 
+
+char endpoint[256];
+
+int
+main(int argc, char *argv[])
+{
+    if( argc < 2 )
+    {
+        printf( "Usage: %s [endpoint] ", argv[0]);
+        exit(0);
+    }
+
+    sprintf(endpoint, argv[1]); 
+       char* cpname = "2.0";
+       int outputSize=0;
+    Inquire *ws = new Inquire(endpoint);   
+
+               bool bSuccess = false;
+               int     iRetryIterationCount = 3;
+
+       do
+       {
+               try 
+               {
+                       char buffer[100];
+                       // Storing Binding Key to Buffer 
+                       sprintf(buffer, 
"585e9258-c7b7-4701-986e-1646f7166ed1");        
+             
+                        /* Case1 :
+                           In this we pass one binding key and get back one 
binding Template and then displays the details*/
+                       bindingKey_Array arrBindingKeys;
+                       bindingKey * arrayBinding = new bindingKey[ARRAYSIZE];  
+                       int i;
+                       for (i = 0; i < ARRAYSIZE; i++)
+                        {
+                                arrayBinding[i] = new char[100];
+                                strcpy(arrayBinding[i],buffer);
+                        }
+                       arrBindingKeys.set(arrayBinding,ARRAYSIZE);
+                       cout << "invoking get_bindingDetail ...\n";             
        
+                       bindingTemplate_Array* bindingTemplates = 
ws->get_bindingDetail(&arrBindingKeys, cpname);
+                       outputSize = 0;
+                       bindingTemplate ** arrayOutBinding = 
bindingTemplates->get(outputSize);                 
+                       cout << "bindingTemplate_Array size = " <<  outputSize 
<< endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "Binding Template " <<  i + 1 << endl;
+                               cout << "\t Binding Key Ref = " << 
arrayOutBinding[i]->bindingKey_Ref<<endl;
+                               cout << "\t Service Key Ref = " << 
arrayOutBinding[i]->serviceKey_Ref<<endl;    
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutBinding[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }
+                               /*if( arrayOutBinding[i]->accessPoint_Ref)
+                               {
+                                       cout << "\t Access Point " << endl;     
                                        
+                                       cout << "\t\t Point = " << 
arrayOutBinding[i]->accessPoint_Ref->accessPoint_value << endl;
+                                       cout <<  "\t\t URL Type = " << 
arrayOutBinding[i]->accessPoint_Ref->URLType_Ref << endl;                       
                 
+                               }*/
+                               
if(arrayOutBinding[i]->tModelInstanceDetails_Ref){
+                                               int tModelInstanceInfoSize=0;
+                                               tModelInstanceInfo ** 
arrtModelInstInfo = 
arrayOutBinding[i]->tModelInstanceDetails_Ref->tModelInstanceInfo_Ref->get(tModelInstanceInfoSize);
+                                               cout << 
"\ttModelInstanceInfo..." << endl;
+                                               for(int 
k=0;k<tModelInstanceInfoSize;k++){
+                                                       cout<<"\t\ttModelKey 
Value = " << arrtModelInstInfo[k]<< endl;
+                                               }
+                               }  
+                       }
+
+
+                       /* Case2:
+                          In this we pass 2 bindingKeys and get back two 
business Services */
+                       
+                       arrayBinding = new bindingKey[2];        
+                       for (i = 0; i < 2; i++)
+                        {
+                                arrayBinding[i] = new char[100];               
                 
+                        } 
+                        strcpy(arrayBinding[0],buffer);
+                        
strcpy(arrayBinding[1],"2ebf3e2e-58c0-4022-83a6-eed8b1eea6e8");
+                       arrBindingKeys.set(arrayBinding,2);
+                       cout << "\n\ninvoking get_bindingDetail ...\n";         
        
+                       //Inquire *ws1 = new Inquire(endpoint); 
+                       bindingTemplates = 
ws->get_bindingDetail(&arrBindingKeys, cpname);
+                       outputSize = 0;
+                       arrayOutBinding = bindingTemplates->get(outputSize);    
                
+                       cout << "bindingTemplate_Array size = " <<  outputSize 
<< endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "Binding Template " <<  i + 1 << endl;
+                               cout << "\t Binding Key Ref = " << 
arrayOutBinding[i]->bindingKey_Ref<<endl;
+                               cout << "\t Service Key Ref = " << 
arrayOutBinding[i]->serviceKey_Ref<<endl;    
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutBinding[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }                               
+                               
+                               /*if( arrayOutBinding[i]->accessPoint_Ref)
+                               {
+                                       cout << "\t Access Point " << endl;     
                                        
+                                       cout << "\t\t Point = " << 
arrayOutBinding[i]->accessPoint_Ref->accessPoint_value << endl;
+                                       cout <<  "\t\t URL Type = " << 
arrayOutBinding[i]->accessPoint_Ref->URLType_Ref << endl;                       
                 
+                               }*/
+                               
if(arrayOutBinding[i]->tModelInstanceDetails_Ref){
+                                               int tModelInstanceInfoSize=0;
+                                               tModelInstanceInfo ** 
arrtModelInstInfo = 
arrayOutBinding[i]->tModelInstanceDetails_Ref->tModelInstanceInfo_Ref->get(tModelInstanceInfoSize);
+                                               cout << 
"\ttModelInstanceInfo..." << endl;
+                                               for(int 
k=0;k<tModelInstanceInfoSize;k++){
+                                                       cout<<"\t\ttModelKey 
Value = " << arrtModelInstInfo[k]<< endl;
+                                               }
+                               }  
+
+                       }
+
+                       /* Case 3:
+                          In this we pass a non existing Binding Key */
+
+                       
+                       arrayBinding = new bindingKey[2];        
+                       for (i = 0; i < 1; i++)
+                        {
+                                arrayBinding[i] = new char[100];       
+                                
strcpy(arrayBinding[0],"05e39405-6216-46bd-8f4c-dad67cda4c15");
+                        } 
+                        
+                       
+                       arrBindingKeys.set(arrayBinding,1);                     
+                       //Inquire *ws2 = new Inquire(endpoint); 
+                       cout << "\n\ninvoking get_bindingDetail ...\n";
+                       bindingTemplates = 
ws->get_bindingDetail(&arrBindingKeys, cpname);
+                       outputSize = 0;
+                       arrayOutBinding = bindingTemplates->get(outputSize);    
                
+                       cout << "bindingTemplate_Array size = " << outputSize 
<< endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "Binding Template " <<  i + 1 << endl;
+                               cout << "\t Binding Key Ref = " << 
arrayOutBinding[i]->bindingKey_Ref<<endl;
+                               cout << "\t Service Key Ref = " << 
arrayOutBinding[i]->serviceKey_Ref<<endl;    
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutBinding[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }                               
+                               
+
+                               /*if( arrayOutBinding[i]->accessPoint_Ref)
+                               {
+                                       cout << "\t Access Point " << endl;     
                                        
+                                       cout << "\t\t Point = " << 
arrayOutBinding[i]->accessPoint_Ref->accessPoint_value << endl;
+                                       cout <<  "\t\t URL Type = " << 
arrayOutBinding[i]->accessPoint_Ref->URLType_Ref << endl;                       
                 
+                               }*/
+                               
+                               
if(arrayOutBinding[i]->tModelInstanceDetails_Ref){
+                                               int tModelInstanceInfoSize=0;
+                                               tModelInstanceInfo ** 
arrtModelInstInfo = 
arrayOutBinding[i]->tModelInstanceDetails_Ref->tModelInstanceInfo_Ref->get(tModelInstanceInfoSize);
+                                               cout << 
"\ttModelInstanceInfo..." << endl;
+                                               for(int 
k=0;k<tModelInstanceInfoSize;k++){
+                                                       cout<<"\t\ttModelKey 
Value = " << arrtModelInstInfo[k]<< endl;
+                                               }
+                               }  
+                       }
+                       bSuccess = true;
+               } 
+               catch(AxisException& e)
+               {
+                       bool bSilent = false;
+
+                       if( e.getExceptionCode() == 
CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED)
+                       {
+                               if( iRetryIterationCount > 0)
+                               {
+                                       bSilent = true;
+                               }
+                       }
+                       else
+                       {
+                               iRetryIterationCount = 0;
+                       }
+
+            if( !bSilent)
+                       {
+        printf("Exception caught : %s\n", e.what());
+                       }
+    }
+               iRetryIterationCount--;
+               } while( iRetryIterationCount > 0 && !bSuccess);
+
+    return 0;
+}

Added: 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getServiceDetail_v2Test1Client.cpp
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getServiceDetail_v2Test1Client.cpp?rev=358263&view=auto
==============================================================================
--- 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getServiceDetail_v2Test1Client.cpp
 (added)
+++ 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getServiceDetail_v2Test1Client.cpp
 Wed Dec 21 03:01:57 2005
@@ -0,0 +1,256 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   Licensed under the Apache License, Version 2.0 (the "License");
+ *   you may not use this file except in compliance with the License.
+ *   You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing, software
+ *   distributed under the License is distributed on an "AS IS" BASIS,
+ *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *   See the License for the specific language governing permissions and
+ *   limitations under the License.
+ */
+
+/*
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+#include <string>
+#include <iostream>
+#include <stdlib.h>
+#include <axis/AxisException.hpp>
+using namespace std;
+
+#include "Inquire.hpp"
+
+#define ARRAYSIZE 1 
+
+char endpoint[256];
+
+int
+main(int argc, char *argv[])
+{
+    if( argc < 2 )
+    {
+        printf( "Usage: %s [endpoint] ", argv[0]);
+        exit(0);
+    }
+
+    sprintf(endpoint, argv[1]); 
+       char* cpname = "2.0";
+       int outputSize=0;
+    Inquire *ws = new Inquire(endpoint);   
+
+               bool bSuccess = false;
+               int     iRetryIterationCount = 3;
+
+       do
+       {
+               try 
+               {
+                       char buffer[100];
+                       // Storing service Key to Buffer 
+                       sprintf(buffer, 
"f0aa27f0-88e7-4750-808a-a4d038a48ae7");                        
+             
+                        /* Case1 :
+                           In this we pass one service key and get back one 
business service and then displays the details*/
+                       serviceKey_Array arrServiceKeys;
+                       serviceKey * arrayService = new serviceKey[ARRAYSIZE];  
+                       int i;
+                       for (i = 0; i < ARRAYSIZE; i++)
+                        {
+                                arrayService[i] = new char[100];
+                                strcpy(arrayService[i],buffer);
+                        }
+                       arrServiceKeys.set(arrayService,ARRAYSIZE);
+                       cout << "invoking get_serviceDetail ...\n";             
        
+                       businessService_Array* businessServices = 
ws->get_serviceDetail(&arrServiceKeys, cpname);
+                       outputSize = 0;
+                       businessService ** arrayOutService = 
businessServices->get(outputSize);                 
+                       cout << "businessService_Array size = " <<  outputSize 
<< endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "Business Service " <<  i + 1 << endl;
+                               cout << "\t Business Key Ref = " << 
arrayOutService[i]->businessKey_Ref<<endl;
+                               cout << "\t Service Key Ref = " << 
arrayOutService[i]->serviceKey_Ref<<endl;                                       
             
+                               cout << "\t Names... \n" ;
+                               int outputSizeName = 0;
+
+                               //Display name of the business Service
+
+                               name** arrayName = 
arrayOutService[i]->name_Ref->get(outputSizeName);
+                               for( int j = 0; j < outputSizeName; j++)
+                               {
+                                       cout << "\t\t Name " << j + 1 << " = " 
<<  arrayName[j]->name_value <<endl;
+                               } 
+
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutService[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }       
+                               if( arrayOutService[i]->bindingTemplates_Ref )
+                               {
+                                       cout << "\t\t\t Binding Templates...\n" 
;
+                                       int outputSizeBT=0;
+                                       bindingTemplate ** arrayOutServiceT = 
arrayOutService[j]->bindingTemplates_Ref->bindingTemplate_Ref->get(outputSizeBT);
+                                       for( int k = 0; k < outputSizeBT; k++ )
+                                       {
+                                               cout << "\t\t\t\t Access Point 
" <<  k + 1 << endl;
+                                               if( 
arrayOutServiceT[k]->accessPoint_Ref )
+                                               {
+                                                       cout << "\t\t\t\t\t 
Point = " << arrayOutServiceT[k]->accessPoint_Ref->accessPoint_value << endl;
+                                                       cout <<  "\t\t\t\t\t 
URL Type = " << arrayOutServiceT[k]->accessPoint_Ref->URLType_Ref << endl;
+                                               }
+                                       }
+                               }
+                               
+                               if(arrayOutService[i]->categoryBag_Ref){
+                                               int KRArraySize = 0;
+                                               keyedReference ** KRArray = 
arrayOutService[i]->categoryBag_Ref->keyedReference_Ref->get(KRArraySize);
+                                               cout << "\t\t\t Category Bag 
Array Size .. " << KRArraySize << endl;
+                                               for(int k=0;k<KRArraySize;k++){
+                                                       cout << "\t\t\t 
Category Bag "<< k+1 << endl;
+                                               cout << "\t\t\t\ttModelKey_Ref 
= " << KRArray[k]->tModelKey_Ref << endl;
+                                               cout << "\t\t\t\ttKeyName = " 
<<KRArray[k]->keyName << endl;
+                                               cout << "\t\t\t\ttKeyValue = " 
<< KRArray[k]->keyValue << endl;                         
+                                               }
+                               }
+           
+                       }
+
+
+                       /* Case2:
+                          In this we pass 2 serviceKeys and get back two 
business Services */
+                       
+                       arrayService = new serviceKey[2];        
+                       for (i = 0; i < 2; i++)
+                        {
+                                arrayService[i] = new char[100];               
                 
+                        } 
+                        strcpy(arrayService[0],buffer);
+                        
strcpy(arrayService[1],"90757090-956e-4e13-82c0-4e85904ec076");
+                       arrServiceKeys.set(arrayService,2);
+                       cout << "\n\ninvoking get_serviceDetail ...\n";         
        
+                       //Inquire *ws1 = new Inquire(endpoint); 
+                       businessServices = 
ws->get_serviceDetail(&arrServiceKeys, cpname);
+                       outputSize = 0;
+                       arrayOutService = businessServices->get(outputSize);    
                
+                       cout << "businessService_Array size = " <<  outputSize 
<< endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "Business Service " << i + 1 <<endl;
+                               cout << "\t Business Key Ref = " << 
arrayOutService[i]->businessKey_Ref << endl;
+                               cout << "\t Service Key Ref = " << 
arrayOutService[i]->serviceKey_Ref<<endl;                            
+                               cout << "\t Names... \n";
+                               int outputSizeName = 0;
+                               name** arrayName = 
arrayOutService[i]->name_Ref->get(outputSizeName);
+                               for( int j = 0; j < outputSizeName; j++)
+                               {
+                                       cout << "\t\t Name " << j + 1 << " = " 
<< arrayName[j]->name_value << endl;
+                               }           
+                               if( arrayOutService[i]->bindingTemplates_Ref )
+                               {
+                                       cout << "\t\t\t Binding Templates...\n" 
;
+                                       int outputSizeBT=0;
+                                       bindingTemplate ** arrayOutServiceT = 
arrayOutService[j]->bindingTemplates_Ref->bindingTemplate_Ref->get(outputSizeBT);
+                                       for( int k = 0; k < outputSizeBT; k++ )
+                                       {
+                                               cout << "\t\t\t\t Access Point 
" << k + 1;
+                                               if( 
arrayOutServiceT[k]->accessPoint_Ref )
+                                               {
+                                                       cout << "\t\t\t\t\t 
Point = " << arrayOutServiceT[k]->accessPoint_Ref->accessPoint_value << endl;
+                                                       cout << "\t\t\t\t\t URL 
Type = " << arrayOutServiceT[k]->accessPoint_Ref->URLType_Ref << endl;
+                                               }
+                                       }
+                               }                       
+           
+                       }
+
+                       /* Case 3:
+                          In this we pass a non existing Service Key */
+
+                       
+                       arrayService = new serviceKey[2];        
+                       for (i = 0; i < 1; i++)
+                        {
+                                arrayService[i] = new char[100];       
+                                
strcpy(arrayService[0],"05e39405-6216-46bd-8f4c-dad67cda4c15");
+                        } 
+                        
+                       
+                       arrServiceKeys.set(arrayService,1);                     
+                       //Inquire *ws2 = new Inquire(endpoint); 
+                       cout << "\n\ninvoking get_serviceDetail ...\n";
+                       businessServices = 
ws->get_serviceDetail(&arrServiceKeys, cpname);
+                       outputSize = 0;
+                       arrayOutService = businessServices->get(outputSize);    
                
+                       cout << "businessService_Array size = " << outputSize 
<< endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "Business Entity " << i + 1 << endl;
+                               cout << "\t Business Key Ref = " << 
arrayOutService[i]->businessKey_Ref << endl;
+                               cout << "\t Service Key Ref = " << 
arrayOutService[i]->serviceKey_Ref << endl;
+                               cout << "\t Names... \n";
+                               int outputSizeName = 0;
+                               name** arrayName = 
arrayOutService[i]->name_Ref->get(outputSizeName);
+                               for( int j = 0; j < outputSizeName; j++)
+                               {
+                                       cout << "\t\t Name  " << j + 1 << " = " 
<< arrayName[j]->name_value;
+                               }           
+                               
+                               if( arrayOutService[i]->bindingTemplates_Ref )
+                               {
+                                       cout << "\t\t\t Binding Templates...\n" 
;
+                                       int outputSizeBT=0;
+                                       bindingTemplate ** arrayOutServiceT = 
arrayOutService[j]->bindingTemplates_Ref->bindingTemplate_Ref->get(outputSizeBT);
+                                       for( int k = 0; k < outputSizeBT; k++ )
+                                       {
+                                               cout << "\t\t\t\t Access Point 
" << k + 1 << endl;
+                                               if( 
arrayOutServiceT[k]->accessPoint_Ref )
+                                               {
+                                                       cout << "\t\t\t\t\t 
Point = " << arrayOutServiceT[k]->accessPoint_Ref->accessPoint_value << endl;
+                                                       cout << "\t\t\t\t\t URL 
Type = " << arrayOutServiceT[k]->accessPoint_Ref->URLType_Ref << endl;
+                                               }
+                                       }
+                               }           
+                       }
+                       bSuccess = true;
+               } 
+               catch(AxisException& e)
+               {
+                       bool bSilent = false;
+
+                       if( e.getExceptionCode() == 
CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED)
+                       {
+                               if( iRetryIterationCount > 0)
+                               {
+                                       bSilent = true;
+                               }
+                       }
+                       else
+                       {
+                               iRetryIterationCount = 0;
+                       }
+
+            if( !bSilent)
+                       {
+        printf("Exception caught : %s\n", e.what());
+                       }
+    }
+               iRetryIterationCount--;
+               } while( iRetryIterationCount > 0 && !bSuccess);
+
+    return 0;
+}

Added: 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getTModelDetail_v2Test1Client.cpp
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getTModelDetail_v2Test1Client.cpp?rev=358263&view=auto
==============================================================================
--- 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getTModelDetail_v2Test1Client.cpp
 (added)
+++ 
webservices/axis/trunk/c/tests/auto_build/testcases/client/cpp/getTModelDetail_v2Test1Client.cpp
 Wed Dec 21 03:01:57 2005
@@ -0,0 +1,263 @@
+/*
+ *   Copyright 2003-2004 The Apache Software Foundation.
+// (c) Copyright IBM Corp. 2004, 2005 All Rights Reserved
+ *
+ *   Licensed under the Apache License, Version 2.0 (the "License");
+ *   you may not use this file except in compliance with the License.
+ *   You may obtain a copy of the License at
+ *
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *   Unless required by applicable law or agreed to in writing, software
+ *   distributed under the License is distributed on an "AS IS" BASIS,
+ *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *   See the License for the specific language governing permissions and
+ *   limitations under the License.
+ */
+
+/*
+ * This software consists of voluntary contributions made by many
+ * individuals on behalf of the Apache Software Foundation.  For more
+ * information on the Apache Software Foundation, please see
+ * <http://www.apache.org/>.
+ *
+ */
+
+#include <string>
+#include <iostream>
+#include <stdlib.h>
+#include <axis/AxisException.hpp>
+using namespace std;
+
+#include "Inquire.hpp"
+
+#define ARRAYSIZE 1 
+
+char endpoint[256];
+
+int
+main(int argc, char *argv[])
+{
+    if( argc < 2 )
+    {
+        printf( "Usage: %s [endpoint] ", argv[0]);
+        exit(0);
+    }
+
+    sprintf(endpoint, argv[1]); 
+       char* cpname = "2.0";
+       int outputSize=0;
+    Inquire *ws = new Inquire(endpoint);   
+
+               bool bSuccess = false;
+               int     iRetryIterationCount = 3;
+
+       do
+       {
+               try 
+               {
+                       char buffer[100];
+                       // Storing Binding Key to Buffer 
+                       sprintf(buffer, 
"uuid:2524c425-656e-4eb2-8b13-080cfb081382");   
+             
+                        /* Case1 :
+                           In this we pass one tModel key and get back one 
tModel and then displays the details*/
+                       tModelKey_Array arrTModelKeys;
+                       tModelKey * arrayTModel = new tModelKey[ARRAYSIZE];  
+                       int i;
+                       for (i = 0; i < ARRAYSIZE; i++)
+                        {
+                                arrayTModel[i] = new char[100];
+                                strcpy(arrayTModel[i],buffer);
+                        }
+                       arrTModelKeys.set(arrayTModel,ARRAYSIZE);
+                       cout << "invoking get_tModelDetail ...\n";              
        
+                       tModel_Array* tModels = 
ws->get_tModelDetail(&arrTModelKeys, cpname);
+                       outputSize = 0;
+                       tModel ** arrayOutTModel = tModels->get(outputSize);    
                
+                       cout << "tModel_Array size = " <<  outputSize << endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "tModel " <<  i + 1 << endl;
+                               cout << "\t tModel Key Ref = " << 
arrayOutTModel[i]->tModelKey_Ref<<endl;
+                               cout << "\t Authorized Name = " << 
arrayOutTModel[i]->authorizedName << endl;
+                               //Display name of tModel                        
        
+                               cout << "\t Name = " << 
arrayOutTModel[i]->name_Ref->name_value <<endl;                 
+
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutTModel[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }
+                               
+                               if(arrayOutTModel[i]->overviewDoc_Ref){
+                                       cout << "\tOverviewDoc ... " << endl;
+                                       int OVDescSize=0;
+                                       description ** overviewDesc = 
arrayOutTModel[i]->overviewDoc_Ref->description_Ref->get(OVDescSize);
+                                       for(int k=0;k<OVDescSize;k++){
+                                               cout << "\t\t Description "<< 
k+1 << overviewDesc[k]->description_value << endl;
+                                       }
+                                       cout << "\t\toverviewURL = " << 
arrayOutTModel[i]->overviewDoc_Ref->overviewURL << endl;
+                               }
+
+                               if(arrayOutTModel[i]->categoryBag_Ref){
+                                               int KRArraySize = 0;
+                                               keyedReference ** KRArray = 
arrayOutTModel[i]->categoryBag_Ref->keyedReference_Ref->get(KRArraySize);
+                                               cout << "\t Category Bag Array 
Size = " << KRArraySize << endl;
+                                               for(int k=0;k<KRArraySize;k++){
+                                                       cout << "\t\t Category 
Bag "<< k+1 << endl;
+                                                       cout << 
"\t\t\ttModelKey_Ref = " << KRArray[k]->tModelKey_Ref << endl;
+                                                       cout << "\t\t\ttKeyName 
= " <<KRArray[k]->keyName << endl;
+                                                       cout << 
"\t\t\ttKeyValue = " << KRArray[k]->keyValue << endl;                           
+                                               }
+                               }
+
+                       }
+
+
+                       /* Case2:
+                          In this we pass 2 tModelKeys and get back two 
tModels */
+                       
+                       arrayTModel = new tModelKey[2];        
+                       for (i = 0; i < 2; i++)
+                        {
+                                arrayTModel[i] = new char[100];                
                 
+                        } 
+                        strcpy(arrayTModel[0],buffer);
+                        
strcpy(arrayTModel[1],"uuid:52ed8652-e2f8-4816-bc71-f48748f471bf");
+                       arrTModelKeys.set(arrayTModel,2);
+                       cout << "\n\ninvoking get_tModelDetail ...\n";          
        
+                       //Inquire *ws1 = new Inquire(endpoint); 
+                       tModels = ws->get_tModelDetail(&arrTModelKeys, cpname);
+                       outputSize = 0;
+                       arrayOutTModel = tModels->get(outputSize);              
        
+                       cout << "tModel_Array size = " <<  outputSize << endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "tModel " <<  i + 1 << endl;
+                               cout << "\t tModel Key Ref = " << 
arrayOutTModel[i]->tModelKey_Ref<<endl;
+                               cout << "\t Authorized Name = " << 
arrayOutTModel[i]->authorizedName << endl;
+                               //Display name of tModel                        
        
+                               cout << "\t Name = " << 
arrayOutTModel[i]->name_Ref->name_value <<endl;                 
+
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutTModel[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }
+                               
+                               if(arrayOutTModel[i]->overviewDoc_Ref){
+                                       cout << "\tOverviewDoc ... " << endl;
+                                       int OVDescSize=0;
+                                       description ** overviewDesc = 
arrayOutTModel[i]->overviewDoc_Ref->description_Ref->get(OVDescSize);
+                                       for(int k=0;k<OVDescSize;k++){
+                                               cout << "\t\t Description "<< 
k+1 << overviewDesc[k]->description_value << endl;
+                                       }
+                                       cout << "\t\toverviewURL = " << 
arrayOutTModel[i]->overviewDoc_Ref->overviewURL << endl;
+                               }
+
+                               if(arrayOutTModel[i]->categoryBag_Ref){
+                                               int KRArraySize = 0;
+                                               keyedReference ** KRArray = 
arrayOutTModel[i]->categoryBag_Ref->keyedReference_Ref->get(KRArraySize);
+                                               cout << "\t Category Bag Array 
Size .. " << KRArraySize << endl;
+                                               for(int k=0;k<KRArraySize;k++){
+                                                       cout << "\t Category 
Bag "<< k+1 << endl;
+                                                       cout << 
"\t\ttModelKey_Ref = " << KRArray[k]->tModelKey_Ref << endl;
+                                                       cout << "\t\ttKeyName = 
" <<KRArray[k]->keyName << endl;
+                                                       cout << "\t\ttKeyValue 
= " << KRArray[k]->keyValue << endl;                             
+                                               }
+                               }
+                       }
+                       /* Case 3:
+                          In this we pass a non existing tModel Key */
+
+                       
+                       arrayTModel = new tModelKey[1];        
+                       for (i = 0; i < 1; i++)
+                        {
+                                arrayTModel[i] = new char[100];        
+                                
strcpy(arrayTModel[0],"05e39405-6216-46bd-8f4c-dad67cda4c15");
+                        } 
+                        
+                       
+                       arrTModelKeys.set(arrayTModel,1);                       
+                       //Inquire *ws2 = new Inquire(endpoint); 
+                       cout << "\n\ninvoking get_tModelDetail ...\n";
+                       tModels = ws->get_tModelDetail(&arrTModelKeys, cpname);
+                       outputSize = 0;
+                       arrayOutTModel = tModels->get(outputSize);              
        
+                       cout << "tModel_Array size = " << outputSize << endl;
+                       for( i = 0; i < outputSize; i++ ) 
+                       {
+                               cout << "tModel " <<  i + 1 << endl;
+                               cout << "\t tModel Key Ref = " << 
arrayOutTModel[i]->tModelKey_Ref<<endl;
+                               cout << "\t Authorized Name = " << 
arrayOutTModel[i]->authorizedName << endl;
+                               //Display name of tModel                        
        
+                               cout << "\t Name = " << 
arrayOutTModel[i]->name_Ref->name_value <<endl;                 
+
+                               //Display Description
+                               int outputSizeDesc=0;
+                               description ** arrayDesc = 
arrayOutTModel[i]->description_Ref->get(outputSizeDesc);
+                               cout << "\t Description ... " << endl;
+                               for( int j = 0; j < outputSizeDesc; j++)
+                               {
+                                       cout << "\t\t Description " << j+1 << " 
= " << arrayDesc[j]->description_value<< endl;
+                               }
+                               
+                               if(arrayOutTModel[i]->overviewDoc_Ref){
+                                       cout << "\tOverviewDoc ... " << endl;
+                                       int OVDescSize=0;
+                                       description ** overviewDesc = 
arrayOutTModel[i]->overviewDoc_Ref->description_Ref->get(OVDescSize);
+                                       for(int k=0;k<OVDescSize;k++){
+                                               cout << "\t\t Description "<< 
k+1 << overviewDesc[k]->description_value << endl;
+                                       }
+                                       cout << "\t\toverviewURL = " << 
arrayOutTModel[i]->overviewDoc_Ref->overviewURL << endl;
+                               }
+
+                               if(arrayOutTModel[i]->categoryBag_Ref){
+                                               int KRArraySize = 0;
+                                               keyedReference ** KRArray = 
arrayOutTModel[i]->categoryBag_Ref->keyedReference_Ref->get(KRArraySize);
+                                               cout << "\t Category Bag Array 
Size .. " << KRArraySize << endl;
+                                               for(int k=0;k<KRArraySize;k++){
+                                                       cout << "\t Category 
Bag "<< k+1 << endl;
+                                                       cout << 
"\t\ttModelKey_Ref = " << KRArray[k]->tModelKey_Ref << endl;
+                                                       cout << "\t\ttKeyName = 
" <<KRArray[k]->keyName << endl;
+                                                       cout << "\t\ttKeyValue 
= " << KRArray[k]->keyValue << endl;                             
+                                               }
+                               }
+
+                       }
+                       bSuccess = true;
+               } 
+               catch(AxisException& e)
+               {
+                       bool bSilent = false;
+
+                       if( e.getExceptionCode() == 
CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED)
+                       {
+                               if( iRetryIterationCount > 0)
+                               {
+                                       bSilent = true;
+                               }
+                       }
+                       else
+                       {
+                               iRetryIterationCount = 0;
+                       }
+
+            if( !bSilent)
+                       {
+        printf("Exception caught : %s\n", e.what());
+                       }
+    }
+               iRetryIterationCount--;
+               } while( iRetryIterationCount > 0 && !bSuccess);
+
+    return 0;
+}


Reply via email to