X d dl Z d dlmZ d dlZ G d de Z G d d ZdS ) N)deepcopyc e Zd ZdS )FeatureManagerApiExceptionN)__name__ __module____qualname__ *py/cl_website_collector/feature_manager.pyr r s Dr r c @ e Zd ZdZd Zedefd Zd Zd Z dS )FeatureManagerz_ Communicates with FeatureManager API to get feature settings based on server metadata c L | dz | _ || _ d S )Nz!/feature_manager/feature_settings)base_urlapi_url app_logger)selfr s r __init__zFeatureManager.__init__ s" }})LL$r returnc L d} t j d rd} | S )Nz#https://x-ray-advice.cloudlinux.comz/opt/cloudlinux/staging_modez$https://x-ray-staging.cloudlinux.com)ospathexists)r s r r zFeatureManager.base_url s( 8 7>>899 >=Hr c t j | j |d }| j d| j d| d|j |j dk rt d|j | S )N )jsontimeoutzFeatureManager request to z with payload z returned zFeatureManager API returned )requestsgetr r infostatus_coder r )r payloadresponses r requestzFeatureManager.request" s <7BGGG A$, A A.5A A*2*>A A B B B 3&&,-bHL`-b-bccc}}r c T t | }||d<