01: /*
02: * @(#)DefaultTestIssueRecord.java
03: *
04: * Copyright (C) 2002-2003 Matt Albrecht
05: * groboclown@users.sourceforge.net
06: * http://groboutils.sourceforge.net
07: *
08: * Part of the GroboUtils package at:
09: * http://groboutils.sourceforge.net
10: *
11: * Permission is hereby granted, free of charge, to any person obtaining a
12: * copy of this software and associated documentation files (the "Software"),
13: * to deal in the Software without restriction, including without limitation
14: * the rights to use, copy, modify, merge, publish, distribute, sublicense,
15: * and/or sell copies of the Software, and to permit persons to whom the
16: * Software is furnished to do so, subject to the following conditions:
17: *
18: * The above copyright notice and this permission notice shall be included in
19: * all copies or substantial portions of the Software.
20: *
21: * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22: * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23: * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
24: * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25: * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
26: * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
27: * DEALINGS IN THE SOFTWARE.
28: */
29: package net.sourceforge.groboutils.pmti.v1.itf.impl;
30:
31: import net.sourceforge.groboutils.pmti.v1.itf.ITestIssueRecord;
32: import net.sourceforge.groboutils.pmti.v1.itf.IIssueRecord;
33: import net.sourceforge.groboutils.pmti.v1.itf.ITestRecord;
34:
35: /**
36: * Simple immutable implementation of <tt>ITestIssueRecord</tt>.
37: *
38: * @author Matt Albrecht <a href="mailto:groboclown@users.sourceforge.net">groboclown@users.sourceforge.net</a>
39: * @version $Date: 2003/02/10 22:52:00 $
40: * @since July 7, 2002
41: */
42: public class DefaultTestIssueRecord implements ITestIssueRecord {
43:
44: private IIssueRecord ir;
45: private ITestRecord tr;
46: private String desc;
47:
48: public DefaultTestIssueRecord(IIssueRecord ir, ITestRecord tr,
49: String d) {
50: if (ir == null || tr == null) {
51: throw new IllegalArgumentException("no null arguments");
52: }
53:
54: this .ir = ir;
55: this .tr = tr;
56: this .desc = d;
57: }
58:
59: /**
60: * Returns the issue this record is associated with.
61: */
62: public IIssueRecord getIssueRecord() {
63: return this .ir;
64: }
65:
66: /**
67: * Returns the test this record is associated with.
68: */
69: public ITestRecord getTestRecord() {
70: return this .tr;
71: }
72:
73: /**
74: * Returns any descriptive text the test associated itself with to the
75: * issue.
76: */
77: public String getDescription() {
78: return this.desc;
79: }
80: }
|