public static MicrosoftGraphServicePrincipalInner fromJson()

in sdk/resourcemanager/azure-resourcemanager-authorization/src/main/java/com/azure/resourcemanager/authorization/fluent/models/MicrosoftGraphServicePrincipalInner.java [1458:1625]


    public static MicrosoftGraphServicePrincipalInner fromJson(JsonReader jsonReader) throws IOException {
        return jsonReader.readObject(reader -> {
            MicrosoftGraphServicePrincipalInner deserializedMicrosoftGraphServicePrincipalInner
                = new MicrosoftGraphServicePrincipalInner();
            Map<String, Object> additionalProperties = null;
            while (reader.nextToken() != JsonToken.END_OBJECT) {
                String fieldName = reader.getFieldName();
                reader.nextToken();

                if ("id".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.withId(reader.getString());
                } else if ("deletedDateTime".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.withDeletedDateTime(reader
                        .getNullable(nonNullReader -> CoreUtils.parseBestOffsetDateTime(nonNullReader.getString())));
                } else if ("accountEnabled".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.accountEnabled
                        = reader.getNullable(JsonReader::getBoolean);
                } else if ("addIns".equals(fieldName)) {
                    List<MicrosoftGraphAddIn> addIns
                        = reader.readArray(reader1 -> MicrosoftGraphAddIn.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.addIns = addIns;
                } else if ("alternativeNames".equals(fieldName)) {
                    List<String> alternativeNames = reader.readArray(reader1 -> reader1.getString());
                    deserializedMicrosoftGraphServicePrincipalInner.alternativeNames = alternativeNames;
                } else if ("appDescription".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.appDescription = reader.getString();
                } else if ("appDisplayName".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.appDisplayName = reader.getString();
                } else if ("appId".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.appId = reader.getString();
                } else if ("applicationTemplateId".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.applicationTemplateId = reader.getString();
                } else if ("appOwnerOrganizationId".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.appOwnerOrganizationId
                        = reader.getNullable(nonNullReader -> UUID.fromString(nonNullReader.getString()));
                } else if ("appRoleAssignmentRequired".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.appRoleAssignmentRequired
                        = reader.getNullable(JsonReader::getBoolean);
                } else if ("appRoles".equals(fieldName)) {
                    List<MicrosoftGraphAppRole> appRoles
                        = reader.readArray(reader1 -> MicrosoftGraphAppRole.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.appRoles = appRoles;
                } else if ("description".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.description = reader.getString();
                } else if ("displayName".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.displayName = reader.getString();
                } else if ("homepage".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.homepage = reader.getString();
                } else if ("info".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.info
                        = MicrosoftGraphInformationalUrl.fromJson(reader);
                } else if ("keyCredentials".equals(fieldName)) {
                    List<MicrosoftGraphKeyCredentialInner> keyCredentials
                        = reader.readArray(reader1 -> MicrosoftGraphKeyCredentialInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.keyCredentials = keyCredentials;
                } else if ("loginUrl".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.loginUrl = reader.getString();
                } else if ("logoutUrl".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.logoutUrl = reader.getString();
                } else if ("notes".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.notes = reader.getString();
                } else if ("notificationEmailAddresses".equals(fieldName)) {
                    List<String> notificationEmailAddresses = reader.readArray(reader1 -> reader1.getString());
                    deserializedMicrosoftGraphServicePrincipalInner.notificationEmailAddresses
                        = notificationEmailAddresses;
                } else if ("oauth2PermissionScopes".equals(fieldName)) {
                    List<MicrosoftGraphPermissionScope> oauth2PermissionScopes
                        = reader.readArray(reader1 -> MicrosoftGraphPermissionScope.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.oauth2PermissionScopes = oauth2PermissionScopes;
                } else if ("passwordCredentials".equals(fieldName)) {
                    List<MicrosoftGraphPasswordCredentialInner> passwordCredentials
                        = reader.readArray(reader1 -> MicrosoftGraphPasswordCredentialInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.passwordCredentials = passwordCredentials;
                } else if ("preferredSingleSignOnMode".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.preferredSingleSignOnMode = reader.getString();
                } else if ("preferredTokenSigningKeyThumbprint".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.preferredTokenSigningKeyThumbprint
                        = reader.getString();
                } else if ("replyUrls".equals(fieldName)) {
                    List<String> replyUrls = reader.readArray(reader1 -> reader1.getString());
                    deserializedMicrosoftGraphServicePrincipalInner.replyUrls = replyUrls;
                } else if ("samlSingleSignOnSettings".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.samlSingleSignOnSettings
                        = MicrosoftGraphSamlSingleSignOnSettings.fromJson(reader);
                } else if ("servicePrincipalNames".equals(fieldName)) {
                    List<String> servicePrincipalNames = reader.readArray(reader1 -> reader1.getString());
                    deserializedMicrosoftGraphServicePrincipalInner.servicePrincipalNames = servicePrincipalNames;
                } else if ("servicePrincipalType".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.servicePrincipalType = reader.getString();
                } else if ("signInAudience".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.signInAudience = reader.getString();
                } else if ("tags".equals(fieldName)) {
                    List<String> tags = reader.readArray(reader1 -> reader1.getString());
                    deserializedMicrosoftGraphServicePrincipalInner.tags = tags;
                } else if ("tokenEncryptionKeyId".equals(fieldName)) {
                    deserializedMicrosoftGraphServicePrincipalInner.tokenEncryptionKeyId
                        = reader.getNullable(nonNullReader -> UUID.fromString(nonNullReader.getString()));
                } else if ("appRoleAssignedTo".equals(fieldName)) {
                    List<MicrosoftGraphAppRoleAssignment> appRoleAssignedTo
                        = reader.readArray(reader1 -> MicrosoftGraphAppRoleAssignment.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.appRoleAssignedTo = appRoleAssignedTo;
                } else if ("appRoleAssignments".equals(fieldName)) {
                    List<MicrosoftGraphAppRoleAssignment> appRoleAssignments
                        = reader.readArray(reader1 -> MicrosoftGraphAppRoleAssignment.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.appRoleAssignments = appRoleAssignments;
                } else if ("claimsMappingPolicies".equals(fieldName)) {
                    List<MicrosoftGraphClaimsMappingPolicy> claimsMappingPolicies
                        = reader.readArray(reader1 -> MicrosoftGraphClaimsMappingPolicy.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.claimsMappingPolicies = claimsMappingPolicies;
                } else if ("createdObjects".equals(fieldName)) {
                    List<MicrosoftGraphDirectoryObjectInner> createdObjects
                        = reader.readArray(reader1 -> MicrosoftGraphDirectoryObjectInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.createdObjects = createdObjects;
                } else if ("delegatedPermissionClassifications".equals(fieldName)) {
                    List<MicrosoftGraphDelegatedPermissionClassification> delegatedPermissionClassifications = reader
                        .readArray(reader1 -> MicrosoftGraphDelegatedPermissionClassification.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.delegatedPermissionClassifications
                        = delegatedPermissionClassifications;
                } else if ("endpoints".equals(fieldName)) {
                    List<MicrosoftGraphEndpoint> endpoints
                        = reader.readArray(reader1 -> MicrosoftGraphEndpoint.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.endpoints = endpoints;
                } else if ("homeRealmDiscoveryPolicies".equals(fieldName)) {
                    List<MicrosoftGraphHomeRealmDiscoveryPolicyInner> homeRealmDiscoveryPolicies
                        = reader.readArray(reader1 -> MicrosoftGraphHomeRealmDiscoveryPolicyInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.homeRealmDiscoveryPolicies
                        = homeRealmDiscoveryPolicies;
                } else if ("memberOf".equals(fieldName)) {
                    List<MicrosoftGraphDirectoryObjectInner> memberOf
                        = reader.readArray(reader1 -> MicrosoftGraphDirectoryObjectInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.memberOf = memberOf;
                } else if ("oauth2PermissionGrants".equals(fieldName)) {
                    List<MicrosoftGraphOAuth2PermissionGrant> oauth2PermissionGrants
                        = reader.readArray(reader1 -> MicrosoftGraphOAuth2PermissionGrant.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.oauth2PermissionGrants = oauth2PermissionGrants;
                } else if ("ownedObjects".equals(fieldName)) {
                    List<MicrosoftGraphDirectoryObjectInner> ownedObjects
                        = reader.readArray(reader1 -> MicrosoftGraphDirectoryObjectInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.ownedObjects = ownedObjects;
                } else if ("owners".equals(fieldName)) {
                    List<MicrosoftGraphDirectoryObjectInner> owners
                        = reader.readArray(reader1 -> MicrosoftGraphDirectoryObjectInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.owners = owners;
                } else if ("tokenIssuancePolicies".equals(fieldName)) {
                    List<MicrosoftGraphTokenIssuancePolicy> tokenIssuancePolicies
                        = reader.readArray(reader1 -> MicrosoftGraphTokenIssuancePolicy.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.tokenIssuancePolicies = tokenIssuancePolicies;
                } else if ("tokenLifetimePolicies".equals(fieldName)) {
                    List<MicrosoftGraphTokenLifetimePolicy> tokenLifetimePolicies
                        = reader.readArray(reader1 -> MicrosoftGraphTokenLifetimePolicy.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.tokenLifetimePolicies = tokenLifetimePolicies;
                } else if ("transitiveMemberOf".equals(fieldName)) {
                    List<MicrosoftGraphDirectoryObjectInner> transitiveMemberOf
                        = reader.readArray(reader1 -> MicrosoftGraphDirectoryObjectInner.fromJson(reader1));
                    deserializedMicrosoftGraphServicePrincipalInner.transitiveMemberOf = transitiveMemberOf;
                } else {
                    if (additionalProperties == null) {
                        additionalProperties = new LinkedHashMap<>();
                    }

                    additionalProperties.put(fieldName, reader.readUntyped());
                }
            }
            deserializedMicrosoftGraphServicePrincipalInner.additionalProperties = additionalProperties;

            return deserializedMicrosoftGraphServicePrincipalInner;
        });
    }