Source code for q2_cores.OSI.queries.update_email_query

import logging

from lxml import etree
from q2_sdk.models.cores.queries.base_query import BaseQuery

from q2_cores import data_helpers


[docs] class UpdateEmailQuery(BaseQuery): """Updates Phone info for an OSI Entity""" def __init__( self, logger: logging.Logger, access_number: str, pin: str, use_code: int, email: str, email_type: str, ): self.access_number = access_number self.pin = pin self.use_code = use_code self.email = email self.email_type = email_type super().__init__(logger)
[docs] def build(self): root = etree.Element("PROCREQ", PROC="1200") etree.SubElement(root, "ACCESS_NBR").text = str(self.access_number) etree.SubElement(root, "PIN").text = str(self.pin) etree.SubElement(root, "SOURCE").text = "WWW" etree.SubElement(root, "UC").text = str(self.use_code) etree.SubElement(root, "EMAIL_ADDRESS_UC").text = self.email_type etree.SubElement(root, "EMAIL_ADDRESS").text = str(self.email) xml_bytes = b"95\t" + etree.tostring(root) return xml_bytes.decode()
[docs] def mock_response(self): response = """ <PROCREQ PROC="1200"> <RESPONSE>OK</RESPONSE> </PROCREQ> """ response = [data_helpers.normalize_xml_str(response), "ITC\t1\t0"] return "\n".join(response)