/** * TestCube is an enterprise Test management tool. * Copyright (C) 2011 JatakaSource Ltd. * * it under the terms of the GNU Lesser General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * TestCube is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with TestCube. If not, see <http://www.gnu.org/licenses/>. */ package org.jatakasource.testcube.web.xml.testcase; import java.util.Date; import org.apache.commons.lang.StringUtils; import org.jatakasource.common.model.security.UserPojo; import org.jatakasource.testcube.model.product.Category; import org.jatakasource.testcube.model.testcase.CasePriority; import org.jatakasource.testcube.model.testcase.CaseStatus; import org.jatakasource.testcube.model.testcase.ITestCase; import org.jatakasource.testcube.model.testcase.TestCasePojo; import org.jatakasource.testcube.web.xml.NameDescriptionRendered; import org.jatakasource.testcube.web.xml.users.UserRendered; import org.simpleframework.xml.Attribute; import org.simpleframework.xml.Element; import org.simpleframework.xml.Root; @Root(name = "TESTCASE") public class TestCaseBasicRendered extends NameDescriptionRendered<ITestCase> { public TestCaseBasicRendered() { } public TestCaseBasicRendered(TestCasePojo testcase) { super(testcase); } @Element(name = "CREATED_DATE", required = false) public Date getCreatedDate() { return getDelegated().getCreatedDate(); } @Element(name = "CREATED_DATE", required = false) public void setCreatedDate(Date createdDate) { getDelegated().setCreatedDate(createdDate); } @Element(name = "CREATED_BY", required = false) public String getCreatedBy() { return getDelegated().getCreatedBy() != null ? getDelegated().getCreatedBy().getUsername() : StringUtils.EMPTY; } @Element(name = "CREATED_BY", required = false) public void setCreatedBy(String createdBy) { // EMPTY XML method } @Element(name = "ASSIGNEE", required = false) public UserRendered getAssignee() { if (getDelegated().getAssignee() != null) return new UserRendered(getDelegated().getAssignee()); return null; } @Element(name = "ASSIGNEE", required = false) public void setAssignee(UserRendered assignee) { getDelegated().setAssignee((UserPojo) assignee.getDelegated()); } @Attribute(required = false) public Long getPriorityId() { if (getDelegated().getPriority() != null) return getDelegated().getPriority().getId(); return null; } @Attribute(required = false) public void setPriorityId(Long priorityId) { if (isItemSelected(priorityId)) getDelegated().setPriority(new CasePriority(priorityId)); else getDelegated().setPriority(null); } @Element(name = "PRIORITY_NAME", required = false, data = true) public String getPriorityName() { if (getDelegated().getPriority() != null) return getDelegated().getPriority().getName(); return null; } @Element(name = "PRIORITY_NAME", required = false, data = true) public void setPriorityName(String testPlanName) { // EMPTY XML method } @Attribute(required = false) public Long getCategoryId() { if (getDelegated().getCategory() != null) return getDelegated().getCategory().getId(); return null; } @Attribute(required = false) public void setCategoryId(Long categoryId) { if (isItemSelected(categoryId)) getDelegated().setCategory(new Category(categoryId)); else getDelegated().setCategory(null); } @Element(name = "CATEGORY_NAME", required = false, data = true) public String getCategoryName() { if (getDelegated().getCategory() != null) return getDelegated().getCategory().getName(); return null; } @Element(name = "CATEGORY_NAME", required = false, data = true) public void setCategoryName(String testPlanName) { // EMPTY XML method } @Element(name = "ESTIMATED_TIME", required = false) public String getEstimatedTime() { return getDelegated().getEstimatedTime(); } @Element(name = "ESTIMATED_TIME", required = false) public void setEstimatedTime(String estimatedTime) { getDelegated().setEstimatedTime(estimatedTime); } @Element(name = "BUGS", required = false, data = true) public String getBugs() { return getDelegated().getBugs(); } @Element(name = "BUGS", required = false, data = true) public void setBugs(String bugs) { getDelegated().setBugs(bugs); } @Attribute(required = false) public Long getStatusId() { if (getDelegated().getStatus() != null) return getDelegated().getStatus().getId(); return null; } @Attribute(required = false) public void setStatusId(Long statusId) { if (isItemSelected(statusId)) getDelegated().setStatus(new CaseStatus(statusId)); else getDelegated().setStatus(null); } }