package com.epam.ta.reportportal.ws.model;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;

import java.util.Map;

/**
 * @author Pavel Bortnik
 */
@JsonInclude(JsonInclude.Include.NON_NULL)
public class BasicReportingRq {

	@JsonProperty("projectName")
	private String projectName;

	@JsonProperty("username")
	private String username;

	@JsonProperty("role")
	private String role;

	@JsonProperty("projectDetails")
	private Map<String, ProjectDetails> projectDetails;

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getRole() {
		return role;
	}

	public void setRole(String role) {
		this.role = role;
	}

	public Map<String, ProjectDetails> getProjectDetails() {
		return projectDetails;
	}

	public void setProjectDetails(Map<String, ProjectDetails> projectDetails) {
		this.projectDetails = projectDetails;
	}

	public static class ProjectDetails {

		@JsonProperty("projectId")
		private Long projectId;

		@JsonProperty("projectRole")
		private String projectRole;

		public Long getProjectId() {
			return projectId;
		}

		public void setProjectId(Long projectId) {
			this.projectId = projectId;
		}

		public String getProjectRole() {
			return projectRole;
		}

		public void setProjectRole(String projectRole) {
			this.projectRole = projectRole;
		}
	}
}

@@ -149,31 +149,8 @@
 y;%0A%0A
-import java.util.Map;%0A%0A
 /**%0A
@@ -372,141 +372,8 @@
 e;%0A%0A
-%09@JsonProperty(%22role%22)%0A%09private String role;%0A%0A%09@JsonProperty(%22projectDetails%22)%0A%09private Map%3CString, ProjectDetails%3E projectDetails;%0A%0A
 %09pub
@@ -610,24 +610,24 @@
 username) %7B%0A
+
 %09%09this.usern
@@ -648,773 +648,7 @@
 ;%0A%09%7D
-%0A%0A%09public String getRole() %7B%0A%09%09return role;%0A%09%7D%0A%0A%09public void setRole(String role) %7B%0A%09%09this.role = role;%0A%09%7D%0A%0A%09public Map%3CString, ProjectDetails%3E getProjectDetails() %7B%0A%09%09return projectDetails;%0A%09%7D%0A%0A%09public void setProjectDetails(Map%3CString, ProjectDetails%3E projectDetails) %7B%0A%09%09this.projectDetails = projectDetails;%0A%09%7D%0A%0A%09public static class ProjectDetails %7B%0A%0A%09%09@JsonProperty(%22projectId%22)%0A%09%09private Long projectId;%0A%0A%09%09@JsonProperty(%22projectRole%22)%0A%09%09private String projectRole;%0A%0A%09%09public Long getProjectId() %7B%0A%09%09%09return projectId;%0A%09%09%7D%0A%0A%09%09public void setProjectId(Long projectId) %7B%0A%09%09%09this.projectId = projectId;%0A%09%09%7D%0A%0A%09%09public String getProjectRole() %7B%0A%09%09%09return projectRole;%0A%09%09%7D%0A%0A%09%09public void setProjectRole(String projectRole) %7B%0A%09%09%09this.projectRole = projectRole;%0A%09%09%7D%0A%09%7D
 %0A%7D%0A

remove unused fields