#pragma once #include "kubecontrol/PodInfo.hpp" #include #include #include #include namespace kubecontrol { class PodController { public: PodController(std::string pathToKubectlConfig); std::string getServerAddress(); void startPod(KubePod Pod); void stopPod(std::string Label); void stopAllPods(); std::string getPodsInfo(); std::string getInfoForOwnPod(); std::string getInfoForPod(std::string Label); void checkPodsHierarchy(); std::string getPodsInfoForAll(); std::shared_ptr getPodsInfo(std::string uuid); private: std::vector PodList_; std::string performRequest(std::string url); void performForceStopRequest(std::string uuid); std::string BearerToken_; std::string ServerAddress_; std::string Namespace_; std::string ApiCall_; // void addPodInfoToInfoList(std::shared_ptr podinfo); std::shared_ptr getPodInfo(std::string uuid); std::vector> podsInfoList_; }; } // namespace ku