| /* |
| |
| httpget.h |
| |
| gSOAP HTTP GET plugin. |
| |
| gSOAP XML Web services tools |
| Copyright (C) 2004-2005, Robert van Engelen, Genivia, Inc. All Rights Reserved. |
| |
| -------------------------------------------------------------------------------- |
| gSOAP public license. |
| |
| The contents of this file are subject to the gSOAP Public License Version 1.3 |
| (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.cs.fsu.edu/~engelen/soaplicense.html |
| Software distributed under the License is distributed on an "AS IS" basis, |
| WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
| for the specific language governing rights and limitations under the License. |
| |
| The Initial Developer of the Original Code is Robert A. van Engelen. |
| Copyright (C) 2000-2004 Robert A. van Engelen, Genivia inc. All Rights Reserved. |
| -------------------------------------------------------------------------------- |
| GPL license. |
| |
| This program is free software; you can redistribute it and/or modify it under |
| the terms of the GNU General Public License as published by the Free Software |
| Foundation; either version 2 of the License, or (at your option) any later |
| version. |
| |
| This program is distributed in the hope that it will be useful, but WITHOUT ANY |
| WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A |
| PARTICULAR PURPOSE. See the GNU General Public License for more details. |
| |
| You should have received a copy of the GNU General Public License along with |
| this program; if not, write to the Free Software Foundation, Inc., 59 Temple |
| Place, Suite 330, Boston, MA 02111-1307 USA |
| |
| Author contact information: |
| engelen@genivia.com / engelen@acm.org |
| -------------------------------------------------------------------------------- |
| */ |
| |
| #ifndef HTTPGET_H |
| #define HTTPGET_H |
| |
| #include "stdsoap2.h" |
| |
| #define HTTP_GET_ID "HTTP-GET-1.1" /* plugin identification */ |
| |
| extern const char http_get_id[]; |
| |
| /* This is the local plugin data shared among all copies of the soap struct: */ |
| struct http_get_data |
| { int (*fpost)(struct soap*, const char*, const char*, int, const char*, const char*, size_t); /* client-side HTTP GET override */ |
| int (*fparse)(struct soap*); /* to save and call the internal HTTP header parser */ |
| int (*fget)(struct soap*); /* user-defined server-side HTTP GET handler */ |
| size_t stat_get; /* HTTP GET usage statistics */ |
| size_t stat_post; /* HTTP POST usage statistics */ |
| size_t stat_fail; /* HTTP failure statistics */ |
| size_t min[60]; /* Hits by the minute */ |
| size_t hour[24]; /* Hits by the hour */ |
| size_t day[365]; /* Hits by day */ |
| }; |
| |
| int http_get(struct soap*, struct soap_plugin*, void*); |
| int soap_get_connect(struct soap*, const char*, const char*); |
| |
| char *query(struct soap*); |
| char *query_key(struct soap*, char**); |
| char *query_val(struct soap*, char**); |
| |
| int soap_encode_string(const char*, char*, size_t); |
| const char* soap_decode_string(char*, size_t, const char*); |
| |
| #endif |