Как получить удаленные рабочие элементы с помощью RTC Java API

Я хочу получить список рабочих элементов, удаленных из проекта.

Как я могу добиться этого с помощью RTC Java API?


person Neha S    schedule 26.08.2015    source источник


Ответы (1)


Удаление — это одно из них, как предлагается в этой теме:

    IWorkItem workItem = workItemClient.findWorkItemById(id, IWorkItem.SMALL_PROFILE, monitor);
    IDetailedStatus status = workItemClient.deleteWorkItem(workItem, monitor);
    
    if (!status.isOK()) {
            throw new TeamRepositoryException("Error deleting work item",
                    status.getException());
    }

    System.out.println("Deleted work item: " + idString + ".");

Но перечислить удаленные рабочие элементы, я не знаю, есть ли Java API, который обращается к таблице delete_items.
См. комментарий 11 к задаче 140053:

В таблице deleted_items есть запись обо всех удаленных элементах вместе с отметкой времени, когда они были удалены.

Задание 149432 упоминает:

Отобразите действие удаления рабочего элемента в пользовательском интерфейсе Eclipse.

Так что есть видимая запись. Расширение 151766 упоминает, что Java ETL должен обрабатывать удаленные рабочие элементы, поэтому также может быть API.

Обратите внимание, что он получит только ваш идентификатор удаленного рабочего элемента и дату удаления, а не сам рабочий элемент.
Как уже упоминалось в этой теме:

Когда вы удаляете рабочий элемент, он будет потерян безвозвратно.

Иногда люди создают своего рода область проекта корзины, куда перемещаются удаленные рабочие элементы, а не удаляются по-настоящему.


Поскольку OP Neha S упоминает в комментариях, если следующий код возвращает NULL, это может означать удаление:

IWorkItem workItem = workItemClient.findWorkItemById(id, IWorkItem.FULL_PROFILE, monitor);
person VonC    schedule 26.08.2015
comment
Это удаляет рабочие элементы, он хочет перечислить те, которые уже удалены - person Astrogat; 26.08.2015
comment
Предположим, что конкретный рабочий элемент удален, тогда что я получу для следующего утверждения: IWorkItem workItem = workItemClient.findWorkItemById(id, IWorkItem.FULL_PROFILE, monitor);? - person Neha S; 26.08.2015
comment
@Neha: Ты ничего не получишь. Удаленные рабочие элементы оставляют после себя только свой идентификатор и дату удаления. Ничего больше. - person VonC; 26.08.2015
comment
@NehaS да, полный объект рабочего элемента больше недоступен. - person VonC; 26.08.2015
comment
Тогда это поможет мне определить, удален ли он. VonC, большое спасибо - person Neha S; 26.08.2015