/* * Copyright (c) 2010 Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ #pragma once #include #include #include namespace Swift { class String; class FormParser; /** * A generic payload parser for payloads of the given type. * * This class provides getPayloadInternal() for retrieving the actual * payload. */ template class GenericPayloadParser : public PayloadParser { public: GenericPayloadParser() : PayloadParser() { payload_ = boost::make_shared(); } virtual boost::shared_ptr getPayload() const { return payload_; } virtual boost::shared_ptr getPayloadInternal() const { return payload_; } private: boost::shared_ptr payload_; }; }