1 /* 2 * Copyright 2017-2018, Andrew Lindesay <apl@lindesay.co.nz>. 3 * All rights reserved. Distributed under the terms of the MIT License. 4 */ 5 #ifndef REPOSITORY_DATA_UPDATE_PROCESS_H 6 #define REPOSITORY_DATA_UPDATE_PROCESS_H 7 8 9 #include "AbstractSingleFileServerProcess.h" 10 11 #include <File.h> 12 #include <Path.h> 13 #include <String.h> 14 #include <Url.h> 15 16 #include "Model.h" 17 #include "PackageInfo.h" 18 19 20 #undef B_TRANSLATION_CONTEXT 21 #define B_TRANSLATION_CONTEXT "ServerRepositoryDataUpdateProcess" 22 23 24 class ServerRepositoryDataUpdateProcess : public AbstractSingleFileServerProcess { 25 public: 26 27 ServerRepositoryDataUpdateProcess( 28 Model* model, uint32 serverProcessOptions); 29 virtual ~ServerRepositoryDataUpdateProcess(); 30 31 const char* Name() const; 32 const char* Description() const; 33 34 protected: 35 status_t GetStandardMetaDataPath(BPath& path) const; 36 void GetStandardMetaDataJsonPath( 37 BString& jsonPath) const; 38 39 BString UrlPathComponent(); 40 status_t ProcessLocalData(); 41 status_t GetLocalPath(BPath& path) const; 42 43 private: 44 Model* fModel; 45 46 }; 47 48 #endif // REPOSITORY_DATA_UPDATE_PROCESS_H 49