# Path: resources/lib/nvhttp/cryptoprovider/abstractcryptoprovider.py
# class AbstractCryptoProvider(object):
#     __metaclass__ = ABCMeta
# 
#     def __init__(self, host_context_service):
#         self.host_context_service = host_context_service
#         self._current_host = None
# 
#     @abstractmethod
#     def get_cert_path(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_key_path(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_key_dir(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_client_cert(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_client_private_key(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_pem_encoded_client_cert(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def extract_cert_signature(self, cert):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @staticmethod
#     def get_key_base_path():
#         return os.path.join(os.path.expanduser('~'), '.cache/moonlight')


import os
from resources.lib.nvhttp.cryptoprovider.abstractcryptoprovider import AbstractCryptoProvider



class SimpleCryptoProvider(AbstractCryptoProvider):
    def __init__(self, host_context_service, config_helper):
        super(SimpleCryptoProvider, self).__init__(host_context_service)
        self.config_helper = config_helper

    def get_cert_path(self):
        super(SimpleCryptoProvider, self).get_cert_path()

# Path: resources/lib/nvhttp/cryptoprovider/abstractcryptoprovider.py
# class AbstractCryptoProvider(object):
#     __metaclass__ = ABCMeta
# 
#     def __init__(self, host_context_service):
#         self.host_context_service = host_context_service
#         self._current_host = None
# 
#     @abstractmethod
#     def get_cert_path(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_key_path(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_key_dir(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_client_cert(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_client_private_key(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def get_pem_encoded_client_cert(self):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @abstractmethod
#     def extract_cert_signature(self, cert):
#         self._current_host = self.host_context_service.get_current_context()
# 
#     @staticmethod
#     def get_key_base_path():
#         return os.path.join(os.path.expanduser('~'), '.cache/moonlight')


# Path: resources/lib/nvhttp/cryptoprovider/simplecryptoprovider.py
import os
from resources.lib.nvhttp.cryptoprovider.abstractcryptoprovider import AbstractCryptoProvider




class SimpleCryptoProvider(AbstractCryptoProvider):
    def __init__(self, host_context_service, config_helper):
        super(SimpleCryptoProvider, self).__init__(host_context_service)
        self.config_helper = config_helper

    def get_cert_path(self):
        super(SimpleCryptoProvider, self).get_cert_path()

        return os.path.join(self.get_key_base_path(), self._current_host.uuid, 'client.pem')