mirror of
https://github.com/logos-storage/logos-storage-app-skeleton.git
synced 2026-06-14 04:19:25 +00:00
49 lines
1.2 KiB
C++
49 lines
1.2 KiB
C++
#include "logos_manager.h"
|
|
|
|
#include <QCoreApplication>
|
|
#include <QDir>
|
|
#include <iostream>
|
|
|
|
int app_main(LogosModules* modules, int argc, char* argv[]);
|
|
|
|
int main(int argc, char* argv[]) {
|
|
if (argc < 2) {
|
|
std::cerr << "Usage: " << argv[0] << " <upload|download> <arguments>" << std::endl;
|
|
return 1;
|
|
}
|
|
|
|
QCoreApplication app(argc, argv);
|
|
QCoreApplication::setOrganizationName("Logos");
|
|
QCoreApplication::setApplicationName("LogosStorageCLI");
|
|
|
|
Logos logos(QCoreApplication::applicationDirPath() + "/../modules");
|
|
if (!logos.init()) {
|
|
std::cerr << "Failed to initialize Logos" << std::endl;
|
|
return 1;
|
|
}
|
|
|
|
int result = app_main(logos.modules(), argc, argv);
|
|
logos.cleanup();
|
|
return result;
|
|
}
|
|
|
|
int app_main(LogosModules* modules, int argc, char* argv[]) {
|
|
if (argc < 2) {
|
|
std::cerr << "Usage: " << argv[0] << " <file>" << std::endl;
|
|
return 1;
|
|
}
|
|
|
|
const QString jsonConfig = "{"
|
|
"\"listen-addrs\": [\"/ip4/0.0.0.0/tcp/8000\"],"
|
|
"\"disc-port\": 9000,"
|
|
"\"nat\": \"none\""
|
|
"}";
|
|
|
|
if (!modules->storage_module.init(jsonConfig)) {
|
|
std::cerr << "Failed to initialize storage module" << std::endl;
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|