Получение представления владельца / создателя с помощью библиотеки автоматизации Rational ClearCase (CAL)
-
06-07-2019 - |
Вопрос
Кто-нибудь здесь уже работал с Rational / IBM CAL и знает, есть ли вообще, и как проверить создателя / владельца представления (имя пользователя)? Элементы, Вобсы и т. Д. Имеют Владельца / Создателя, но по некоторым причинам представления не имеют?
Решение
У меня есть только небольшие VB-скрипты с CAL, как проиллюстрировано в этом ответе о метке .
После проверки cc_cal.chm (находится в C: \ Program Files \ IBM, в последней версии 7.1.0.1 установки ClearCase), я обнаружил, что их интерфейс ICCView
очень неполный и всегда предпочтительнее исправить выход классического:
cleartool lsview -l -full -pro aTagViewName
С этим выводом я обязательно найду любую информацию, которая мне нужна.
<Ч>Единственная другая "чистая клиентская лицензия" способ получить некоторые представления для данного имени пользователя - для представлений UCM, где вы можете запросить поток для них (но это не относится непосредственно к вашему вопросу)
Dim Streams As CCStreams
Dim Stream As CCStream
Set Streams = Project.DevelopmentStreams(Name)
For Each Stream In Streams
Dim Views As CCViews
Set Views = Stream.Views(Name)
Dim View As CCView
For Each View In Views
Str = Str & View.TagName & " in stream: " & _
Stream.Title & vbCrLf
Next
Next
Другие советы
В принципе, если вы можете придумать способ сделать это с помощью cleartool, ответ - да. Если не существует определенного интерфейса / объектного API для того, чтобы делать то, что вы хотите, просто создайте объект cleartool в CAL и вставьте туда свой запрос!
Преимущество использования CAL заключается в том, что вам нужно загрузить DLL только один раз, и вам не придется платить цену за выполнение миллиарда отдельных процессов cleartool, если это то, что вам пришлось бы делать в противном случае.
Документация CAL - отстой. В Visual Studio вы можете добавить CAL в качестве ресурса, найдя DLL в проводнике ресурсов, и общаться с ним через COM, как и все остальное.
Если вы не используете VB или VB.NET (например, C #), вам придется выполнить немного больше приведения типов, чем вы видите в примере документации.