package com.dacrt.SBIABackend.dto.requestDto;
import java.util.List;

import com.dacrt.SBIABackend.dto.CustomExtensionDto;
import com.dacrt.SBIABackend.dto.OktaCredentialsDto;
import com.dacrt.SBIABackend.dto.OktaNameResponseDto;
import com.dacrt.SBIABackend.dto.oktaEmailDto;
import com.dacrt.SBIABackend.dto.requestDto.NameOktaRequestDto;
import com.fasterxml.jackson.annotation.JsonProperty;


public class SchemaOktaCreateDto {

	@JsonProperty("urn:ietf:params:scim:schemas:extension:custom:2.0:User")
    private CustomExtensionDto customExtension;
	private List<String> schemas;
	
	private String userName;
	private NameOktaRequestDto name;
	private NameOktaRequestDto profile;
	private OktaCredentialsDto credentials;
	private boolean active;
	private List<oktaEmailDto> emails;
	private String externalId;
	
	public SchemaOktaCreateDto(List<String> schemas, String userName, NameOktaRequestDto name, NameOktaRequestDto profile,OktaCredentialsDto credentials, boolean active,
			List<oktaEmailDto> emails,String externalId,CustomExtensionDto customExtension) {
		super();
		this.schemas = schemas;
		this.userName = userName;
		this.name = name;
		this.profile = profile;
		this.active = active;
		this.emails = emails;
		this.externalId = externalId;
		this.credentials = credentials;
		this.customExtension = customExtension;
	}

	public SchemaOktaCreateDto() {
		super();
		// TODO Auto-generated constructor stub
	}

	public List<String> getSchemas() {
		return schemas;
	}

	public void setSchemas(List<String> schemas) {
		this.schemas = schemas;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public NameOktaRequestDto getName() {
		return name;
	}

	public void setName(NameOktaRequestDto name) {
		this.name = name;
	}

	public boolean isActive() {
		return active;
	}

	public void setActive(boolean active) {
		this.active = active;
	}

	public List<oktaEmailDto> getEmails() {
		return emails;
	}

	public void setEmails(List<oktaEmailDto> emails) {
		this.emails = emails;
	}

	public String getExternalId() {
		return externalId;
	}

	public void setExternalId(String externalId) {
		this.externalId = externalId;
	}

	public NameOktaRequestDto getProfile() {
		return profile;
	}

	public void setProfile(NameOktaRequestDto profile) {
		this.profile = profile;
	}

	public OktaCredentialsDto getCredentials() {
		return credentials;
	}

	public void setCredentials(OktaCredentialsDto credentials) {
		this.credentials = credentials;
	}

	public CustomExtensionDto getCustomExtension() {
		return customExtension;
	}

	public void setCustomExtension(CustomExtensionDto customExtension) {
		this.customExtension = customExtension;
	}
}
