/* * Copyright 2002-2009 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. */ /* * XSEC * * DSIGKeyInfoExt := An extension type for anything unknown to the library * * $Id:$ * */ #ifndef DSIGKEYINFOEXT_INCLUDE #define DSIGKEYINFOEXT_INCLUDE #include #include XSEC_DECLARE_XERCES_CLASS(DOMElement); /** * @ingroup pubsig */ /** * @brief The class for extension nodes in a KeyInfo list. * * Class for holding information on an extension node. * */ class DSIG_EXPORT DSIGKeyInfoExt : public DSIGKeyInfo { public: /** @name Constructors and Destructors */ //@{ /** * \brief Constructor used when XML exists. * * This constructor is used by interface classes * an existing DOM structure into the extension element. * * @param env Environment the KeyInfo is operating within * @param extNode DOMNode to load information from */ DSIGKeyInfoExt(const XSECEnv * env, XERCES_CPP_NAMESPACE_QUALIFIER DOMNode *extNode); /** * \brief Destructor */ virtual ~DSIGKeyInfoExt(); //@} /** @name Load and Get functions */ //@{ /** * \brief Load an existing XML structure into this object. */ virtual void load(void); //@} //@} /** @name Information Functions */ //@{ /** * \brief Return type of this KeyInfo element */ virtual keyInfoType getKeyInfoType(void) const {return DSIGKeyInfo::KEYINFO_EXTENSION;} //@} virtual const XMLCh * getKeyName(void) const {return NULL;} private: DSIGKeyInfoExt(); // Non-implemented constructor }; #endif /* #define DSIGKEYNAME_INCLUDE */