Использование переменных модуля в Powershell 2.0 - PullRequest
1 голос
/ 21 февраля 2011

Я написал модуль для работы с IBM ClearCase через Powershell. Сначала он содержал пару часто используемых функций, но теперь я расширяю его. Большинство команд должны использовать объект ClearTool ($ct = new-object ClearCase.ClearTool), но я бы предпочел не создавать этот объект заново при каждом вызове функции, так как это немного накладные расходы.

Я также создаю представление ClearCase во многих из этих функций, но я могу просто проверить наличие представления и принять решение не создавать его заново.

Мой вопрос: какой шаблон лучше для этого? У меня может быть функция «создать объект ct» и взять на себя ответственность за вызывающий код для его поддержки, но я не думаю, что мне нравится этот метод. Возможно ли иметь переменную всего модуля для объекта ClearTool и иметь возможность проверки Powershell, чтобы убедиться, что он заполнен, прежде чем пытаться воссоздать его каждый раз?

Спасибо!

1 Ответ

0 голосов
/ 23 февраля 2011

В конце я создал пару переменных для всего модуля. Я мог бы скрыть их при необходимости, хотя я еще не сделал этого явно. У меня есть одна функция для создания представления, которое необходимо вызвать перед выполнением любой реальной работы и включить в него код для создания объекта ClearTool. У меня также есть код для установки переменных всего модуля с правильным объектом ClearTool для использования в других функциях и именем представления.

В коде каждой из функций, если объект ClearTool ($ ct) еще не установлен, они возвращают условие ошибки.

...