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 XKMSRevokeRequest;
00043 class XKMSRevokeResult;
00044 class XKMSReissueRequest;
00045 class XKMSReissueResult;
00046 class XKMSRecoverRequest;
00047 class XKMSRecoverResult;
00048 class XKMSResult;
00049 class XKMSRequestAbstractType;
00050
00085 class XKMSCompoundResult : public XKMSResultType {
00086
00089
00090 protected:
00091
00092 XKMSCompoundResult() {};
00093
00094 public:
00095
00096 virtual ~XKMSCompoundResult() {};
00097
00100
00105 virtual XERCES_CPP_NAMESPACE_QUALIFIER DOMElement * getElement(void) const = 0;
00106
00117 virtual int getResultListSize(void) = 0;
00118
00128 virtual XKMSResultType * getResultListItem(int item) = 0;
00129
00131
00134
00150 virtual XKMSLocateResult * createLocateResult(
00151 XKMSLocateRequest * request,
00152 XKMSResultType::ResultMajor rmaj,
00153 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00154 const XMLCh * id = NULL) = 0;
00155
00171 virtual XKMSValidateResult * createValidateResult(
00172 XKMSValidateRequest * request,
00173 XKMSResultType::ResultMajor rmaj,
00174 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00175 const XMLCh * id = NULL) = 0;
00176
00192 virtual XKMSStatusResult * createStatusResult(
00193 XKMSStatusRequest * request,
00194 XKMSResultType::ResultMajor rmaj,
00195 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00196 const XMLCh * id = NULL) = 0;
00197
00198
00214 virtual XKMSRegisterResult * createRegisterResult(
00215 XKMSRegisterRequest * request,
00216 XKMSResultType::ResultMajor rmaj,
00217 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00218 const XMLCh * id = NULL) = 0;
00219
00235 virtual XKMSRevokeResult * createRevokeResult(
00236 XKMSRevokeRequest * request,
00237 XKMSResultType::ResultMajor rmaj,
00238 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00239 const XMLCh * id = NULL) = 0;
00240
00256 virtual XKMSRecoverResult * createRecoverResult(
00257 XKMSRecoverRequest * request,
00258 XKMSResultType::ResultMajor rmaj,
00259 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00260 const XMLCh * id = NULL) = 0;
00261
00277 virtual XKMSReissueResult * createReissueResult(
00278 XKMSReissueRequest * request,
00279 XKMSResultType::ResultMajor rmaj,
00280 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00281 const XMLCh * id = NULL) = 0;
00282
00298 virtual XKMSResult * createResult(
00299 XKMSRequestAbstractType * request,
00300 XKMSResultType::ResultMajor rmaj,
00301 XKMSResultType::ResultMinor rmin = XKMSResultType::NoneMinor,
00302 const XMLCh * id = NULL) = 0;
00303
00305
00306 private:
00307
00308
00309 XKMSCompoundResult(const XKMSCompoundResult &);
00310 XKMSCompoundResult & operator = (const XKMSCompoundResult &);
00311
00312 };
00313
00314 #endif