diff options
5 files changed, 254 insertions, 106 deletions
diff --git a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaAttribute.java b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaAttribute.java index ace917153..52d0a58fb 100644 --- a/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaAttribute.java +++ b/org.eclipse.mylyn.bugzilla.core/src/org/eclipse/mylyn/internal/bugzilla/core/BugzillaAttribute.java @@ -11,233 +11,236 @@ package org.eclipse.mylyn.internal.bugzilla.core; +import java.util.Arrays; +import java.util.EnumSet; + +import org.eclipse.mylyn.tasks.core.data.AbstractTaskSchema.Flag; import org.eclipse.mylyn.tasks.core.data.TaskAttribute; /** * @author Rob Elves */ public enum BugzillaAttribute { - STATUS_WHITEBOARD(Messages.BugzillaAttribute_Status_Whiteboard, - "status_whiteboard", TaskAttribute.TYPE_LONG_RICH_TEXT, false, false), //$NON-NLS-1$ + "status_whiteboard", TaskAttribute.TYPE_LONG_RICH_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - ACTUAL_TIME(Messages.BugzillaAttribute_Worked, "actual_time", TaskAttribute.TYPE_SHORT_TEXT, true, true), //$NON-NLS-1$ + ACTUAL_TIME(Messages.BugzillaAttribute_Worked, "actual_time", TaskAttribute.TYPE_SHORT_TEXT, Flag.READ_ONLY), //$NON-NLS-1$ - ADD_COMMENT(Messages.BugzillaAttribute_Additional_Comments, "comment", TaskAttribute.TYPE_LONG_TEXT, true, false), //$NON-NLS-1$ + ADD_COMMENT(Messages.BugzillaAttribute_Additional_Comments, "comment", TaskAttribute.TYPE_LONG_TEXT), //$NON-NLS-1$ - ALIAS(Messages.BugzillaAttribute_Alias, "alias", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + ALIAS(Messages.BugzillaAttribute_Alias, "alias", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - ASSIGNED_TO(Messages.BugzillaAttribute_Assigned_to, "assigned_to", TaskAttribute.TYPE_PERSON, true, true), //$NON-NLS-1$ + ASSIGNED_TO(Messages.BugzillaAttribute_Assigned_to, + "assigned_to", TaskAttribute.TYPE_PERSON, Flag.PEOPLE, Flag.READ_ONLY), //$NON-NLS-1$ ASSIGNED_TO_NAME(Messages.BugzillaAttribute_Assigned_to_NAME, - "assigned_to_name", TaskAttribute.TYPE_PERSON, true, true), //$NON-NLS-1$ + "assigned_to_name", TaskAttribute.TYPE_PERSON, Flag.READ_ONLY), //$NON-NLS-1$ - ATTACHID(Messages.BugzillaAttribute_ATTACH_ID, "attachid", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + ATTACHID(Messages.BugzillaAttribute_ATTACH_ID, "attachid", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - ATTACHMENT(Messages.BugzillaAttribute_attachment, "attachment", TaskAttribute.TYPE_ATTACHMENT, false, false), //$NON-NLS-1$ + ATTACHMENT(Messages.BugzillaAttribute_attachment, "attachment", TaskAttribute.TYPE_ATTACHMENT, Flag.ATTRIBUTE), //$NON-NLS-1$ - BLOCKED(Messages.BugzillaAttribute_Blocks, "blocked", TaskAttribute.TYPE_TASK_DEPENDENCY, false, false), //$NON-NLS-1$ + BLOCKED(Messages.BugzillaAttribute_Blocks, "blocked", TaskAttribute.TYPE_TASK_DEPENDENCY, Flag.ATTRIBUTE), //$NON-NLS-1$ - BUG(Messages.BugzillaAttribute_bug, "bug", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + BUG(Messages.BugzillaAttribute_bug, "bug", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - BUG_FILE_LOC(Messages.BugzillaAttribute_URL, "bug_file_loc", TaskAttribute.TYPE_URL, false, false), //$NON-NLS-1$ + BUG_FILE_LOC(Messages.BugzillaAttribute_URL, "bug_file_loc", TaskAttribute.TYPE_URL, Flag.ATTRIBUTE), //$NON-NLS-1$ - BUG_ID(Messages.BugzillaAttribute_Bug_ID, "bug_id", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + BUG_ID(Messages.BugzillaAttribute_Bug_ID, "bug_id", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - BUG_SEVERITY(Messages.BugzillaAttribute_Severity, "bug_severity", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + BUG_SEVERITY(Messages.BugzillaAttribute_Severity, "bug_severity", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - BUG_STATUS(Messages.BugzillaAttribute_Status, "bug_status", TaskAttribute.TYPE_SHORT_TEXT, true, true), //$NON-NLS-1$ + BUG_STATUS(Messages.BugzillaAttribute_Status, "bug_status", TaskAttribute.TYPE_SHORT_TEXT, Flag.READ_ONLY), //$NON-NLS-1$ - BUG_WHEN(Messages.BugzillaAttribute_bug_when, "bug_when", TaskAttribute.TYPE_DATE, true, true), //$NON-NLS-1$ + BUG_WHEN(Messages.BugzillaAttribute_bug_when, "bug_when", TaskAttribute.TYPE_DATE, Flag.READ_ONLY), //$NON-NLS-1$ - BUGZILLA(Messages.BugzillaAttribute_bugzilla, "bugzilla", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + BUGZILLA(Messages.BugzillaAttribute_bugzilla, "bugzilla", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - CC(Messages.BugzillaAttribute_CC, "cc", IBugzillaConstants.EDITOR_TYPE_REMOVECC, true, true), //$NON-NLS-1$ + CC(Messages.BugzillaAttribute_CC, "cc", IBugzillaConstants.EDITOR_TYPE_REMOVECC, Flag.READ_ONLY), //$NON-NLS-1$ - REMOVECC(Messages.BugzillaAttribute_Remove_CC, "removecc", IBugzillaConstants.EDITOR_TYPE_REMOVECC, true, true), //$NON-NLS-1$ + REMOVECC(Messages.BugzillaAttribute_Remove_CC, "removecc", IBugzillaConstants.EDITOR_TYPE_REMOVECC, Flag.READ_ONLY), //$NON-NLS-1$ - CCLIST_ACCESSIBLE(Messages.BugzillaAttribute_CC_List, "cclist_accessible", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ + CCLIST_ACCESSIBLE(Messages.BugzillaAttribute_CC_List, "cclist_accessible", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ - CLASSIFICATION(Messages.BugzillaAttribute_Classification, - "classification", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + CLASSIFICATION(Messages.BugzillaAttribute_Classification, "classification", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - CLASSIFICATION_ID(Messages.BugzillaAttribute_Classification_ID, - "classification_id", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + CLASSIFICATION_ID(Messages.BugzillaAttribute_Classification_ID, "classification_id", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - COMMENTID(Messages.BugzillaAttribute_Comment_ID, "commentid", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + COMMENTID(Messages.BugzillaAttribute_Comment_ID, "commentid", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - COMPONENT(Messages.BugzillaAttribute_Component, "component", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + COMPONENT(Messages.BugzillaAttribute_Component, "component", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - CONFIRM_PRODUCT_CHANGE("confirm_product_change", "confirm_product_change", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ //$NON-NLS-2$ + CONFIRM_PRODUCT_CHANGE("confirm_product_change", "confirm_product_change", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ //$NON-NLS-2$ - CREATION_TS(Messages.BugzillaAttribute_Opened, "creation_ts", TaskAttribute.TYPE_DATE, true, false), //$NON-NLS-1$ + CREATION_TS(Messages.BugzillaAttribute_Opened, "creation_ts", TaskAttribute.TYPE_DATE), //$NON-NLS-1$ - CTYPE(Messages.BugzillaAttribute_Content_Type, "ctype", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + CTYPE(Messages.BugzillaAttribute_Content_Type, "ctype", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - DATA(Messages.BugzillaAttribute_data, "data", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + DATA(Messages.BugzillaAttribute_data, "data", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - DATE(Messages.BugzillaAttribute_Date, "date", TaskAttribute.TYPE_DATE, false, false), //$NON-NLS-1$ + DATE(Messages.BugzillaAttribute_Date, "date", TaskAttribute.TYPE_DATE, Flag.ATTRIBUTE), //$NON-NLS-1$ - DEADLINE(Messages.BugzillaAttribute_Due, "deadline", TaskAttribute.TYPE_DATE, true, false), //$NON-NLS-1$ + DEADLINE(Messages.BugzillaAttribute_Due, "deadline", TaskAttribute.TYPE_DATE), //$NON-NLS-1$ - DELTA_TS(Messages.BugzillaAttribute_Modified, "delta_ts", TaskAttribute.TYPE_DATE, true, false), //$NON-NLS-1$ + DELTA_TS(Messages.BugzillaAttribute_Modified, "delta_ts", TaskAttribute.TYPE_DATE), //$NON-NLS-1$ DEPENDSON(Messages.BugzillaAttribute_Depends_on__Subtasks_, - "dependson", TaskAttribute.TYPE_TASK_DEPENDENCY, false, false), //$NON-NLS-1$ + "dependson", TaskAttribute.TYPE_TASK_DEPENDENCY, Flag.ATTRIBUTE), //$NON-NLS-1$ - DESC(Messages.BugzillaAttribute_desc, "desc", TaskAttribute.TYPE_LONG_TEXT, true, true), //$NON-NLS-1$ + DESC(Messages.BugzillaAttribute_desc, "desc", TaskAttribute.TYPE_LONG_TEXT, Flag.READ_ONLY), //$NON-NLS-1$ - DUP_ID(Messages.BugzillaAttribute_Duplicate_of, "dup_id", TaskAttribute.TYPE_TASK_DEPENDENCY, false, false), //$NON-NLS-1$ + DUP_ID(Messages.BugzillaAttribute_Duplicate_of, "dup_id", TaskAttribute.TYPE_TASK_DEPENDENCY, Flag.ATTRIBUTE), //$NON-NLS-1$ - EVERCONFIRMED(Messages.BugzillaAttribute_everconfirmed, "everconfirmed", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ + EVERCONFIRMED(Messages.BugzillaAttribute_everconfirmed, "everconfirmed", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ - ESTIMATED_TIME(Messages.BugzillaAttribute_Estimated_Time, - "estimated_time", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + ESTIMATED_TIME(Messages.BugzillaAttribute_Estimated_Time, "estimated_time", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - EXPORTER_NAME(Messages.BugzillaAttribute_Exporter, "exporter", TaskAttribute.TYPE_PERSON, true, true), //$NON-NLS-1$ + EXPORTER_NAME(Messages.BugzillaAttribute_Exporter, "exporter", TaskAttribute.TYPE_PERSON, Flag.READ_ONLY), //$NON-NLS-1$ - FILENAME(Messages.BugzillaAttribute_filename, "filename", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + FILENAME(Messages.BugzillaAttribute_filename, "filename", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - FLAG(Messages.BugzillaAttribute_flag, "flag", IBugzillaConstants.EDITOR_TYPE_FLAG, true, false), //$NON-NLS-1$ + FLAG(Messages.BugzillaAttribute_flag, "flag", IBugzillaConstants.EDITOR_TYPE_FLAG), //$NON-NLS-1$ - GROUP(Messages.BugzillaAttribute_Group, "group", TaskAttribute.TYPE_BOOLEAN, true, true), //$NON-NLS-1$ + GROUP(Messages.BugzillaAttribute_Group, "group", TaskAttribute.TYPE_BOOLEAN, Flag.READ_ONLY), //$NON-NLS-1$ - IS_OBSOLETE(Messages.BugzillaAttribute_Obsolete, "isobsolete", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ + IS_OBSOLETE(Messages.BugzillaAttribute_Obsolete, "isobsolete", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ - IS_PATCH(Messages.BugzillaAttribute_Patch, "ispatch", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ + IS_PATCH(Messages.BugzillaAttribute_Patch, "ispatch", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ - IS_PRIVATE(Messages.BugzillaAttribute_Private, "isprivate", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ + IS_PRIVATE(Messages.BugzillaAttribute_Private, "isprivate", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ - KEYWORDS(Messages.BugzillaAttribute_Keywords, "keywords", IBugzillaConstants.EDITOR_TYPE_KEYWORDS, false, false), //$NON-NLS-1$ + KEYWORDS(Messages.BugzillaAttribute_Keywords, "keywords", IBugzillaConstants.EDITOR_TYPE_KEYWORDS, Flag.ATTRIBUTE), //$NON-NLS-1$ - LONG_DESC(Messages.BugzillaAttribute_Description, "long_desc", TaskAttribute.TYPE_LONG_RICH_TEXT, true, true), //$NON-NLS-1$ + LONG_DESC(Messages.BugzillaAttribute_Description, "long_desc", TaskAttribute.TYPE_LONG_RICH_TEXT, Flag.READ_ONLY), //$NON-NLS-1$ - LONGDESCLENGTH(Messages.BugzillaAttribute_Number_of_comments, - "longdesclength", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + LONGDESCLENGTH(Messages.BugzillaAttribute_Number_of_comments, "longdesclength", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - NEWCC(Messages.BugzillaAttribute_Add_CC, "newcc", TaskAttribute.TYPE_PERSON, true, false), //$NON-NLS-1$ + NEWCC(Messages.BugzillaAttribute_Add_CC, "newcc", TaskAttribute.TYPE_PERSON, Flag.PEOPLE), //$NON-NLS-1$ - OP_SYS(Messages.BugzillaAttribute_OS, "op_sys", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + OP_SYS(Messages.BugzillaAttribute_OS, "op_sys", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - PRIORITY(Messages.BugzillaAttribute_Priority, "priority", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + PRIORITY(Messages.BugzillaAttribute_Priority, "priority", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - PRODUCT(Messages.BugzillaAttribute_Product, "product", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + PRODUCT(Messages.BugzillaAttribute_Product, "product", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - REP_PLATFORM(Messages.BugzillaAttribute_Platform, "rep_platform", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + REP_PLATFORM(Messages.BugzillaAttribute_Platform, "rep_platform", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - REPORTER(Messages.BugzillaAttribute_Reporter, "reporter", TaskAttribute.TYPE_PERSON, true, true), //$NON-NLS-1$ + REPORTER(Messages.BugzillaAttribute_Reporter, "reporter", TaskAttribute.TYPE_PERSON, Flag.PEOPLE, Flag.READ_ONLY), //$NON-NLS-1$ - REPORTER_NAME(Messages.BugzillaAttribute_REPORT_NAME, "reporter_name", TaskAttribute.TYPE_PERSON, true, true), //$NON-NLS-1$ + REPORTER_NAME(Messages.BugzillaAttribute_REPORT_NAME, "reporter_name", TaskAttribute.TYPE_PERSON, Flag.READ_ONLY), //$NON-NLS-1$ REPORTER_ACCESSIBLE(Messages.BugzillaAttribute_REPORT_ACCESSIBLE, "reporter_accessible", //$NON-NLS-1$ - TaskAttribute.TYPE_BOOLEAN, true, false), + TaskAttribute.TYPE_BOOLEAN), - RESOLUTION(Messages.BugzillaAttribute_Resolution, "resolution", TaskAttribute.TYPE_SHORT_TEXT, false, true), //$NON-NLS-1$ + RESOLUTION(Messages.BugzillaAttribute_Resolution, + "resolution", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE, Flag.READ_ONLY), //$NON-NLS-1$ - REMAINING_TIME(Messages.BugzillaAttribute_Remaining, "remaining_time", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + REMAINING_TIME(Messages.BugzillaAttribute_Remaining, "remaining_time", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - SEE_ALSO(Messages.BugzillaAttribute_See_Also, "see_also", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + SEE_ALSO(Messages.BugzillaAttribute_See_Also, "see_also", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - SET_DEFAULT_ASSIGNEE(Messages.BugzillaAttribute_Reassign_to_default_assignee, - "set_default_assignee", TaskAttribute.TYPE_BOOLEAN, true, //$NON-NLS-1$ - false), + SET_DEFAULT_ASSIGNEE(Messages.BugzillaAttribute_Reassign_to_default_assignee, "set_default_assignee", //$NON-NLS-1$ + TaskAttribute.TYPE_BOOLEAN), - SHORT_DESC(Messages.BugzillaAttribute_Summary, "short_desc", TaskAttribute.TYPE_SHORT_RICH_TEXT, true, false), //$NON-NLS-1$ + SHORT_DESC(Messages.BugzillaAttribute_Summary, "short_desc", TaskAttribute.TYPE_SHORT_RICH_TEXT), //$NON-NLS-1$ - SIZE(Messages.BugzillaAttribute_Size, "size", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + SIZE(Messages.BugzillaAttribute_Size, "size", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ TARGET_MILESTONE(Messages.BugzillaAttribute_Target_milestone, - "target_milestone", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + "target_milestone", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - THETEXT(Messages.BugzillaAttribute_thetext, "thetext", TaskAttribute.TYPE_SHORT_TEXT, false, true), //$NON-NLS-1$ + THETEXT(Messages.BugzillaAttribute_thetext, + "thetext", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE, Flag.READ_ONLY), //$NON-NLS-1$ - TYPE(Messages.BugzillaAttribute_type, "type", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + TYPE(Messages.BugzillaAttribute_type, "type", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - UNKNOWN(Messages.BugzillaAttribute_UNKNOWN, "UNKNOWN", TaskAttribute.TYPE_SHORT_TEXT, false, false), //$NON-NLS-1$ + UNKNOWN(Messages.BugzillaAttribute_UNKNOWN, "UNKNOWN", TaskAttribute.TYPE_SHORT_TEXT, Flag.ATTRIBUTE), //$NON-NLS-1$ - VERSION(Messages.BugzillaAttribute_Version, "version", TaskAttribute.TYPE_SINGLE_SELECT, false, false), //$NON-NLS-1$ + VERSION(Messages.BugzillaAttribute_Version, "version", TaskAttribute.TYPE_SINGLE_SELECT, Flag.ATTRIBUTE), //$NON-NLS-1$ - INSTALL_VERSION(Messages.BugzillaAttribute_version_of_bugzilla_installed, "install_version", null, true, false), //$NON-NLS-1$ + INSTALL_VERSION(Messages.BugzillaAttribute_version_of_bugzilla_installed, "install_version", null), //$NON-NLS-1$ - VOTES(Messages.BugzillaAttribute_Votes, "votes", IBugzillaConstants.EDITOR_TYPE_VOTES, false, true), //$NON-NLS-1$ + VOTES(Messages.BugzillaAttribute_Votes, + "votes", IBugzillaConstants.EDITOR_TYPE_VOTES, Flag.ATTRIBUTE, Flag.READ_ONLY), //$NON-NLS-1$ - WORK_TIME(Messages.BugzillaAttribute_Add, "work_time", TaskAttribute.TYPE_SHORT_TEXT, true, false), //$NON-NLS-1$ + WORK_TIME(Messages.BugzillaAttribute_Add, "work_time", TaskAttribute.TYPE_SHORT_TEXT), //$NON-NLS-1$ - WHO(Messages.BugzillaAttribute_who, "who", TaskAttribute.TYPE_PERSON, false, false), //$NON-NLS-1$ + WHO(Messages.BugzillaAttribute_who, "who", TaskAttribute.TYPE_PERSON, Flag.ATTRIBUTE), //$NON-NLS-1$ - WHO_NAME(Messages.BugzillaAttribute_who_name, "who_name", TaskAttribute.TYPE_SHORT_TEXT, true, true), //$NON-NLS-1$ + WHO_NAME(Messages.BugzillaAttribute_who_name, "who_name", TaskAttribute.TYPE_SHORT_TEXT, Flag.READ_ONLY), //$NON-NLS-1$ - QA_CONTACT(Messages.BugzillaAttribute_QA_Contact, "qa_contact", TaskAttribute.TYPE_PERSON, true, false), //$NON-NLS-1$ + QA_CONTACT(Messages.BugzillaAttribute_QA_Contact, "qa_contact", TaskAttribute.TYPE_PERSON, Flag.PEOPLE), //$NON-NLS-1$ QA_CONTACT_NAME(Messages.BugzillaAttribute_QA_Contact_NAME, - "qa_contact_name", TaskAttribute.TYPE_SHORT_TEXT, true, true), //$NON-NLS-1$ + "qa_contact_name", TaskAttribute.TYPE_SHORT_TEXT, Flag.READ_ONLY), //$NON-NLS-1$ - ADDSELFCC(Messages.BugzillaAttribute_Add_self_to_CC, "addselfcc", TaskAttribute.TYPE_BOOLEAN, true, false), //$NON-NLS-1$ + ADDSELFCC(Messages.BugzillaAttribute_Add_self_to_CC, "addselfcc", TaskAttribute.TYPE_BOOLEAN), //$NON-NLS-1$ - STATUS_OPEN(Messages.BugzillaAttribute_open_status_values, "status_open", null, true, true), //$NON-NLS-1$ + STATUS_OPEN(Messages.BugzillaAttribute_open_status_values, "status_open", null, Flag.READ_ONLY), //$NON-NLS-1$ - NEW_COMMENT(Messages.BugzillaAttribute_new_comment, "new_comment", TaskAttribute.TYPE_LONG_RICH_TEXT, true, false), //$NON-NLS-1$ + NEW_COMMENT(Messages.BugzillaAttribute_new_comment, "new_comment", TaskAttribute.TYPE_LONG_RICH_TEXT), //$NON-NLS-1$ - TOKEN("token", "token", null, true, true), //$NON-NLS-1$ //$NON-NLS-2$ + TOKEN("token", "token", null, Flag.READ_ONLY), //$NON-NLS-1$ //$NON-NLS-2$ // Used by search engine - LI(Messages.BugzillaAttribute_used_by_search_engine_li, "li", null, true, false), //$NON-NLS-1$ + LI(Messages.BugzillaAttribute_used_by_search_engine_li, "li", null), //$NON-NLS-1$ - ID(Messages.BugzillaAttribute_used_by_search_engine_id, "id", null, true, false), //$NON-NLS-1$ + ID(Messages.BugzillaAttribute_used_by_search_engine_id, "id", null), //$NON-NLS-1$ - SHORT_SHORT_DESC(Messages.BugzillaAttribute_used_by_search_engine_desc, "short_short_desc", null, false, false), //$NON-NLS-1$ + SHORT_SHORT_DESC(Messages.BugzillaAttribute_used_by_search_engine_desc, "short_short_desc", null, Flag.ATTRIBUTE), //$NON-NLS-1$ - SEQ(Messages.BugzillaAttribute_used_by_search_engine_seq, "seq", null, false, false), //$NON-NLS-1$ + SEQ(Messages.BugzillaAttribute_used_by_search_engine_seq, "seq", null, Flag.ATTRIBUTE), //$NON-NLS-1$ - RESULT(Messages.BugzillaAttribute_used_by_search_engine_result, "result", null, false, false), //$NON-NLS-1$ + RESULT(Messages.BugzillaAttribute_used_by_search_engine_result, "result", null, Flag.ATTRIBUTE), //$NON-NLS-1$ - RDF(Messages.BugzillaAttribute_used_by_search_engine_rdf, "rdf", null, false, false), //$NON-NLS-1$ + RDF(Messages.BugzillaAttribute_used_by_search_engine_rdf, "rdf", null, Flag.ATTRIBUTE), //$NON-NLS-1$ - INSTALLATION(Messages.BugzillaAttribute_used_by_search_engine_installation, "installation", null, false, false), //$NON-NLS-1$ + INSTALLATION(Messages.BugzillaAttribute_used_by_search_engine_installation, "installation", null, Flag.ATTRIBUTE), //$NON-NLS-1$ - BUGS(Messages.BugzillaAttribute_used_by_search_engine_bugs, "bugs", null, false, false), //$NON-NLS-1$ + BUGS(Messages.BugzillaAttribute_used_by_search_engine_bugs, "bugs", null, Flag.ATTRIBUTE), //$NON-NLS-1$ - QUERY_TIMESTAMP(Messages.BugzillaAttribute_Query_Timestamp, "query_timestamp", null, false, false), //$NON-NLS-1$ + QUERY_TIMESTAMP(Messages.BugzillaAttribute_Query_Timestamp, "query_timestamp", null, Flag.ATTRIBUTE), //$NON-NLS-1$ // new in Bugzilla 3.6 - ATTACHER(Messages.BugzillaAttribute_Attacher, "attacher", null, false, false); //$NON-NLS-1$ + ATTACHER(Messages.BugzillaAttribute_Attacher, "attacher", null, Flag.ATTRIBUTE); //$NON-NLS-1$ public static final String KIND_FLAG = "task.common.kind.flag"; //$NON-NLS-1$ public static final String KIND_FLAG_TYPE = "task.common.kind.flag_type"; //$NON-NLS-1$ - private final boolean isHidden; - - private final boolean isReadOnly; - private final String keyString; private final String prettyName; private final String type; + private EnumSet<Flag> flags; + public static final BugzillaAttribute[] EXTENDED_ATTRIBUTES = { DELTA_TS, BUG_SEVERITY, PRODUCT }; public static final BugzillaAttribute[] PERSON_ATTRIBUTES = { ASSIGNED_TO, REPORTER, QA_CONTACT }; - BugzillaAttribute(String prettyName, String idKey, String type, boolean hidden, boolean readonly) { + BugzillaAttribute(String prettyName, String idKey, String type) { + this(prettyName, idKey, type, (Flag[]) null); + } + + BugzillaAttribute(String prettyName, String idKey, String type, Flag... flags) { this.prettyName = prettyName; this.keyString = idKey; this.type = type; - this.isHidden = hidden; - this.isReadOnly = readonly; + if (flags == null || flags.length == 0) { + this.flags = EnumSet.noneOf(Flag.class); + } else { + this.flags = EnumSet.copyOf(Arrays.asList(flags)); + } } public String getKey() { return keyString; } - public boolean isHidden() { - return isHidden; - } - public boolean isReadOnly() { - return isReadOnly; + return flags.contains(Flag.READ_ONLY); } @Override @@ -246,7 +249,14 @@ public enum BugzillaAttribute { } public String getKind() { - return isHidden() ? null : TaskAttribute.KIND_DEFAULT; + if (flags.contains(Flag.ATTRIBUTE)) { + return TaskAttribute.KIND_DEFAULT; + } else if (flags.contains(Flag.PEOPLE)) { + return TaskAttribute.KIND_PEOPLE; + } else if (flags.contains(Flag.OPERATION)) { + return TaskAttribute.KIND_OPERATION; + } + return null; } public String getType() { diff --git a/org.eclipse.mylyn.bugzilla.tests/META-INF/MANIFEST.MF b/org.eclipse.mylyn.bugzilla.tests/META-INF/MANIFEST.MF index 96b3f0009..f27c3fbb5 100644 --- a/org.eclipse.mylyn.bugzilla.tests/META-INF/MANIFEST.MF +++ b/org.eclipse.mylyn.bugzilla.tests/META-INF/MANIFEST.MF @@ -26,7 +26,8 @@ Require-Bundle: org.junit;bundle-version="4.8.2", org.eclipse.mylyn.tasks.ui, org.eclipse.mylyn.tests.util, org.eclipse.mylyn.commons.net, - org.apache.xmlrpc + org.apache.xmlrpc, + org.apache.commons.io Bundle-Vendor: Eclipse Mylyn Export-Package: org.eclipse.mylyn.bugzilla.tests;x-internal:=true, org.eclipse.mylyn.bugzilla.tests.core;x-internal:=true, diff --git a/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/AllBugzillaHeadlessStandaloneTests.java b/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/AllBugzillaHeadlessStandaloneTests.java index ed07e4278..e581fa1c7 100644 --- a/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/AllBugzillaHeadlessStandaloneTests.java +++ b/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/AllBugzillaHeadlessStandaloneTests.java @@ -18,6 +18,7 @@ import junit.framework.Test; import junit.framework.TestSuite; import org.eclipse.mylyn.bugzilla.tests.core.BugzillaAttributeMapperTest; +import org.eclipse.mylyn.bugzilla.tests.core.BugzillaAttributeTest; import org.eclipse.mylyn.bugzilla.tests.core.BugzillaClientTest; import org.eclipse.mylyn.bugzilla.tests.core.BugzillaConfigurationTest; import org.eclipse.mylyn.bugzilla.tests.core.BugzillaCustomFieldsTest; @@ -47,6 +48,7 @@ public class AllBugzillaHeadlessStandaloneTests { suite.addTestSuite(BugzillaVersionTest.class); suite.addTestSuite(BugzillaDateTimeTests.class); suite.addTestSuite(BugzillaAttributeMapperTest.class); + suite.addTestSuite(BugzillaAttributeTest.class); if (!configuration.isLocalOnly()) { // network tests suite.addTestSuite(BugzillaTaskCompletionTest.class); diff --git a/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/core/BugzillaAttributeTest.java b/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/core/BugzillaAttributeTest.java new file mode 100644 index 000000000..5fb813d49 --- /dev/null +++ b/org.eclipse.mylyn.bugzilla.tests/src/org/eclipse/mylyn/bugzilla/tests/core/BugzillaAttributeTest.java @@ -0,0 +1,49 @@ +/******************************************************************************* + * Copyright (c) 2013 Frank Becker and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse @Test + public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * Frank Becker - initial API and implementation + *******************************************************************************/ + +package org.eclipse.mylyn.bugzilla.tests.core; + +import junit.framework.TestCase; + +import org.apache.commons.io.IOUtils; +import org.eclipse.mylyn.bugzilla.tests.support.BugzillaFixture; +import org.eclipse.mylyn.commons.sdk.util.CommonTestUtil; +import org.eclipse.mylyn.internal.bugzilla.core.BugzillaAttribute; +import org.eclipse.mylyn.internal.bugzilla.core.BugzillaAttributeMapper; +import org.eclipse.mylyn.internal.bugzilla.core.BugzillaCorePlugin; +import org.eclipse.mylyn.internal.bugzilla.core.BugzillaRepositoryConnector; +import org.eclipse.mylyn.tasks.core.TaskRepository; +import org.eclipse.mylyn.tasks.core.data.TaskAttribute; +import org.eclipse.mylyn.tasks.core.data.TaskData; + +/** + * @author Steffen Pingel + */ +public class BugzillaAttributeTest extends TestCase { + + public void testTaskDataSchema() throws Exception { + BugzillaRepositoryConnector connector = BugzillaFixture.current().connector(); + TaskRepository repository = new TaskRepository(BugzillaCorePlugin.CONNECTOR_KIND, "http://repository"); + BugzillaAttributeMapper mapper = new BugzillaAttributeMapper(repository, connector); + TaskData taskData = new TaskData(mapper, repository.getConnectorKind(), repository.getRepositoryUrl(), ""); + BugzillaAttribute[] attributes = BugzillaAttribute.values(); + for (BugzillaAttribute attribute : attributes) { + TaskAttribute taskDataAttribute = taskData.getRoot().createAttribute(attribute.getKey()); + taskDataAttribute.getMetaData().setReadOnly(attribute.isReadOnly()); + taskDataAttribute.getMetaData().setKind(attribute.getKind()); + taskDataAttribute.getMetaData().setType(attribute.getType()); + } + assertEquals(IOUtils.toString(CommonTestUtil.getResource(this, "testdata/schema/taskdata.txt")), + taskData.getRoot().toString()); + } + +}
\ No newline at end of file diff --git a/org.eclipse.mylyn.bugzilla.tests/testdata/schema/taskdata.txt b/org.eclipse.mylyn.bugzilla.tests/testdata/schema/taskdata.txt new file mode 100644 index 000000000..c4e2672f4 --- /dev/null +++ b/org.eclipse.mylyn.bugzilla.tests/testdata/schema/taskdata.txt @@ -0,0 +1,86 @@ +TaskAttribute[id=root,values=[],options=null,metaData=null] + TaskAttribute[id=status_whiteboard,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=longRichText}] + TaskAttribute[id=actual_time,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=shortText}] + TaskAttribute[id=comment,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=longText}] + TaskAttribute[id=alias,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=assigned_to,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.attributeKind=task.common.kind.people, task.meta.type=person}] + TaskAttribute[id=assigned_to_name,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=person}] + TaskAttribute[id=attachid,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=attachment,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=attachment}] + TaskAttribute[id=blocked,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=taskDepenedency}] + TaskAttribute[id=bug,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=bug_file_loc,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=url}] + TaskAttribute[id=bug_id,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=bug_severity,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=bug_status,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=shortText}] + TaskAttribute[id=bug_when,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=date}] + TaskAttribute[id=bugzilla,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=cc,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=bugzilla.editor.removecc}] + TaskAttribute[id=removecc,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=bugzilla.editor.removecc}] + TaskAttribute[id=cclist_accessible,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=classification,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=classification_id,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=commentid,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=component,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=confirm_product_change,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=creation_ts,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=date}] + TaskAttribute[id=ctype,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=data,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=date,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=date}] + TaskAttribute[id=deadline,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=date}] + TaskAttribute[id=delta_ts,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=date}] + TaskAttribute[id=dependson,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=taskDepenedency}] + TaskAttribute[id=desc,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=longText}] + TaskAttribute[id=dup_id,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=taskDepenedency}] + TaskAttribute[id=everconfirmed,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=estimated_time,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=exporter,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=person}] + TaskAttribute[id=filename,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=flag,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=bugzilla.editor.flag}] + TaskAttribute[id=group,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=boolean}] + TaskAttribute[id=isobsolete,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=ispatch,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=isprivate,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=keywords,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=bugzilla.editor.keywords}] + TaskAttribute[id=long_desc,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=longRichText}] + TaskAttribute[id=longdesclength,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=newcc,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.people, task.meta.type=person}] + TaskAttribute[id=op_sys,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=priority,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=product,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=rep_platform,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=reporter,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.attributeKind=task.common.kind.people, task.meta.type=person}] + TaskAttribute[id=reporter_name,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=person}] + TaskAttribute[id=reporter_accessible,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=resolution,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=remaining_time,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=see_also,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=set_default_assignee,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=short_desc,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortRichText}] + TaskAttribute[id=size,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=target_milestone,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=thetext,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=type,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=UNKNOWN,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=shortText}] + TaskAttribute[id=version,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=singleSelect}] + TaskAttribute[id=install_version,values=[],options=null,metaData={task.meta.readOnly=false}] + TaskAttribute[id=votes,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.attributeKind=task.common.kind.default, task.meta.type=bugzilla.editor.votes}] + TaskAttribute[id=work_time,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=shortText}] + TaskAttribute[id=who,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default, task.meta.type=person}] + TaskAttribute[id=who_name,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=shortText}] + TaskAttribute[id=qa_contact,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.people, task.meta.type=person}] + TaskAttribute[id=qa_contact_name,values=[],options=null,metaData={task.meta.readOnly=true, task.meta.type=shortText}] + TaskAttribute[id=addselfcc,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=boolean}] + TaskAttribute[id=status_open,values=[],options=null,metaData={task.meta.readOnly=true}] + TaskAttribute[id=new_comment,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.type=longRichText}] + TaskAttribute[id=token,values=[],options=null,metaData={task.meta.readOnly=true}] + TaskAttribute[id=li,values=[],options=null,metaData={task.meta.readOnly=false}] + TaskAttribute[id=id,values=[],options=null,metaData={task.meta.readOnly=false}] + TaskAttribute[id=short_short_desc,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=seq,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=result,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=rdf,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=installation,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=bugs,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=query_timestamp,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}] + TaskAttribute[id=attacher,values=[],options=null,metaData={task.meta.readOnly=false, task.meta.attributeKind=task.common.kind.default}]
\ No newline at end of file |