Main Page   Class Hierarchy   Compound List   File List   Compound Members   Examples  

WSDDService.h

00001 /*
00002  *   Copyright 2003-2004 The Apache Software Foundation.
00003  *
00004  *   Licensed under the Apache License, Version 2.0 (the "License");
00005  *   you may not use this file except in compliance with the License.
00006  *   You may obtain a copy of the License at
00007  *
00008  *       http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  *   Unless required by applicable law or agreed to in writing, software
00011  *   distributed under the License is distributed on an "AS IS" BASIS,
00012  *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  *   See the License for the specific language governing permissions and
00014  *   limitations under the License.
00015  */
00016 
00017 #if !defined(_WSDDSERVICE_H__OF_AXIS_INCLUDED_)
00018 #define _WSDDSERVICE_H__OF_AXIS_INCLUDED_
00019 
00020 #include "WSDDHandler.h"
00021 #include "WSDDDefines.h"
00022 
00023 #include <string>
00024 #include <map>
00025 
00026 using namespace std;
00032 class WSDDService : public WSDDHandler 
00033 {
00034 public:
00035     const list<AxisString> getAllowedMethods() const;
00036     void setProvider(const AxisChar* sProvider);
00037     PROVIDERTYPE getProvider() const;
00038     const AxisChar* getServiceName() const;
00039     bool isAllowedMethod(const AxisChar* sMethodName) const;
00040     void addAllowedMethod(const AxisChar* sMethodName);
00041     const WSDDHandlerList* getResponseFlowHandlers() const;
00042     void addHandler(bool bRequestFlow, WSDDHandler* pHandler);
00043     int removeHandler(bool bRequestFlow, WSDDHandler* pHandler);
00044     const WSDDHandlerList* getRequestFlowHandlers() const;
00045     void addAllowedRole(const AxisChar* sRole);
00046     const list<AxisString>& getAllowedRoles();
00047     WSDDService();
00048     virtual ~WSDDService();
00049     int updateWSDD(FILE* wsddfile, int tabcount);
00050 private:
00051     const char* getProviderString();
00052 private:
00053     PROVIDERTYPE m_Provider;
00054     list<AxisString> m_AllowedMethods;
00055     WSDDHandlerList* m_RequestHandlers;
00056     WSDDHandlerList* m_ResponseHandlers;
00057     list<AxisString> m_AllowedRoles;
00058 };
00059 
00060 typedef map<AxisString, WSDDService*> WSDDServiceMap;
00061 
00062 #endif
00063 

Generated on Tue Jun 15 19:13:24 2004 for axiscpp by doxygen1.2.18