mirror of
				https://github.com/hyperion-project/hyperion.ng.git
				synced 2025-03-01 10:33:28 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
#ifndef STATICFILESERVING_H
 | 
						|
#define STATICFILESERVING_H
 | 
						|
 | 
						|
#include <QMimeDatabase>
 | 
						|
 | 
						|
//#include "QtHttpServer.h"
 | 
						|
#include "QtHttpRequest.h"
 | 
						|
#include "QtHttpReply.h"
 | 
						|
#include "QtHttpHeader.h"
 | 
						|
#include "CgiHandler.h"
 | 
						|
 | 
						|
#include <utils/Logger.h>
 | 
						|
 | 
						|
class StaticFileServing : public QObject {
 | 
						|
    Q_OBJECT
 | 
						|
 | 
						|
public:
 | 
						|
    explicit StaticFileServing (QObject * parent = nullptr);
 | 
						|
    virtual ~StaticFileServing ();
 | 
						|
 | 
						|
	///
 | 
						|
	/// @brief Overwrite current base url
 | 
						|
	///
 | 
						|
	void setBaseUrl(const QString& url);
 | 
						|
	///
 | 
						|
	/// @brief Set a new SSDP description, if empty the description will be unset and clients will get a NotFound
 | 
						|
	/// @param The description
 | 
						|
	///
 | 
						|
	void setSSDPDescription(const QString& desc);
 | 
						|
 | 
						|
public slots:
 | 
						|
    void onRequestNeedsReply  (QtHttpRequest * request, QtHttpReply * reply);
 | 
						|
 | 
						|
private:
 | 
						|
	QString         _baseUrl;
 | 
						|
	QMimeDatabase * _mimeDb;
 | 
						|
	CgiHandler      _cgi;
 | 
						|
	Logger        * _log;
 | 
						|
	QByteArray      _ssdpDescription;
 | 
						|
 | 
						|
	void printErrorToReply (QtHttpReply * reply, QtHttpReply::StatusCode code, QString errorMessage);
 | 
						|
 | 
						|
};
 | 
						|
 | 
						|
#endif // STATICFILESERVING_H
 |