Main Page | Modules | Class Hierarchy | Class List | Directories | File List | Class Members | File Members | Related Pages

XKMSRegisterResult.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright 2004-2005 The Apache Software Foundation.
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017 /*
00018  * XSEC
00019  *
00020  * XKMSRegisterResult := Interface for RegisterResult Messages
00021  *
00022  * $Id: XKMSRegisterResult.hpp,v 1.4 2005/06/04 11:30:26 blautenb Exp $
00023  *
00024  */
00025 
00026 #ifndef XKMSREGISTERRESULT_INCLUDE
00027 #define XKMSREGISTERRESULT_INCLUDE
00028 
00029 // XSEC Includes
00030 
00031 #include <xsec/framework/XSECDefs.hpp>
00032 #include <xsec/xkms/XKMSResultType.hpp>
00033 #include <xsec/xkms/XKMSStatus.hpp>
00034 
00035 class XKMSKeyBinding;
00036 class XKMSUnverifiedKeyBinding;
00037 
00068 class XKMSRegisterResult : public XKMSResultType {
00069 
00072 
00073 protected:
00074 
00075     XKMSRegisterResult() {};
00076 
00077 public:
00078 
00079     virtual ~XKMSRegisterResult() {};
00080 
00083 
00088     virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMElement * getElement(void) const = 0;
00089 
00091 
00094 
00101     virtual int getKeyBindingSize(void) const = 0;
00102 
00103     /*
00104      * \brief Obtain an KeyBinding item
00105      *
00106      * @param item Index of the item to return (0 = first element)
00107      * @returns the KeyBinding referenced by "item"
00108      */
00109 
00110     virtual XKMSKeyBinding * getKeyBindingItem(int item) const = 0;
00111 
00112     /*
00113      * \brief Append a new KeyBinding element
00114      *
00115      * Allows callers to append a new KeyBinding item.
00116      * The item is initially empty of KeyInfo elements - these must be added
00117      * by the caller.
00118      *
00119      * @param status The status (Valid, Invalid or Indeterminate) of this
00120      * key
00121      * @returns the newly created KeyBinding object (already inserted
00122      * in the RegisterResult
00123      */
00124 
00125     virtual XKMSKeyBinding * appendKeyBindingItem(XKMSStatus::StatusValue status) = 0;
00126 
00128 
00129 private:
00130 
00131     // Unimplemented
00132     XKMSRegisterResult(const XKMSRegisterResult &);
00133     XKMSRegisterResult & operator = (const XKMSRegisterResult &);
00134 
00135 };
00136 
00137 #endif /* XKMSREGISTERRESULT_INCLUDE */

Generated on Sun Jul 3 17:37:27 2005 for XML-Security-C by  doxygen 1.4.2