Exemplo n.º 1
0
        internal static UserCompanyInfoApiModel DeserializeUserCompanyInfoApiModel(XElement element)
        {
            long?  id = default;
            bool?  isAccessToCompanyActivated           = default;
            bool?  isDomainParentManagerInCompanyDomain = default;
            bool?  isUserActive = default;
            string name         = default;
            string surname      = default;
            UserCompanyInfoApiModelUserCompanyRole?userCompanyRole = default;
            string userContactEmail = default;
            long?  userId           = default;
            UserCompanyInfoApiModelUserRole?userRole = default;

            if (element.Element("id") is XElement idElement)
            {
                id = (long?)idElement;
            }
            if (element.Element("isAccessToCompanyActivated") is XElement isAccessToCompanyActivatedElement)
            {
                isAccessToCompanyActivated = (bool?)isAccessToCompanyActivatedElement;
            }
            if (element.Element("isDomainParentManagerInCompanyDomain") is XElement isDomainParentManagerInCompanyDomainElement)
            {
                isDomainParentManagerInCompanyDomain = (bool?)isDomainParentManagerInCompanyDomainElement;
            }
            if (element.Element("isUserActive") is XElement isUserActiveElement)
            {
                isUserActive = (bool?)isUserActiveElement;
            }
            if (element.Element("name") is XElement nameElement)
            {
                name = (string)nameElement;
            }
            if (element.Element("surname") is XElement surnameElement)
            {
                surname = (string)surnameElement;
            }
            if (element.Element("userCompanyRole") is XElement userCompanyRoleElement)
            {
                userCompanyRole = new UserCompanyInfoApiModelUserCompanyRole(userCompanyRoleElement.Value);
            }
            if (element.Element("userContactEmail") is XElement userContactEmailElement)
            {
                userContactEmail = (string)userContactEmailElement;
            }
            if (element.Element("userId") is XElement userIdElement)
            {
                userId = (long?)userIdElement;
            }
            if (element.Element("userRole") is XElement userRoleElement)
            {
                userRole = new UserCompanyInfoApiModelUserRole(userRoleElement.Value);
            }
            return(new UserCompanyInfoApiModel(id, isAccessToCompanyActivated, isDomainParentManagerInCompanyDomain, isUserActive, name, surname, userCompanyRole, userContactEmail, userId, userRole));
        }
Exemplo n.º 2
0
        internal static UserCompanyInfoApiModel DeserializeUserCompanyInfoApiModel(JsonElement element)
        {
            Optional <long>   id = default;
            Optional <bool>   isAccessToCompanyActivated           = default;
            Optional <bool>   isDomainParentManagerInCompanyDomain = default;
            Optional <bool>   isUserActive = default;
            Optional <string> name         = default;
            Optional <string> surname      = default;
            Optional <UserCompanyInfoApiModelUserCompanyRole> userCompanyRole = default;
            Optional <string> userContactEmail = default;
            Optional <long>   userId           = default;
            Optional <UserCompanyInfoApiModelUserRole> userRole = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("id"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    id = property.Value.GetInt64();
                    continue;
                }
                if (property.NameEquals("isAccessToCompanyActivated"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    isAccessToCompanyActivated = property.Value.GetBoolean();
                    continue;
                }
                if (property.NameEquals("isDomainParentManagerInCompanyDomain"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    isDomainParentManagerInCompanyDomain = property.Value.GetBoolean();
                    continue;
                }
                if (property.NameEquals("isUserActive"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    isUserActive = property.Value.GetBoolean();
                    continue;
                }
                if (property.NameEquals("name"))
                {
                    name = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("surname"))
                {
                    surname = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("userCompanyRole"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    userCompanyRole = new UserCompanyInfoApiModelUserCompanyRole(property.Value.GetString());
                    continue;
                }
                if (property.NameEquals("userContactEmail"))
                {
                    userContactEmail = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("userId"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    userId = property.Value.GetInt64();
                    continue;
                }
                if (property.NameEquals("userRole"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    userRole = new UserCompanyInfoApiModelUserRole(property.Value.GetString());
                    continue;
                }
            }
            return(new UserCompanyInfoApiModel(Optional.ToNullable(id), Optional.ToNullable(isAccessToCompanyActivated), Optional.ToNullable(isDomainParentManagerInCompanyDomain), Optional.ToNullable(isUserActive), name.Value, surname.Value, Optional.ToNullable(userCompanyRole), userContactEmail.Value, Optional.ToNullable(userId), Optional.ToNullable(userRole)));
        }