public NamedEntityListFieldEditorProvider(
            JiraField field, IEnumerable <string> selectedEntityNames, IEnumerable <JiraNamedEntity> entities, FieldValidListener validListener)
            : base(field, validListener)
        {
            List <JiraNamedEntity> selected = new List <JiraNamedEntity>();

            foreach (JiraNamedEntity entity in entities)
            {
                foreach (var selectedEntityName in selectedEntityNames)
                {
                    if (!entity.Name.Equals(selectedEntityName))
                    {
                        continue;
                    }
                    selected.Add(entity);
                    break;
                }
                list.Items.Add(entity);
            }
            foreach (JiraNamedEntity sel in selected)
            {
                list.SelectedItems.Add(sel);
            }
        }
        private void dropAction(JiraIssue issue, bool add)
        {
            JiraField componentsField = new JiraField("components", null)
            {
                Values = new List <string>()
            };

            if (add)
            {
                List <JiraNamedEntity> projectComponents = Facade.getComponents(issue.Server, project);
                ICollection <string>   issueComponents   = issue.Components;
                foreach (string issueComponent in issueComponents)
                {
                    foreach (JiraNamedEntity ver in projectComponents)
                    {
                        if (!ver.Name.Equals(issueComponent))
                        {
                            continue;
                        }
                        componentsField.Values.Add(ver.Id.ToString());
                        break;
                    }
                }
            }

            // skip if issue already has this component
            if (componentsField.Values.Contains(comp.Id.ToString()))
            {
                return;
            }

            componentsField.Values.Add(comp.Id.ToString());
            Facade.updateIssue(issue, new List <JiraField> {
                componentsField
            });
        }
Exemplo n.º 3
0
            private void dropAction(JiraIssue issue, bool add)
            {
                JiraField versionField = new JiraField(FieldName, null)
                {
                    Values = new List <string>()
                };

                if (add)
                {
                    List <JiraNamedEntity> projectVersions = Parent.Facade.getVersions(issue.Server, Parent.project);
                    ICollection <string>   issueVersions   = getIssueVersions(issue);
                    foreach (string issueVersion in issueVersions)
                    {
                        foreach (JiraNamedEntity ver in projectVersions)
                        {
                            if (!ver.Name.Equals(issueVersion))
                            {
                                continue;
                            }
                            versionField.Values.Add(ver.Id.ToString());
                            break;
                        }
                    }
                }

                // skip if issue already has this version
                if (versionField.Values.Contains(Parent.version.Id.ToString()))
                {
                    return;
                }

                versionField.Values.Add(Parent.version.Id.ToString());
                Parent.Facade.updateIssue(issue, new List <JiraField> {
                    versionField
                });
            }
Exemplo n.º 4
0
 public static WidgetType getFieldTypeForField(JiraField field)
 {
     return(getFieldTypeForFieldId(field.Id));
 }
Exemplo n.º 5
0
 public static bool isTimeField(JiraField field)
 {
     return(field.Id.Equals(TIMEESTIMATE) || field.Id.Equals(TIMEORIGINALESTIMATE) || field.Id.Equals(TIMESPENT));
 }
        private void runActivateIssueActionsWorker(Action onFinish)
        {
            JiraServer server = JiraServerModel.Instance.getServer(new Guid(CurrentActiveIssue.ServerGuid));

            if (server != null)
            {
                try {
                    int       mods  = 0;
                    JiraIssue issue = SmartJiraServerFacade.Instance.getIssue(server, CurrentActiveIssue.Key);
                    if (issue != null)
                    {
                        string me = CredentialUtils.getUserNameWithoutDomain(server.UserName);
                        if (issue.Assignee == null || issue.Assignee.Equals("Unknown") || !issue.Assignee.Equals(me))
                        {
                            jiraStatus.setInfo("Assigning issue to me...");
                            JiraField assignee = new JiraField("assignee", null)
                            {
                                Values = new List <string> {
                                    me
                                },
                                SettablePropertyName = "name"
                            };
                            var rawIssueObject = SmartJiraServerFacade.Instance.getRawIssueObject(issue);
                            assignee.setRawIssueObject(rawIssueObject);
                            SmartJiraServerFacade.Instance.updateIssue(issue, new List <JiraField> {
                                assignee
                            });
                            ++mods;
                        }
                        List <JiraNamedEntity> actions = SmartJiraServerFacade.Instance.getActionsForIssue(issue);
                        JiraNamedEntity        action  = actions.Find(a => a.Id.Equals(START_PROGRESS_ACTION_ID));
                        if (action == null)
                        {
                            container.safeInvoke(new MethodInvoker(delegate {
                                ActionSelector sel = new ActionSelector(actions);
                                if (sel.ShowDialog() == DialogResult.OK)
                                {
                                    action = sel.SelectedAction;
                                }
                            }));
                        }
//                        foreach (JiraNamedEntity action in actions.Where(action => action.Id.Equals(START_PROGRESS_ACTION_ID))) {
                        if (action != null)
                        {
                            jiraStatus.setInfo("Setting issue in progress...");
                            SmartJiraServerFacade.Instance.runIssueActionWithoutParams(issue, action);
                            ++mods;
                        }
                        if (mods > 0)
                        {
                            issue = SmartJiraServerFacade.Instance.getIssue(server, CurrentActiveIssue.Key);
                        }
                    }
                    jiraStatus.setInfo("Work on issue " + CurrentActiveIssue.Key + " started");
                    container.safeInvoke(new MethodInvoker(() => {
                        JiraIssueListModelImpl.Instance.updateIssue(issue);
                        onFinish();
                    }));
                } catch (Exception e) {
                    CurrentActiveIssue = null;
                    jiraStatus.setError(FAILED_TO_START_WORK, e);
                    container.safeInvoke(new MethodInvoker(() => PlvsUtils.showError(FAILED_TO_START_WORK, e)));
                }
            }
            else
            {
                container.safeInvoke(new MethodInvoker(
                                         () => PlvsUtils.showError(FAILED_TO_START_WORK, new Exception("Unknown JIRA server"))));
            }
        }
 public virtual string getFieldLabel(JiraIssue issue, JiraField field)
 {
     return(field.Name);
 }
 protected JiraFieldEditorProvider(JiraField field, FieldValidListener validListener)
 {
     Field = field;
     this.validListener = validListener;
 }
 public NamedEntityComboEditorProvider(
     JiraServer server, JiraField field, int selectedEntityId, IEnumerable <JiraNamedEntity> entities, FieldValidListener validListener)
     : base(field, validListener)
 {
     init(server, selectedEntityId, entities, true);
 }
Exemplo n.º 10
0
 public UserFieldEditorProvider(JiraServer server, JiraField field, string userName, FieldValidListener validListener)
     : base(field, validListener)
 {
     init(server, userName, false);
 }
Exemplo n.º 11
0
 public UserFieldEditorProvider(JiraServer server, JiraField field, string userName, FieldValidListener validListener, bool showAssignToMe)
     : base(field, validListener)
 {
     init(server, userName, showAssignToMe);
 }
Exemplo n.º 12
0
 protected FixedHeightFieldEditorProvider(JiraField field, FieldValidListener validListener) : base(field, validListener)
 {
 }
 public override string getFieldLabel(JiraIssue issue, JiraField field)
 {
     return(issue.TimeSpent == null ? "Original Estimate" : "Remaining Estimate");
 }