xmlnetaccessor.hpp
来自「IBM的解析xml的工具Xerces的源代码」· HPP 代码 · 共 138 行
HPP
138 行
/* * Copyright 1999-2000,2004 The Apache Software Foundation. * * 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. *//* * $Id: XMLNetAccessor.hpp,v 1.8 2004/09/08 13:56:24 peiyongz Exp $ */#if !defined(XMLNETACCESSOR_HPP)#define XMLNETACCESSOR_HPP#include <xercesc/util/XMLURL.hpp>#include <xercesc/util/XMLException.hpp>XERCES_CPP_NAMESPACE_BEGINclass BinInputStream;// This class holds advanced informations about the HTTP connectionclass XMLUTIL_EXPORT XMLNetHTTPInfo{public: XMLNetHTTPInfo(); typedef enum { GET, PUT, POST } HTTPMethod; // ----------------------------------------------------------------------- // Data members // // fHTTPMethod // The type of the HTTP request // // fHeaders // The extra headers that will be sent as part of the request; the format is // Header1: Value\r\nHeader2: Value\r\n // // fHeadersLen // The length of the string pointed by fHeaders, in bytes // // fPayload // The extra data that will be sent after the headers; in the case of a PUT // operation, this is the content of the resource being posted. It can be binary data // // fPayloadLen // The length of the binary buffer pointed by fPayload, in bytes // HTTPMethod fHTTPMethod; const char* fHeaders; int fHeadersLen; const char* fPayload; int fPayloadLen;};inline XMLNetHTTPInfo::XMLNetHTTPInfo():fHTTPMethod(XMLNetHTTPInfo::GET), fHeaders(0), fHeadersLen(0), fPayload(0), fPayloadLen(0){}//// This class is an abstract interface via which the URL class accesses// net access services. When any source URL is not in effect a local file// path, then the URL class is used to look at it. Then the URL class can// be asked to make a binary input stream via which the referenced resource// can be read in.//// The URL class will use an object derived from this class to create a// binary stream for the URL to return. The object it uses is provided by// the platform utils, and is actually provided by the per-platform init// code so each platform can decide what actual implementation it wants to// use.//class XMLUTIL_EXPORT XMLNetAccessor : public XMemory{public : // ----------------------------------------------------------------------- // Virtual destructor // ----------------------------------------------------------------------- virtual ~XMLNetAccessor() { } // ----------------------------------------------------------------------- // The virtual net accessor interface // ----------------------------------------------------------------------- virtual const XMLCh* getId() const = 0; virtual BinInputStream* makeNew ( const XMLURL& urlSrc, const XMLNetHTTPInfo* httpInfo=0 ) = 0;protected : // ----------------------------------------------------------------------- // Hidden constructors // ----------------------------------------------------------------------- XMLNetAccessor() { }private : // ----------------------------------------------------------------------- // Unimplemented constructors and operators // ----------------------------------------------------------------------- XMLNetAccessor(const XMLNetAccessor&); XMLNetAccessor& operator=(const XMLNetAccessor&);};MakeXMLException(NetAccessorException, XMLUTIL_EXPORT)XERCES_CPP_NAMESPACE_END#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?