Subversion Repositories XServices

Rev

Rev 39 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
39 brianR 1
/*
2
 *   Mylyn Connector for Serena Business Mashups
3
 * 	 Copyright 2010 Brian Rosenberger (Brutex Network)
4
 *
5
 *   Licensed under the Apache License, Version 2.0 (the "License");
6
 *   you may not use this file except in compliance with the License.
7
 *   You may obtain a copy of the License at
8
 *
9
 *       http://www.apache.org/licenses/LICENSE-2.0
10
 *
11
 *   Unless required by applicable law or agreed to in writing, software
12
 *   distributed under the License is distributed on an "AS IS" BASIS,
13
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 *   See the License for the specific language governing permissions and
15
 *   limitations under the License.
16
 *
17
 *   Serena, TeamTrack and Serena Business Mashup are
18
 * 	 registered trademarks of SERENA Software Inc.
19
 */
20
package net.brutex.mylyn.sbmconnector.core.model;
21
 
22
/**
23
 * System DBFieldnames for SBM/ TeamTrack.
24
 *
25
 * @author Brian Rosenberger
26
 */
27
public enum SBMSystemFields {
28
 
29
	/** The internal item id in [tableid:recordid] format. */
30
	ID("ID", true),
31
 
32
	/** The internal uuid. */
33
	UUID("UUID", false),
34
 
35
	/** Whether the item is active or inactive in its current state */
36
	ACTIVEINACTIVE("ACTIVEINACTIVE", false),
37
 
38
	/** The date that the item was closed */
39
	CLOSEDATE("CLOSEDATE", true),
40
 
41
	/** Used for Partner Access to CRs They Submit */
42
	COMPANY("COMPANY", false),
43
 
44
	/** Used for Partner Access to CRs They Submit */
45
	CONTACT("CONTACT", false),
46
 
47
	/** Detailed information about the item */
48
	 DESCRIPTION("DESCRIPTION", true),
49
 
50
	 /** The displayed identifier of the item */
51
	 ISSUEID("ISSUEID", true),
52
 
53
	 /** The type of the item */
54
	 ISSUETYPE("ISSUETYPE", true),
55
 
56
	 /** The last time the item's data was changed */
57
	 LASTMODIFIEDDATE("LASTMODIFIEDDATE", true),
58
 
59
	 /** The last person to change the data in this item */
60
	 LASTMODIFIER("LASTMODIFIER", true),
61
 
62
	 /** The last time the state of this item was changed */
63
	 LASTSTATECHANGEDATE("LASTSTATECHANGEDATE", false),
64
 
65
	 /** The last person to change the state of this item */
66
	 LASTSTATECHANGER("LASTSTATECHANGER", false),
67
 
68
	 /** The primary person who currently owns the item */
69
	 OWNER("OWNER", false),
70
 
71
	 /** The project in which this item resides */
72
	 PROJECTID("PROJECTID", false),
73
 
74
	 /** Detailed information about the resolution */
75
	 RESOLUTIONDESC("RESOLUTIONDESC", false),
76
 
77
	 /** Summary description of the resolution */
78
	 RESOLUTIONSUMMARY("RESOLUTIONSUMMARY", false),
79
 
80
	 /** The secondary people who currently own the item */
81
	 SECONDARYOWNER("SECONDARYOWNER", false),
82
 
83
	 /** The current state of the item */
84
	 STATE("STATE", true),
85
 
86
	 /** The date that the item was created/submitted */
87
	 SUBMITDATE("SUBMITDATE", true),
88
 
89
	 /** The person who created/submitted the item */
90
	 SUBMITTER("SUBMITTER", true),
91
 
92
	 /** Summary description of the item */
93
	 TITLE("TITLE", true);
94
 
95
 
96
	private final String value;
97
	private final boolean hasTaskAttribute;
98
 
99
    SBMSystemFields(String v, boolean hasTaskAttribute) {
100
        value = v;
101
        this.hasTaskAttribute = hasTaskAttribute;
102
    }
103
 
104
    public String getValue() {
105
    	return value;
106
    }
107
 
108
    public boolean hasTaskAttribute() {
109
    	return this.hasTaskAttribute;
110
    }
111
 
112
    public static SBMSystemFields fromValue(String v) {
113
        for (SBMSystemFields c: SBMSystemFields.values()) {
114
            if (c.value.equals(v)) {
115
                return c;
116
            }
117
        }
118
        throw new IllegalArgumentException(v);
119
    }
120
}