📄 service.h
字号:
/*service.hService structures.--------------------------------------------------------------------------------gSOAP XML Web services toolsCopyright (C) 2001-2005, Robert van Engelen, Genivia Inc. All Rights Reserved.This software is released under one of the following two licenses:GPL or Genivia's license for commercial use.--------------------------------------------------------------------------------GPL license.This program is free software; you can redistribute it and/or modify it underthe terms of the GNU General Public License as published by the Free SoftwareFoundation; either version 2 of the License, or (at your option) any laterversion.This program is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE. See the GNU General Public License for more details.You should have received a copy of the GNU General Public License along withthis program; if not, write to the Free Software Foundation, Inc., 59 TemplePlace, Suite 330, Boston, MA 02111-1307 USAAuthor contact information:engelen@genivia.com / engelen@acm.org--------------------------------------------------------------------------------A commercial use license is available from Genivia, Inc., contact@genivia.com--------------------------------------------------------------------------------*/#ifndef SERVICE_H#define SERVICE_H#include "includes.h"#include "wsdlH.h"class Message{ public: const char *name; const char *URI; soap__useChoice use; const char *encodingStyle; wsdl__message *message; const char *body_parts; wsdl__part *part; vector<soap__header> header; mime__multipartRelated *multipartRelated; // MIME mime__content *content; // MIME const char *layout; // DIME const char *documentation; const char *ext_documentation; void generate(Types&, const char *sep, bool anonymous, bool remark, bool response);};typedef map<const char*, Message*, ltstr> MapOfStringToMessage;class Operation{ public: const char *prefix; const char *URI; const char *name; soap__styleChoice style; const char *parameterOrder; const char *soapAction; const char *input_name; const char *output_name; Message *input; // name, use, and parts Message *output; // name, use, and parts vector<Message*> fault; const char *documentation; const char *operation_documentation; void generate(Types&);};class Service{ public: const char *prefix; // a gSOAP service has a unique namespace const char *URI; const char *name; // binding name const char *type; // portType const char *transport; // binding transport SetOfString location; // WSDL may specify multiple locations via <Port> -> <Binding> vector<Operation*> operation; MapOfStringToMessage header; MapOfStringToMessage headerfault; MapOfStringToMessage fault; MapOfStringToString service_documentation; MapOfStringToString port_documentation; MapOfStringToString binding_documentation; Service(); void generate(Types&);};typedef map<const char*, Service*, ltstr> MapOfStringToService;class Definitions{ public: Types types; // to process schema type information MapOfStringToService services; // service information gathered Definitions(); void collect(const wsdl__definitions&); void compile(const wsdl__definitions&); private: void analyze(const wsdl__definitions&); void generate();};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -