o
    v^d  ã                   @   sj   d dl mZmZ d dlmZmZ d dlmZ d dlZd dl	Z	d dl
Z
d dlZd dlmZ G dd„ dƒZdS )é    )ÚcloudServiceDAO_pb2_grpcÚcloudServiceDAO_pb2)ÚservicesAxwayAdmin_pb2_grpcÚservicesAxwayAdmin_pb2)ÚjsonifyN)ÚMessageToJsonc                   @   s4   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ ZdS )ÚAxwaySrvc                 C   s   t  |¡}t  dd|¡}|S )NÚ zgustavo.victoria)r   Úcredentials_daoÚ
insertForm)ÚrequestÚPATH_APPZcredential_daoZresult_insertdb© r   ú@/home/gothic-suse/public_html/api_core_daas/App/main/AxwaySrv.pyÚmain   s   
zAxwaySrv.mainc                 C   sH   t | d d dƒ�}| ¡ }W d   ƒ n1 sw   Y  t |¡}|S )Nz/App/certs/csharp_dao/úca.pemÚrb)ÚopenÚreadÚgrpcÚssl_channel_credentials)r   ÚfpÚca_certÚcredsr   r   r   r
   !   s
   
ÿ
zAxwaySrv.credentials_daoc                 C   sF   t jt| d d dƒ ¡ t| d d dƒ ¡ t| d d dƒ ¡ d�S )Nz/App/certs/csharp_adminaxway/r   r   z
server.keyz
server.pem)Úroot_certificatesÚprivate_keyÚcertificate_chain)r   r   r   r   )r   r   r   r   Úcredentials_axway-   s
   ýzAxwaySrv.credentials_axwayc                 C   s:   t jd|d�}t |¡}tj|d�}| |¡}t|ƒ}|S )Núlocalhost:8443©Úcredentials)Z	user_name)r   Úsecure_channelr   ZservicioDAOServiceStubr   ZGetUserVCDRequestZ
getUserVCDr   ÚresponseÚstrÚjsonÚloadsÚContractedServicesRequestÚplan_idZgetSaveFormAxwayServiceZSaveFormAxwayServiceRequestr   )Ú	data_formZuser_vcdÚ
credentialÚcore_channelZstub_usrZreq_usrZres_usrÚreZ
id_usr_vcdZreq_srv_contractÚreqZres_srv_contractÚresr   r   r   r   4   s   

zAxwaySrv.insertFormc                 C   sT   t jd|d�}t |¡}tj| d�}| |¡}	 t|jjƒ t	 
d|jj¡ ¡ }|S )Nr   r   )ZfromRegistroz{.*})r   r!   r   ZServiceAxwayAdminStubr   ZcontractedServiceRequestZcontractedServiceÚprintr"   r+   ÚsearchÚgroup)r(   r)   r*   Ústubr,   r-   Úresultr   r   r   ÚserviceContractedR   s   

zAxwaySrv.serviceContractedN)Ú__name__Ú
__module__Ú__qualname__r   r
   r   r   r3   r   r   r   r   r      s    r   )Z
csharp_daor   r   Zcsharp_adminaxwayr   r   Úflaskr   r   Úbase64r$   r+   Zgoogle.protobuf.json_formatr   r   r   r   r   r   Ú<module>   s   