00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef XKMSCOMPOUNDRESULT_INCLUDE
00027 #define XKMSCOMPOUNDRESULT_INCLUDE
00028
00029
00030
00031 #include <xsec/framework/XSECDefs.hpp>
00032 #include <xsec/xkms/XKMSResultType.hpp>
00033
00034 class XKMSLocateResult;
00035 class XKMSLocateRequest;
00036 class XKMSValidateResult;
00037 class XKMSStatusResult;
00038 class XKMSStatusRequest;
00039 class XKMSValidateRequest;
00040 class XKMSRegisterRequest;
00041 class XKMSRegisterResult;
00042 class XKMSResult;
00043 class XKMSRequestAbstractType;
00044
00079 class XKMSCompoundResult : public XKMSResultType {
00080
00083
00084 protected:
00085
00086 XKMSCompoundResult() {};
00087
00088 public:
00089
00090 virtual ~XKMSCompoundResult() {};
00091
00094
00099 virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMElement * getElement(void) const = 0;
00100
00111 virtual int getResultListSize(void) = 0;
00112
00122 virtual XKMSResultType * getResultListItem(int item) = 0;
00123
00125
00128
00144 virtual XKMSLocateResult * createLocateResult(
00145 XKMSLocateRequest * request,
00146 XKMSResultType::ResultMajor rmaj,
00147 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00148 const XMLCh * id = NULL) = 0;
00149
00165 virtual XKMSValidateResult * createValidateResult(
00166 XKMSValidateRequest * request,
00167 XKMSResultType::ResultMajor rmaj,
00168 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00169 const XMLCh * id = NULL) = 0;
00170
00186 virtual XKMSStatusResult * createStatusResult(
00187 XKMSStatusRequest * request,
00188 XKMSResultType::ResultMajor rmaj,
00189 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00190 const XMLCh * id = NULL) = 0;
00191
00192
00208 virtual XKMSRegisterResult * createRegisterResult(
00209 XKMSRegisterRequest * request,
00210 XKMSResultType::ResultMajor rmaj,
00211 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00212 const XMLCh * id = NULL) = 0;
00213
00229 virtual XKMSResult * createResult(
00230 XKMSRequestAbstractType * request,
00231 XKMSResultType::ResultMajor rmaj,
00232 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00233 const XMLCh * id = NULL) = 0;
00234
00236
00237 private:
00238
00239
00240 XKMSCompoundResult(const XKMSCompoundResult &);
00241 XKMSCompoundResult & operator = (const XKMSCompoundResult &);
00242
00243 };
00244
00245 #endif