This repository has been archived on 2024-12-15. You can view files and clone it, but cannot push or open issues or pull requests.
libdokuwiki/source/dokuwiki.impl.h

39 lines
1.0 KiB
C
Raw Normal View History

#pragma once
#include "dokuwiki.h"
#include <xmlrpc-c/client.hpp>
#include <string>
#include <list>
class DokuWiki::impl
{
2018-05-09 06:56:43 +00:00
private:
std::string m_url;
xmlrpc_c::clientXmlTransport_curl m_clientTransport;
2018-05-09 06:56:43 +00:00
public:
impl(const std::string &url, const std::string &username,
const std::string &password);
2018-05-09 06:56:43 +00:00
void login(const std::string &username, const std::string &password);
std::string getVersion();
std::string getTime();
std::string getPage(const std::string &pageName);
std::string getWikiTitle();
2018-05-09 06:56:43 +00:00
DokuWiki::PageInfo getPageInfo(const std::string &pageName);
2018-03-29 18:30:30 +00:00
2018-05-09 06:56:43 +00:00
bool pageExists(const std::string &pageName);
void putPage(const std::string &pageName, const std::string &content);
void addPage(const std::string &pageName, const std::string &content);
2018-03-29 18:30:30 +00:00
2018-05-09 06:56:43 +00:00
void appendToPage(const std::string &pageName, const std::string &content);
2018-03-29 19:20:25 +00:00
2018-05-09 06:56:43 +00:00
template <typename ReturnType>
ReturnType executeCommand(const std::string &command,
const std::list<std::string> &params = {},
const std::map<std::string, xmlrpc_c::value> &attributes = {});
};