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 6 7 #ifndef ABSTRACT_SINGLE_FILE_SERVER_PROCESS_H 8 #define ABSTRACT_SINGLE_FILE_SERVER_PROCESS_H 9 10 11 #include "AbstractServerProcess.h" 12 13 14 class AbstractSingleFileServerProcess : public AbstractServerProcess { 15 public: 16 AbstractSingleFileServerProcess(uint32 options); 17 virtual ~AbstractSingleFileServerProcess(); 18 19 protected: 20 virtual status_t RunInternal(); 21 22 virtual status_t ProcessLocalData() = 0; 23 24 virtual BString UrlPathComponent() = 0; 25 26 virtual status_t GetLocalPath(BPath& path) const = 0; 27 28 virtual status_t GetStandardMetaDataPath(BPath& path) const; 29 }; 30 31 #endif // ABSTRACT_SINGLE_FILE_SERVER_PROCESS_H