28 #ifndef __HTTPAssetLinkResourceStateBatchUpdater__ 29 #define __HTTPAssetLinkResourceStateBatchUpdater__ 31 #include "CPMUnknown.h" 33 #include "IHTTPLinkConnectionManager.h" 34 #include "IHTTPLinkManager.h" 35 #include "IHTTPLinkUtils.h" 36 #include "IHTTPServerInfo.h" 38 #include "StringUtils.h" 39 #include "URICommonUtils.h" 41 #include "DocHTTPBatchQueryManager.h" 43 #include <boost/thread/thread_time.hpp> 58 typedef std::set<UID> UIDSet;
59 typedef UIDSet::iterator UIDSet_iter;
61 typedef std::map<HTTPLinkSubsystemTypes::BatchRequestObjectType, boost::system_time> BatchRequestObjectTypeInfoMap;
62 typedef BatchRequestObjectTypeInfoMap::iterator BatchRequestObjectTypeInfoMap_iter;
65 int32 fHTTPConfiguredBatchLimit;
66 long fTimeLimitForBatchCall;
67 long fMinTimeBetweenCalls;
69 BatchRequestObjectTypeInfoMap fBatchRequestObjectTypeInfo;
71 static void HandleFetchingBatchAssetMetadata(
const std::vector<UID> &uidVector,
75 IHTTPLinkResourceServerAPIWrapper::AssetStatusWithMetadataPtrVectorPtr assetStatusWithMetadataVectorPtr);
78 bool RetrieveBatchLimitsConfigured(
void);
79 void PopulateBatchObjectTypeInfoMap(
void);
80 static void GetHttpRequestPathForBatchRequest(
const URI& uri, std::string& requestPath,
bool encodedPathRequested =
false);
83 #endif // __HTTPAssetLinkResourceStateBatchUpdater__