From a2ae77a4549e944d4aadac425da2bf2cc0b0cf1c Mon Sep 17 00:00:00 2001 From: dec05eba Date: Fri, 21 May 2021 20:42:15 +0200 Subject: Temporary disable package server, update readme --- src/Package.cpp | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'src/Package.cpp') diff --git a/src/Package.cpp b/src/Package.cpp index a2c1681..6f81aab 100644 --- a/src/Package.cpp +++ b/src/Package.cpp @@ -13,6 +13,7 @@ using namespace rapidjson; // Cache of package list, only stored in memory right now. // TODO: Store this in a file as well, and update it when the remote package list updates static Document *packageList = nullptr; +static const char *server_url = "https://git.dec05eba.com/sibs-packages/plain/packages.json"; namespace sibs { @@ -116,7 +117,7 @@ namespace sibs HttpResult httpResult = curl::get(url); if(!httpResult.success) - return Result::Err(httpResult.str, httpResult.httpCode); + return Result::Err(std::string("Failed to connect to ") + server_url); Document *doc = new Document(); ParseResult parseResult = doc->Parse(httpResult.str.c_str()); @@ -136,11 +137,25 @@ namespace sibs Result Package::getPackage(const char *packageName, const PackageVersionRange &versionRange, Platform platform) { - Result packageList = Package::getPackageList("https://git.dec05eba.com/sibs-packages/plain/packages.json"); + #if 1 + string errMsg = "No package with the name \""; + errMsg += packageName; + errMsg += "\" was found"; + return Result::Err(errMsg); + #endif + + Result packageList = Package::getPackageList(server_url); if(!packageList) return Result::Err(packageList); const Document &packageDoc = *packageList.unwrap(); + if(!packageDoc.IsObject()) + { + string errMsg = "Invalid response from server "; + errMsg += server_url; + errMsg += " or the server is down or your internet is down"; + return Result::Err(errMsg); + } auto packageMetaDataJsonIt = packageDoc.FindMember(packageName); if (packageMetaDataJsonIt == packageDoc.MemberEnd()) -- cgit v1.2.3