Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Оборудование для энергетики, КИП и СИЗ Екатеринбурге

Мы рады видеть Вас на сайте ООО ТД Прибор-Энерго

Наша компания с 2006 года поставляет качественное оборудование для энергетики и приборы отечественного и импортного производства. География поставок от Калининграда до Петропавловска-Камчатского и от Мурманска до Севастополя.

За годы работы сотрудники компании приобрели большой профессиональный опыт в вопросах выбора и доставки оборудования Заказчику. Основными принципами работы компании являются:

Поставка оборудования по ценам заводов-изготовителей.

Поставка только новых отечественных и официально ввезенных в Россию приборов.

Предоставление максимально комфортных условий приобретения оборудования в нашей компании для Заказчика с учетом его пожеланий.   

 Популярные бренды измерительного оборудования      Ведущие позиции бренда 
 
АКИП™, Россия

Торговая марка, зарегистрированная АО ПриСТ. Под этой торговой маркой поставляется оборудование зарубежных производителей из Европы, Азии и Америки. Приборы производятся в соответствии с системой стандарта качества ISO-9000. Большая часть приборов проходит испытания на соответствие ГОСТ-Р и включаются в государственный реестр средств измерений РФ.

  • Анализаторы сигналов и спектра
  • Антенны измерительные
  • Вольтметры и амперметры
  • Генераторы. Частотомеры
  • Осциллографы
  • Анализаторы качества электроэнергии
  • Измерители RLC
  • Измерители электробезопасности
  • Измерители сопротивления. Магазины 
  • Источники питания
  • Клещи электроизмерительные
  • Мультиметры
  • Пирометры
  • Нагрузки электронные
  Актаком™, Россия

Торговая марка АКТАКОМ объединяет в себе широкий спектр контрольно-измерительной аппаратуры мирового класса. Все лучшее от зарубежных и российских производителей – контрольно-измерительное оборудование, паяльное оборудование, радиомонтажный инструмент, а также производство промышленной мебели для оснащения лабораторий.

  • Анализаторы спектра
  • Вольтметры 
  • Генераторы сигналов. Частотомеры
  • Измерители LCR
  • Люксметры. Анемометры. Тахометры
  • Источники питания
  • Мегаомметры
  • Мультиметры
  • Осциллографы
  • Токоизмерительные клещи
  • Электронные нагрузки
  • Паяльное оборудование
  • Промышленная мебель
 
НПФ Радио-Сервис, Россия
 

Разработка и производство приборов электробезопасности и трассоискателей серии “Сталкер”. Многопрофильное предприятие, ориентированное на выполнение самых жестких требований рынка. Высокие современные технологии, незаурядный инженерный интеллект, творческий поиск оптимальных решений. Производство сертифицировано по международной системе менеджмента качества ISO 9001.

  • Трассоискатели, маркероискатели
  • Измерители сопротивления заземления
  • Мегаомметры
  • Измерители сопротивления петли
  • Измерители параметров УЗО
  • Указатели чередования фаз
  • Вольтамперфазометры
  APPA Technology Corporation, Тайвань

Основана в 1989 году. Производит широкий спектр портативных радиоэлектроизмерительных приборов: мультиметров, токовых клещей, измерителей температуры и влажности и других. Компания занимает второе место в мире по объему выпуска мультиметров и токовых клещей, уступая только компании Fluke

  • Мультиметры
  • Клещи электроизмерительные
  • Измерители RLC
  • Указатели напряжения
  • Измерители сопротивления изоляции
  Good Will Instrument Co. , Ltd.,Тайвань

Основана в 1975 году и была первым на Тайване производителем профессионального контрольно-измерительного оборудования. В настоящее время компания обладает тремя заводами, расположенными на территории Тайваня, Малайзии и КНР, а также пятью представительскими офисами за пределами Тайваня — в США, Японии, Малайзии и два офиса в КНР. Поставки оборудования производятся в более чем 80 стран по всему миру

  • Анализаторы сигналов и спектра
  • Вольтметры и амперметры
  • Генераторы. Частотомеры
  • Осциллографы
  • Измерители RLC
  • Измерители электробезопасности
  • Измерители сопротивления
  • Источники питания
  • Нагрузки электронные
  Center Technology Corporation, Тайвань

Существует с 1998 года, но имеет достаточно продолжительный опыт (более 20 лет) в разработке и дизайне электронной продукции для других известных фирм-производителей. Компания специализируется на производстве портативных измерителей температуры и влажности, пирометров, шумомеров, токоизмерительных клещей

  • Клещи электроизмерительные
  • Измерители температуры и влажности
  • Люксметры
  • Течеискатели
  • Шумомеры
  Shenzhen Everbest Machinery Industry Co. Ltd, Китай

Основана в 1991 году. Компания является одним из ведущих китайских производителей, специализирующихся на производстве инфракрасных пирометров (термометров) и тепловизоров, использующих лазерное наведение на изучаемый объект, разнообразных тестеров для определения параметров электроэнергии и изоляции, цифровых мультиметров, токовых клещей и измерителей уровня звука и освещённости, детекторов утечки газа и огромного спектра прочей измерительной аппаратуры

  • Пирометры
  • Тепловизоры
  • Мультиметры
  • Клещи электроизмерительные
  • Измерители сопротивления
  • Указатели напряжения
  • Тестеры скрытой проводки
  • Измерители температуры и влажности
  • Анемометры. Шумомеры. Люксметры
  • Видеоскопы
  Fluke Corporation, США

Со дня основания в 1948 году деятельность компании была направлена на создание и усовершенствование измерительных приборов и технологий, ставших неотъемлемой частью успешного развития производства и сферы обслуживания. Компания Fluke – мировой лидер в области современного калибровочного и измерительного оборудования, а также новаций в области измерительных технологий. Fluke является мультинациональной корпорацией со штаб квартирой в г. Эверетт, США. Производство размещено в США, Великобритании, Азии и Нидерландах. Центры продаж и обслуживания расположены в Северной и Южной Америке, Европе, Азии, Австралии.

  • Вольтметры и амперметры
  • Осциллографы 
  • Анализаторы качества электроэнергии 
  • Измерители сопротивления
  • Указатели напряжения
  • Клещи электроизмерительные
  • Мультиметры
  • Пирометры
  • Тепловизоры
  • Измерители температуры и влажности
  • Калибраторы
  Keysight Technologies Inc. (Agilent Technologies 1999 г.), США

В 2013 году Agilent Technologies анонсировала решение разделиться на две компании: Agilent, которая будет ориентирована на биохимический и диагностический рынки и компанию, занимающуюся электронными измерениями, получившую название Keysight Technologies. Большинство продуктовых линеек фирмы были разработаны в американской компании Hewlett-Packard, основанной в 1939 году. Компания Keysight предлагает широкий выбор электронных измерительных приборов и систем и соответствующих прикладных программ, средств автоматизированного проектирования и услуг, которые используются при проектировании, разработке, производстве, монтаже, вводе в действие и эксплуатации электронного оборудования.

  • Анализаторы сигналов и спектра
  • Анализаторы цепей
  • Вольтметры и амперметры
  • Генераторы
  • Измерители мощности СВЧ
  • Осциллографы
  • Измерители RLC
  • Измерители сопротивления
  • Источники питания
  • Мультиметры
  • Тепловизоры
  • Системы сбора данных
  Chauvin Arnoux, Франция

Основана в 1893 году в Париже (Франция). Компания зарегистрировала более 350 патентов и торговых марок. Более 5000 различных измерительных приборов от портативных до стационарного электрооборудования, от энергоэффективности и овладения всей цепочкой теплового процесса до производственной метрологии производится на ее восьми заводах в Европе и Америке, в том числе ряд уникальных устройств, не имеющих аналогов. Качество продукции подтверждается международными сертификатами ISO 9001 и ISO 14001.

  • Измерители сопротивления
  • Микроомметры
  • Измерители электроустановок
  • Тестеры УЗО
  • Анализаторы качества электроэнергии
  • Осциллографы
  • Токоизмерительные клещи
  • Мультиметры
  • Тахометры
  Standard Electric Works Co. LTD, Тайвань

Работает с 1973 года и предлагает широкий ассортимент электроизмерительного оборудования: измерители сопротивления изоляции и заземления, измерители параметров цепей электропитания, измерители параметров УЗО, анализаторы качества электроэнергии и другие.

Компания с многолетним опытом сертифицирована по стандарту ISO-9001

  • Измерители электробезопасности
  • Измерители сопротивления
  • Измерители электрической мощности
  • Указатели напряжения
  • Клещи электроизмерительные
  • Мультиметры
  • Устройства испытания УЗО
  • Трассодефектоискатели
  • Люксметры
  • Шумомеры
  SONEL S.A., Польша

Компания существует с 1994 года. Продукция с маркой SONEL впервые появилась в России в 1999 году. Имея необходимые производственные и научные мощности, является разработчиком и производителем современных высококачественных измерительных приборов для электроэнергетики, электроники и сферы телекоммуникаций. Все изделия отвечают требованиям нормативных метрологических документов и имеют соответствующие национальные (MEP) и российские сертификаты.

  • Измерители тока КЗ
  • Измерители УЗО
  • Измерители сопротивления изоляции
  • Измерители параметров заземления
  • Многофункциональные измерители
  • Указатели напряжения
  • Трассодефектоискатели
  • Микроомметры
  • Клещи электроизмерительные
  • Анализаторы качества электроэнергии
  • Мультиметры
  • Люксметры
  • Меры сопротивлений
  Testo SE & Co. KGaA, Германия

Компания, основанная в 1957 году, является мировым лидером в сфере портативных и стационарных измерительных технологий для контроля параметров окружающей среды. 2500 сотрудников 32 дочерних компаний по всему миру занимаются разработкой, производством и продажей высокотехнологичных продуктов компании. Российское представительство Testo – компания Тэсто Рус вышла на рынок измерительного оборудования в 2006 году.

  • Тепловизоры
  • Пирометры
  • Газовый анализ и измерение частиц
  • Температура и влажность
  • Скорость потока воздуха
  • Мультиметры
  • Токоизмерительные клещи
  • Указатели напряжения
  • Люксметры
  Metrel dd, Словения

Основана в 1957 году как фабрика по производству электрических измерительных приборов и компонентов для внутреннего рынка, со временем стала одним из ведущих мировых производителей измерительного и испытательного оборудования. Особое внимание уделяется языковой поддержке и соответствию местным стандартам для каждого конкретного рынка.

  • Измерители УЗО
  • Измерители сопротивления изоляции
  • Измерители параметров заземления
  • Многофункциональные измерители
  • Трассодефектоискатели
  • Микроомметры
  • Клещи электроизмерительные
  • Анализаторы качества электроэнергии
  • Мультиметры

 

Мы не наделяем приоритетом какого-либо Заказчика, каждый заказ нам важен и постараемся с честью выполнить взятые на себя обязательства по поставке.

Мы дорожим своим именем и Вы можете полностью довериться нашей компании, для которой порядочность, честь и достоинство не пустые слова. За годы работы крепкие отношения сложились с рядом крупнейших холдингов России. Нам доверяют, указывая статус “Надёжный Поставщик” 

Использование | Генератор OpenAPI

Параметры для генератора OpenAPI одинаковы независимо от того, используете ли вы CLI, подключаемые модули Maven/Gradle или параметры онлайн-генерации. На этой странице демонстрируется навигация по параметрам через интерфейс командной строки. Команды представлены здесь в логической последовательности в качестве руководства, но вы можете сразу перейти к команде генерации.

help​

Опция help перечисляет все команды, доступные для интерфейса командной строки.

 openapi-generator-cli help 
Использование: openapi-generator-cli <команда> [<аргументы>]

Наиболее часто используемые команды openapi-generator-cli:
author Утилиты для разработки генераторов или настройки шаблонов.
пакетно Генерировать код в пакетном режиме с помощью внешних конфигураций.
config-help Справка по настройке для выбранного языка
generate Сгенерировать код с помощью указанного генератора.
help Показать справочную информацию об openapi-generator
list Список доступных генераторов
meta MetaGenerator. Генератор для создания нового набора шаблонов и конфигурации для Codegen. Вывод будет основан на указанном вами языке и включает в себя шаблоны по умолчанию.
validate Подтвердить спецификацию
version Показать информацию о версии, используемой в инструментарии

Дополнительную информацию о конкретной команде
см. в 'openapi-generator-cli help '.

версия​

Команда version предоставляет информацию о версии, возвращая либо версию по умолчанию, либо git commit sha при передаче --sha , либо подробный вывод при передаче --full .

 ИМЯ 
версия openapi-generator-cli — Показать информацию о версии, используемую в инструментарии

СИНТАКСИС
версия openapi-generator-cli [--full] [--sha]

ОПЦИИ
--full
Подробная информация о полной версии Команда list выводит отформатированный список всех доступных генераторов. Передайте параметр -s/--short , если вы хотите получить вывод в формате CSV для упрощения анализа.

 openapi-generator-cli help list 
ИМЯ
openapi-generator-cli list — Список доступных генераторов

СИНТАКСИС
список openapi-generator-cli [(-i | --include )]
[(-s | --short)]

ОПЦИИ
-i , --include < include>
разделенный запятыми список индексов стабильности для включения (значение:
all,beta,stable,experimental,deprecated). Исключает устаревшие по умолчанию
.

-s, --short
сокращенный вывод (подходит для сценариев)

Пример:

 список openapi-generator-cli -s | тр ',' '\n' 

Полный список генераторов см. в Списке генераторов.

config-help​

Параметр config-help предоставляет подробную информацию о

 openapi-generator-cli help config-help 
ИМЯ
openapi-generator-cli config-help - Справка по настройке для выбранного языка

СИНТАКСИС openi -generator-cli config-help
[(-f <выходной формат> | --format <выходной формат>)] [--feature-set]
[--full-details]
[(-g <имя генератора> | --generator-name <имя генератора>)]
[--import-mappings] [--instantiation-types]
[--language-specific-primitive] [--markdown-header] [--named-header]
[(-o | - -output <местоположение вывода>)] [--зарезервированные слова]

ОПЦИИ
-f <формат вывода>, --format <формат вывода>
Записать выходные файлы в нужном формате. Возможные варианты: «текст»,
«уценка» или «yamlsample». По умолчанию «текст».

--feature-set
отображает набор функций, поддерживаемый генератором

--full-details
отображает параметры CLI, а также другие конфигурации/сопоставления (подразумевается
--instantation-types, --reserved-words,
--language-specific-primitives, --import-mappings,
- -supporting-files)

-g <имя генератора>, --generator-name <имя генератора>
генератор для получения справки по конфигурации для

--import-mappings
отображает сопоставления импорта по умолчанию (типы и псевдонимы, а также
импорт они подтянут в шаблон)

--instantiation-types
отображает типы, используемые для создания простых имен типов/псевдонимов

--language-specific-primitive
отображает примитивы, зависящие от языка (типы, которые не требуют
дополнительного импорта или могут конфликтовать с определяемой пользователем моделью
имена)

--markdown-header
Когда формат = уценка, включите эту опцию, чтобы записать заголовки уценки
(например, для docusaurus).

--named-header
Заголовок включает имя генератора для ясности в выводе

-o <местоположение вывода>, --output <местоположение вывода>
Необязательно писать справку в это место, в противном случае по умолчанию
стандартный вывод

--reserved-words
отображает зарезервированные слова, которые могут привести к переименованию модели или
имена свойств

Следует отметить параметр -g/--имя-генератора (другие параметры доступны для инструментов).

Вы можете передать любое имя генератора (см. команду list) в -g , и будут отображаться параметры, характерные для этого генератора. Некоторые генераторы имеют много вариантов , а у других может быть только несколько.

Пример:

 openapi-generator-cli config-help -g go 

Выходные данные:

 ОПЦИИ КОНФИГУРАЦИИ 
packageName
Имя пакета Go (условное обозначение: нижний регистр). (По умолчанию: openapi)

hideGenerationTimestamp
Скрывает отметку времени генерации при создании файлов. (По умолчанию: true)

packageVersion
Версия пакета Go. (По умолчанию: 1.0.0)

withGoCodegenComment
следует ли включать комментарий Go codegen, чтобы отключить Go Lint и свернуть по умолчанию в PR и различиях GitHub (по умолчанию: false)

withXml
следует ли включать поддержку типа содержимого application/xml и включать аннотации XML в модель (работает с библиотеками, обеспечивающими поддержку JSON и XML) (по умолчанию: false)

prependFormOrBodyParameters
Добавить параметры формы или тела в начало из списка параметров. (По умолчанию: false)

Чтобы передать эти параметры генератора клиента go команде generate для клиента go, используйте --additional-properties 9Вариант 0008. Пример см. в разделе команды генерации.

meta​

Команда meta создает новый класс Java и файлы шаблонов, используемые для создания ваших собственных шаблонов.

 openapi-generator-cli help meta 
ИМЯ
openapi-generator-cli meta - MetaGenerator. Генератор для создания нового набора шаблонов
и конфигурации для Codegen. Вывод будет основан на
указанном вами языке и включает в себя шаблоны по умолчанию.

СИНТАКСИС
openapi-generator-cli meta [(-l <язык> | --language <язык>)]
[(-n <имя> | --name <имя>)]
[(-o <выходной каталог > | --output <выходной каталог>)]
[(-p <пакет> | --package <пакет>)] [(-t <тип> | --type <тип>)]

ОПЦИИ
-l <язык>, --language <язык>
язык реализации для класса генератора

-n <имя>, --name <имя>
человекочитаемое имя генератора

-o <выходной каталог>, --output <выходной каталог>
куда записать сгенерированные файлы (по умолчанию текущий каталог)

-p <пакет>, --package < package>
пакет для размещения основного класса (по умолчанию
org.openapitools.codegen)

-t , --type
тип создаваемого генератора

Для in пример глубины использования мета 9Команда 0008, см. Настройка.

validate​

Команда validate позволяет проверить входную спецификацию, дополнительно предоставляя рекомендации по исправлению ошибок или другим улучшениям (если они доступны).

 openapi-generator-cli help validate 
ИМЯ
openapi-generator-cli validate - Проверка спецификации

СИНТАКСИС
openapi-generator-cli validate
(-i | --input-spec ) [ --рекомендовать]

ОПЦИИ
-i <файл спецификаций>, --input-spec <файл спецификаций>
расположение спецификации OpenAPI в виде URL-адреса или файла (обязательно)

--recommend

.0.yaml)

 openapi-generator-cli validate -i petstore-v3.0.yaml 
 Проверка спецификации (petstore-v3.0.yaml) 
Проблем с проверкой не обнаружено.

Недопустимый пример спецификации (с использованием petstore-v3.0-invalid.yaml):

 openapi-generator-cli validate -i petstore-v3.0-invalid. yaml 
 Проверка спецификации (petstore-v3.0-invalid.yaml) 
Ошибки:
-информация об атрибутах отсутствует

[ошибка] В спецификации есть 1 ошибка.

завершение

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

Эта команда принимает один или несколько параметров, представляющих список аргументов, который вы в противном случае передали бы openapi-generator . Например:

 openapi-generator-cli завершение config-help 
-o
--output
--named-header
-g
--generator-name
-f
--format
--markdown-header

An Пример сценария завершения bash можно найти в репозитории по адресу scripts/openapi-generator-cli-completion.bash.

generate

Команда generate — это рабочая лошадка набора инструментов генератора. Таким образом, он имеет намного больше доступных опций, чем предыдущие команды. Сокращенные варианты приведены ниже, но вы можете расширить полное описание.

 openapi-generator-cli help generate 
ИМЯ
openapi-generator-cli generate — Сгенерировать код с помощью указанного генератора
.

СИНТАКСИС
openapi-generator-cli generate
[(-a <авторизация> | --auth <авторизация>)]
[--api-name-suffix <суффикс имени API>] [--api-package <пакет API >]
[--artifact-id ] [--artifact-version <версия артефакта>]
[(-c <файл конфигурации> | --config <файл конфигурации>)] [--dry-run ]
[(-e <шаблонизатор> | --engine <шаблонизатор>)]
[--enable-post-process-file]
[(-g <имя генератора> | --generator-name <имя генератора> )]
[--generate-alias-as-model] [--git-host ]
[--git-repo-id ] [--git-user-id ]
[--global-property <глобальные свойства>...] [--group-id ]
[--http-user-agent ]
[(-i | --input-spec )]
[--ignore-file-override <игнорировать местоположение переопределения файла>]
[--import-mappings <сопоставления импорта>. ..]
[--instantiation-types <типы создания экземпляров>...]
[-- invoker-package ]
[--language-specific-primitives <языковые примитивы>...]
[--legacy-distributor-behavior] [--library ]
[--log- to-stderr] [--minimal-update]
[--model-name-prefix <префикс имени модели>]
[--model-name-suffix <суффикс имени модели>]
[--model-package <пакет модели>]
[(-o <выходной каталог> | --output <выходной каталог>)] [(-p <дополнительные свойства> | --additional-properties <дополнительные свойства>) ...]
[--package-name <имя пакета>] [--release-note <заметка о выпуске>]
[--remove-operation-id-prefix]
[--reserved-words-mappings <зарезервировано сопоставления слов>...]
[(-s | --skip-overwrite)] [--server-variables <серверные переменные>...]
[--skip-operation-example] [--skip-validate -спецификация]
[--strict-spec <истинное/ложное строгое поведение>]
[(-t <каталог шаблона> | --template-dir <каталог шаблона>)]
[--type-mappings <сопоставление типов>. .. ] [(-v | --verbose)]

generate OPTIONS
 OPTIONS 
-a <авторизация>, --auth <авторизация>
добавляет заголовки авторизации при удаленном получении определений OpenAPI
. Передайте закодированную в URL строку name:header с запятой
, разделяющей несколько значений

--api-name-suffix <суффикс имени API>
Суффикс, который будет добавлен ко всем именам API («тегам»). По умолчанию:
API. например Питомец => ПитАпи. Примечание. В настоящее время эту функцию поддерживают только генераторы ruby, python, jaxrs
.

--api-package <пакет API>
пакет для сгенерированных классов API

--artifact-id <идентификатор артефакта>
идентификатор_артефакта в сгенерированном pom.xml. Это также становится частью имени файла сгенерированной библиотеки

--artifact-version <версия артефакта>
версия артефакта в сгенерированном pom.xml. Это также становится частью
имя файла сгенерированной библиотеки

-c <файл конфигурации>, --config <файл конфигурации>
Путь к файлу конфигурации. Это может быть JSON или YAML. Если файл JSON,
содержимое должно иметь формат {"optionKey":"optionValue",
"optionKey1":"optionValue1"...}. Если файл YAML, содержимое должно иметь формат
optionKey: optionValue. Поддерживаемые параметры могут быть
различными для каждого языка. Запустите команду config-help -g {имя генератора}
для параметров конфигурации, зависящих от языка.

--dry-run
Попробуйте и сообщите о возможных изменениях (без фактического внесения изменений
).

-e <шаблонизатор>, --engine <шаблонизатор>
шаблонизатор: «усы» (по умолчанию) или «рули» (бета)

--enable-post-process-file
Включить файл постобработки с помощью переменных окружения.

-g <имя генератора>, --generator-name <имя генератора>
генератор для использования (список см. в команде list)

--generate-alias-as-model
Создать реализацию модели для псевдонимов для карт и схем массивов.
«Псевдоним» — это массив, карта или список, которые определены в документе
OpenAPI и становятся моделью в сгенерированном коде. Схема
«карта» — это объект, который может иметь необъявленные свойства, т. е. для этого объекта установлен атрибут
«дополнительные свойства». Схема «массив»
— это список подсхем в документе OAS

--git-host
Git host, например. gitlab.com.

--git-repo-id <идентификатор репозитория git>
Идентификатор репозитория Git, например. openapi-генератор.

--git-user-id <идентификатор пользователя git>
Идентификатор пользователя Git, например. опенапитулс.

--global-property <глобальные свойства>
задает указанные глобальные свойства (ранее называвшиеся «системными свойствами
») в формате имя=значение, имя=значение (или несколько параметров
, каждый с именем=значением)

--group-id
groupId в сгенерированном pom.xml

--http-user-agent
Пользовательский агент HTTP, например. codegen_csharp_api_client, по умолчанию
'OpenAPI-Generator/{packageVersion}/{language}'

-i , --input-spec
расположение спецификации OpenAPI в виде URL или файла (обязательно, если не загружен
через конфигурацию с использованием -c)

--ignore-file-override <игнорировать расположение переопределения файла>
Указывает расположение переопределения для файла . openapi-generator-ignore
. Наиболее полезен при начальном поколении.

--import-mappings <сопоставления импорта>
указывает сопоставление между данным классом и импортом, который должен использоваться для этого класса в формате type=import,type=import. У вас
также может быть несколько вхождений этой опции.

--instantiation-types <типы экземпляров>
устанавливает сопоставления типов экземпляров в формате
тип=тип экземпляра, тип=тип экземпляра. Например (в Java):
array=ArrayList,map=HashMap. Другими словами, типы массивов получат
, созданные как ArrayList в сгенерированном коде. Вы также можете иметь
несколько вхождений этой опции.

--invoker-package
корневой пакет для сгенерированного кода . Например:
String,boolean,Boolean,Double. Вы также можете иметь несколько
вхождений этой опции.

--legacy-diversity-behavior
Установите значение false для генераторов с лучшей поддержкой дискриминаторов.
(в Python, Java, Go, PowerShell, C# это включено по умолчанию).

--library
шаблон библиотеки (подшаблон)

--log-to-stderr
записывать все сообщения журнала (не только ошибки) в STDOUT. Полезно для
, передающего JSON-вывод опций отладки (например, `--global-property
debugOperations`) во внешний анализатор напрямую во время тестирования генератора
.

--minimal-update
Записывать только измененные выходные файлы.

--model-name-prefix <префикс имени модели>
Префикс, который будет добавляться ко всем названиям моделей.

--model-name-suffix <суффикс имени модели>
Суффикс, который будет добавляться ко всем именам моделей.

--model-package <пакет модели>
пакет для сгенерированных моделей

-o <каталог вывода>, --output <каталог вывода>
куда записать сгенерированные файлы (текущий каталог по умолчанию)

-p < дополнительные свойства>, --additional-properties <дополнительные свойства
>
задает дополнительные свойства, на которые могут ссылаться шаблоны усов
в формате имя=значение,имя=значение. У вас также может быть
множественных вхождений этой опции.

--package-name <имя пакета>
пакет для сгенерированных классов (где поддерживается)

--release-note <примечание к выпуску>
Примечание к выпуску, по умолчанию «Незначительное обновление».

--remove-operation-id-prefix
Удалить префикс OperationId, например. config_getId => получитьId

--reserved-words-mappings <сопоставления зарезервированных слов>
указывает, как следует экранировать зарезервированное имя. В противном случае используется _<имя> по умолчанию
. Например, идентификатор=идентификатор. Вы также можете
иметь несколько вхождений этой опции.

-s, --skip-overwrite
указывает, следует ли перезаписывать существующие файлы во время генерации
.

--server-variables <переменные сервера>
устанавливает переопределение переменных сервера для документов спецификаций, которые поддерживают
переменная шаблонизация серверов.

--skip-operation-example
Пропустить примеры, определенные в операциях, чтобы избежать ошибок нехватки памяти.

--skip-validate-spec
Пропускает поведение по умолчанию при проверке входной спецификации.

--strict-spec
Формулировки «ДОЛЖЕН» и «ДОЛЖЕН» в спецификации OpenAPI строго соблюдаются.
напр. при значении false никакие исправления не будут применяться к документам, прошедшим проверку
, но не соответствующим спецификации.

-t <каталог шаблона>, --template-dir <каталог шаблона>
папка, содержащая файлы шаблонов из OpenAPIType=generatedType,OpenAPIType=generatedType.
Например: массив=список,карта=карта,строка=строка. У вас также может быть
множественных вхождений этой опции.

-v, --verbose
подробный режим

Как минимум, сгенерировать требует:

  • -g для указания генератора
  • -o для указания значимого выходного каталога (по умолчанию текущий каталог!)
  • -i для указания входной документ OpenAPI

ПРИМЕЧАНИЕ Вы также можете передать -Dcolor в качестве системного свойства для раскрашивания выходных данных терминала.

Примеры​

В следующих примерах используется файл petstore.yaml.

Дополнительные свойства

Параметры, специфичные для генератора, должны передаваться как --additional-properties :

 openapi-generator-cli generate -g go --additional-properties=prependFormOrBodyParameters=true \ 
-o out -i petstore.yaml

Передача дополнительных параметров через пары ключ/значение, разделенные запятыми:

 --additional-properties=key1=value1,key2=value2 

Полный список параметров, специфичных для генератора, см. в документации по генераторам.

Сопоставления типов и сопоставления импорта

Большинство генераторов позволяют переназначать типы, привязанные к типам спецификации OpenAPI, на желаемые пользователем типы. Не все сопоставления типов могут быть переназначены, так как некоторые генераторы определяют сопоставления, тесно связанные со встроенными шаблонами.

Если вы не используете свои собственные шаблоны с импортом пакетов star/glob, вам, скорее всего, потребуется объединить --type-mappings и --import-mappings вместе.

  • --type-mappings Определяет целевой тип пользователя
  • --import-mappings Сообщает шаблону тип для импорта из OffsetDateTime от до LocalDateTime :

     openapi-generator-cli generate \ 
    -i petstore.yaml \
    -g kotlin-spring \
    -o out \
    --additional-properties=library=spring-boot, beanValidations = истина, serviceImplementation = истина \
    --import-mappings=DateTime=java.time.LocalDateTime \
    --type-mappings=DateTime=java.time.LocalDateTime

    ПРИМЕЧАНИЕ. сопоставления применяются к DateTime , так как это представление примитивный тип. См. DefaultCodegen.

    Постобработка файла

    Параметр --enable-post-process-file позволяет определенным генераторам вызывать некоторые внешние скрипты форматирования для конкретного языка. Каждое имя файла передается индивидуально к этому внешнему сценарию, что позволяет проводить анализ, форматирование или другую индивидуальную очистку.

    Дополнительные сведения см. в разделе Постобработка файлов.

    Целевые внешние модели

    Иногда вы не хотите, чтобы генератор кода создавал для вас модель — вы можете просто включить ту, которая уже существует в вашей кодовой базе. Скажем, у вас уже есть объект User , и вы хотите повторно использовать его, пакет модели которого отличается от других сгенерированных файлов:

    Во-первых, укажите, что класс уже включен по умолчанию. Это предотвратит попытку codegen сгенерировать класс.

     --language-specific-primitives=Pet 

    Этот параметр командной строки указывает генератору считать Pet "примитивным" типом.

    Затем, если класс Pet является другим пакетом, добавьте --import-mapping , чтобы указать генератору включать этот импорт везде, где используется Pet :

     --import-mappings=Pet=com .yourpackage.models.Pet 

    Теперь codegen будет знать, что импортировать из этого конкретного пакета.

    ПРИМЕЧАНИЕ. import-mappings В этом примере назначается пара ключ-значение, но несколько значений могут быть разделены запятыми. Например:

     --import-mappings=Pet=com.yourpackage.models.Pet,User=com.yourpackage.models.User 
    Файл конфигурации

    Вместо того, чтобы передавать параметры генератора в CSV -- дополнительных свойств , вы также можете предоставить настройки через файл JSON или файл YAML.

    Например, один из наших образцов машинописного текста имеет следующий файл конфигурации:

     { 
    "npmName": "@swagger/typescript-fetch-petstore",
    "npmVersion": "1.0.0",
    "npmRepository": "https://skimdb.npmjs.com/registry",
    "snapshot": false,
    "supportsES6": true
    }

    Эти настройки можно передать через -c имя файла . Здесь мы сохранили вышеуказанное как config.json :

     openapi-generator-cli generate -i petstore.yaml -g typescript-fetch -o out \ 
    -c config. json

    Тот же файл конфигурации может быть передан в формат YAML со следующим эквивалентным содержанием:

     npmName: "@swagger/typescript-fetch-petstore" 
    npmVersion: "1.0.0"
    npmRepository: "https://skimdb.npmjs.com/registry"
    моментальный снимок: false
    supportsES6: true

    настройки передаются точно такие же как и для config.json . Наиболее важной частью является расширение файла. Поддерживаемые значения: yml ​​ или yml ​​ . Имя файла должно быть config.yml или config.yaml (в нашем примере это будет config.yaml ).

     openapi-generator-cli generate -i petstore.yaml -g typescript-fetch -o out \ 
    -c config.yaml

    пакет

    Команда пакет позволяет перемещать все аргументы CLI, поддерживаемые генерировать команду в файл YAML или JSON.

    ПРИМЕЧАНИЕ : Эта команда поддерживает дополнительное свойство !include , которое может указывать на другой «общий» файл, базовый путь к которому может быть изменено --includes-base-dir . Начиная с версии 5.0.0, команда !batch поддерживает несколько свойств !include , как последовательных, так и вложенных в другие ключи. Для поддержки нескольких свойств !include в файле JSON имя свойства может иметь суффикс, например. !include1 , !include2 и т. д. Этот суффикс не имеет другого значения, кроме предоставления уникальных имен свойств.

     пакет справки openapi-generator-cli 
    ИМЯ
    пакет openapi-generator-cli — Генерация кода в пакетном режиме через внешний
    конфиг.

    СИНТАКСИС
    пакет openapi-generator-cli [--clean] [--fail-fast]
    [--includes-base-dir ] [(-r | --threads )]
    [--root-dir ] [--timeout ] [(-v | --verbose)] [--]
    ...

    ОПЦИИ
    --clean
    чистый вывод ранее записанных файлов до генерации

    --fail-fast
    fail fast при любых ошибках

    --includes-base-dir
    базовый каталог, используемый для include

    -r <потоки>, --threads <потоки>
    количество потоков

    --root-dir <корневой>
    корневой каталог используемый вывод/включения (включения могут быть переопределены)

    --timeout <время ожидания>
    выполнение тайм-аут (минуты)

    -v, --verbose
    подробный режим

    --
    Этот параметр можно использовать для отделения параметров командной строки от списка аргументов
    (полезно, когда аргументы могут быть ошибочно приняты за
    командную строку). опции

    <конфигурации>
    Файлы конфигурации генератора.

    Пример:

     # создать "общую" конфигурацию 
    mkdir shared && cat > shared/common.yaml < inputSpec: https://raw.githubusercontent.com/OpenAPITools/openapi-generator/master/modules /openapi-generator/src/test/resources/3_0/petstore.yaml
    AdditionalProperties:
    x-ext-name: «Ваше имя»
    EOF

    # создать вложенную «общую» конфигурацию
    cat > shared/nested.yaml << EOF
    useCompareNetObjects: «истина»
    EOF

    # создать «стандартные» конфигурации
    cat > kotlin.yaml < '!include': 'shared/common.yaml'
    outputDir: out/kotlin
    генераторИмя: kotlin
    артефактИд: kotlin-petstore-string
    AdditionalProperties:
    dateLibrary: string
    serializableModel: "true"
    EOF

    cat > csharp.yaml < '!include': 'shared/common.yaml'
    outputDir: out/csharp-netcore
    генераторИмя: csharp -netcore
    дополнительные свойства:
    packageGuid: "{321C8C3F-0156-40C1-AE42-D59761FB9B6C}"
    '!include': 'shared/nested. yaml'
    EOF

    # Сгенерируйте их автор

    Эта группа команд содержит утилиты для создания генераторов или настройки шаблонов.

     openapi-generator-cli help author 
    ИМЯ
    openapi-generator-cli author - Утилиты для создания генераторов или
    настройки шаблонов.

    СИНТАКСИС
    openapi-generator-cli автор
    шаблон автора openapi-generator-cli [--library <библиотека>]
    [(-v | --verbose)]
    [(-o <каталог вывода> | --output <каталог вывода>)]
    (-g <имя генератора> | --generator-name <имя генератора>)

    ОПЦИИ
    --help
    Показать справку об инструменте

    --version
    Показать вывод полной версии

    КОМАНДЫ openapi-generator

    template
    Получить шаблоны для локальной модификации

    С параметром --library, шаблон библиотеки (подшаблон)

    С параметром --verbose, подробный режим

    С параметром --output, куда записывать файлы шаблона (по умолчанию
    'out')

    С Опция --generator-name, генератор для использования (см. команду list для списка
    )

    шаблон

    Эта команда позволяет пользователю извлекать шаблоны из jar CLI, что упрощает настройку.

     openapi-generator-cli справка автора шаблона 
    НАЗВАНИЕ
    шаблон автора openapi-generator-cli - получение шаблонов для локальной модификации

    ОБЗОР
    шаблон автора openapi-generator-cli
    (-g <имя генератора> | --generator-name <имя генератора>)
    [-- library <библиотека>]
    [(-o <выходной каталог> | --output <выходной каталог>)]
    [(-v | --verbose)]

    ОПЦИИ
    -g <имя генератора>, --generator- name <имя генератора>
    генератор для использования (см. список в команде list)

    --library <библиотека>
    шаблон библиотеки (подшаблон)

    -o <каталог вывода>, --output <каталог вывода>
    куда записать файлы шаблона (по умолчанию 'out')

    -v , --verbose
    подробный режим

    Пример:

    Извлечь шаблоны Java, ограничиваясь библиотекой веб-клиента .

     шаблон автора openapi-generator-cli -g java --library webclient 

    Извлечь все шаблоны Java:

     шаблон автора openapi-generator-cli -g java 

    Настройка | Генератор OpenAPI

    Шаблоны, определяемые пользователем

    Наиболее распространенный сценарий пользовательской настройки — переопределение встроенных шаблонов с небольшими изменениями. Документация по этому сценарию находится на нашей странице шаблонов и отличается от пользовательских шаблонов.

    До выпуска 5.0.0 всякий раз, когда пользователь хотел включить шаблоны, которые не были встроенными или не были известны генератору во время компиляции, им нужно было следовать более сложному подходу создания пользовательского генератора. как описано далее в этом документе. Начиная с версии 5.0.0, пользователь теперь может предоставлять дополнительные вспомогательные файлы и расширения для встроенных шаблонов через конфигурацию. Эта функция требует использования функции внешнего файла конфигурации.

    Учтите, что вам может понадобиться добавить некоторую статическую документацию, такую ​​как AUTHORS.md и пользовательский инструментальный скрипт. Вместо одного файла для определений API вам также нужен файл реализации и отдельный файл интерфейса для каждого.

    У вас может быть внешний файл конфигурации с именем config.yaml , который определяет дополнительные свойства, подобные этому, для генератора клиентов kotlin :

     дополнительные свойства: 
    идентификатор артефакта: kotlin-petstore-client
    serializableModel: "true"
    dateLibrary: java8

    Генерация через CLI с помощью команды:

     вышеприведенный сценарий с настраиваемыми шаблонами, убедитесь, что вы указываете на свой собственный каталог шаблонов, и добавьте узел  файлов  с определениями файлов шаблонов в свою конфигурацию: 

     templateDir: my_custom_templates 
    AdditionalProperties:
    идентификатор артефакта: kotlin-petstore-client
    serializableModel: "true"
    dateLibrary: java8
    files:
    AUTHORS. md: {}
    api_interfaces.mustache:
    templateType: API
    destinationFilename: Interface.kt templateType1: 9.0mustache : API
    имя файла назначения: Impl.kt
    другое/check.mustache:
    папка: scripts
    имя файла назначения: check.sh
    тип шаблона: SupportingFiles

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

    Приведенная выше конфигурация сделает следующее:

    • Скопируйте my_custom_templates/AUTHORS.md в сгенерированный выходной каталог без обработки с помощью механизма шаблонов (из-за расширения файла шаблона). Пустое определение объекта, следующее за AUTHORS.md , позволяет инструменту вывести имя целевого выходного файла в корне выходного каталога.
    • Скомпилируйте предоставленный пользователем my_custom_templates/api_interfaces.mustache , следуя нашей обычной логике компиляции шаблона API. То есть для каждого API будет создан один файл; API генерируются в соответствии с тегами в документации спецификации. Имя файла назначения Interface.kt будет выступать в качестве суффикса имени файла. Таким образом, тег Equipment выведет соответствующий EquipmentInterface.kt .
    • Поскольку api.mustache — это то же имя файла усов, которое используется в вашем целевом генераторе ( kotlin в этом примере), мы поддерживаем следующее:
      • Имя файла назначения содержит суффикс для сгенерированного вывода. API генерируются для каждого тега в вашей спецификации. Итак, тег Оборудование выведет соответствующий EquipmentImpl.kt . Этот параметр будет использоваться независимо от того, нацелен ли api.mustache на настраиваемый пользователем шаблон или на встроенный шаблон.
      • Встроенный шаблон будет использоваться, если вы не предоставили настраиваемый шаблон. Генератор kotlin определяет суффикс просто как . kt , поэтому этот сценарий будет изменять только суффиксы сгенерированных файлов в соответствии с предыдущим пунктом.
      • Ваш api.mustache будет использоваться, если он существует в вашем пользовательском каталоге шаблонов. Для генераторов с опциями библиотеки, такими как jvm-okhttp3 в генераторе kotlin ваш файл должен находиться в том же относительном месте, что и встроенный шаблон. Для kotlin, использующего параметр библиотеки jvm-okhttp3 , этот файл должен находиться по адресу my_custom_templates/libraries/jvm-okhttp/api.mustache . См. шаблоны для более подробной информации.
    • Скомпилируйте my_custom_templates/other/check.mustache с пакетом вспомогательных файлов и выведите в scripts/check.sh в вашем выходном каталоге. Обратите внимание, что в настоящее время мы не поддерживаем установку файловых флагов на выходе, поэтому скрипты, подобные этим, должны быть либо получены, а не выполнены, либо иметь файловые флаги, установленные отдельно после генерации (внешние по отношению к нашему инструментарию).

    Параметр templateType по умолчанию имеет значение SupportingFiles , поэтому параметр other/check.mustache является избыточным и предоставляется для демонстрации всех параметров конфигурации файла шаблона. Доступные типы шаблонов:

    • API
    • Apidocs
    • Apitests
    • Model
    • Modeldocs
    • Modeltests
    • Supportingfiles
    4.shipless arshipling 9053. Типы, связанные с API, создают файл для каждого API. Типы, связанные с моделью, создают файл для каждой модели.

    Обратите внимание, что пользовательские шаблоны будут объединены со встроенными определениями шаблонов. Если вспомогательный файл с путем к файлу образца шаблона существует, он будет заменен пользовательским шаблоном, в противном случае пользовательский шаблон будет добавлен в список файлов шаблонов для компиляции. Если встроенный шаблон генератора model_docs.mustache и вы определяете model-docs. mustache , это приведет к дублированию документов модели (если targetFilename отличается) или неопределенному поведению, поскольку какой бы шаблон ни компилировался последним, он перезапишет предыдущий. типовые документы (если имя_файла_назначения соответствует расширению или суффиксу в коде генератора).

    Пользовательский генератор (и шаблон)

    Если ни один из встроенных генераторов не соответствует вашим потребностям и вам нужно сделать больше, чем просто изменить шаблоны усов для настройки сгенерированного кода, вы можете создать совершенно новый генератор и связанные с ним шаблоны. . Генератор OpenAPI может помочь с этим, используя команду `meta`:

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar meta \ 
    -o out/generators/my-codegen -n my-codegen -p com.my.company.codegen

    Будет создан новый каталог out/generators/my-codegen со всеми файлами, которые вам нужно начать работу, включая README. md . После изменения и компиляции вы можете использовать свой новый codegen точно так же, как и любой другой, со своей собственной пользовательской логикой.

    Эти имена могут быть какими угодно. Если вы создаете клиент для языка пробелов, возможно, вам следует использовать параметры 9.0007 -o выход/генераторы/пробел -n пробел . Они могут быть одинаковыми или разными, это не имеет значения. Значение -n станет именем шаблона.

    ПРИМЕЧАНИЕ По соглашению используется оболочка кебаба для имен, переданных в -n . Например, scala-finatra станет ScalaFinatraGenerator .

    Используйте новый генератор с CLI

    Чтобы скомпилировать библиотеку, войдите в каталог out/generators/my-codegen , запустите0007 mvn пакет .

    ПРИМЕЧАНИЕ Для запуска собственного генератора необходимо добавить его в путь к классам. Это немного отличается в Windows от Unix. Если вы используете подсистему Windows для Linux или оболочку, такую ​​как gitbash, и у вас есть проблемы с вариантом unix, попробуйте приведенный ниже синтаксис Windows.

    Теперь запустите генератор:

     java -cp out/generators/my-codegen/target/my-codegen-openapi-generator-1.0.0.jar:modules/openapi-generator-cli/target/openapi-generator -cli.jar org.openapitools.codegen.OpenAPIGenerator 

    Для пользователей Windows вам нужно будет использовать ; вместо : в пути к классам, например.

     java -cp "out/generators/my-codegen/target/my-codegen-openapi-generator-1.0.0.jar;modules/openapi-generator-cli/target/openapi-generator-cli.jar" org. openapitools.codegen.OpenAPIGenerator 

    Обратите внимание, что my-codegen теперь является опцией для -g , и вы можете использовать обычные аргументы для генерации кода:

     java -cp out/generators/my-codegen/ target/my-codegen-openapi-generator-1. 0.0.jar:modules/openapi-generator-cli/target/openapi-generator-cli.jar \ 
    org.openapitools.codegen.OpenAPIGenerator generate -g my-codegen \
    -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/ petstore.yaml \
    -o ./out/myClient

    Для пользователей Windows:

     java -cp "out/codegens/customCodegen/target/my-codegen-openapi-generator-1.0.0.jar;modules/openapi -generator-cli/target/openapi-generator-cli.jar" \ 
    org.openapitools.codegen.OpenAPIGenerator generate -g my-codegen \
    -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
    -o ./out/myClient

    Используйте свой новый генератор с подключаемым модулем maven

    Установите свою библиотеку в локальный репозиторий maven, выполнив:

     mvn clean install -f out/generators/my-codegen 

    Это установит org. openapitools:my-codegen -openapi-generator:1.0.0 в ваш локальный репозиторий maven.

    Вы можете использовать это как дополнительную зависимость плагина openapi-generator-maven-plugin и использовать my-codegen как имя генератора значение:

      
    org.openapitools
    openapi-generator-maven-plugin
    ${openapi-generator-version}


    generate-client-code

    generate


    my-codegen






    org.openapitools
    my-codegen-openapi-generator
    1.0 .0



    Если вы публикуете свой артефакт в удаленном репозитории maven, не забудьте добавить этот репозиторий как pluginRepository для вашего проекта.

    Выборочная генерация

    Вы можете не захотеть генерировать все модели в своем проекте. Точно так же вы можете захотеть написать только один или два API. В этом случае вы можете использовать системные свойства или глобальные свойства для управления выводом.

    По умолчанию генерируется все, что поддерживается конкретной библиотекой. Как только вы включите функцию, она ограничит генерируемое содержимое:

     # генерировать только модели 
    --global-property models

    # генерировать только API
    --global-property API

    # генерировать только вспомогательные файлы
    --global- property supportFiles

    # генерировать модели и вспомогательные файлы
    --global-property models,supportingFiles

    0003

     # сгенерировать только модели User и Pet 
    --global-property models="User:Pet"

    # сгенерировать модель User и файл supportFile `StringUtil.java`:
    --global-property models=User,supportingFiles= StringUtil. java

    Чтобы управлять генерацией документов и тестов для API и моделей, передайте параметру false. Для API это параметры --global-property apiTests=false,apiDocs=false . Для моделей --global-property modelTests=false,modelDocs=false . Эти параметры по умолчанию имеют значение true и не ограничивают создание перечисленных выше параметров функций (например, --global-property api ):

     # генерировать только модели (с тестами и документацией) 
    --global-property models

    # генерировать только модели (с тестами, но без документации)
    --global-property models,modelDocs=false

    # генерировать только модели User и Pet (без тестов и без документации)
    --global-property models="User:Pet ",МодельТестс=ложь

    # генерировать только API (без тестов)
    --global-property apis,apiTests=false

    # генерировать только API (опция modelTests игнорируется)
    --global-property APIS,modelTests=false

    При использовании select поколение, будут использоваться только шаблоны, необходимые для определенного поколения.

    Чтобы пропустить модели, определенные как параметры формы в «requestBody», используйте skipFormModel (по умолчанию true ) (эта опция представлена ​​в версиях 3.2.2 и 9).0007 true по умолчанию, начиная с v5.x).

     --global-property skipFormModel=true 

    Эта опция позволяет пропустить генерацию модели из-за параметра формы, который в OAS3 определяется иначе, так как в OAS3 нет параметра формы

    Игнорировать формат файла

    OpenAPI Generator поддерживает файл .openapi-generator-ignore , похожий на .gitignore или .dockerignore , с которыми вы, вероятно, уже знакомы.

    Файл игнорирования позволяет лучше контролировать перезапись существующих файлов, чем флаг --skip-overwrite . С помощью файла игнорирования вы можете указать, что отдельные файлы или каталоги могут быть проигнорированы. Это может быть полезно, например, если вам нужно только подмножество сгенерированного кода.

    Примеры:

     # OpenAPI Generator Ignore 
    # Строки, начинающиеся с #, являются комментариями

    # Это должно соответствовать файлу build.sh, расположенному где угодно.
    build.sh

    # Соответствует build.sh в корне
    /build.sh

    # Рекурсивно исключить все
    docs/**

    # Явно разрешить файлы, исключенные другими правилами
    !docs/UserApi.md

    # Рекурсивно исключить каталоги с именем Api этот каталог.
    src/**/Api/

    # Когда этот файл вложен в /Api (исключено выше),
    # это правило игнорируется, поскольку родительский каталог исключен предыдущим правилом.
    !src/**/PetApiTests.cs

    # Явно исключить один вложенный файл
    src/Org.OpenAPITools.Test/Model/AnimalFarmTests.cs

    Файл .openapi-generator-ignore должен существовать в корне выходного каталога.

    При первом создании кода вы также можете передать параметр CLI --ignore-file-override=/path/to/ignore_file для большего контроля над генерируемыми выходными данными. Обратите внимание, что это полное переопределение, и оно переопределит файл .openapi-generator-ignore в выходном каталоге при повторном создании кода.

    Поддержка редактора файлов .openapi-generator-ignore доступна в IntelliJ через подключаемый модуль .ignore.

    Настройка генератора

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

     $ ls -1 modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/ 
    AbstractJavaJAXRSServerCodegen.java
    AbstractTypeScriptClientCodegen.java
    ... (результаты опущены)
    TypeScriptAngularClientCodegen.java
    TypeScriptNodeClientCodegen.java

    Каждый из этих файлов создает разумные значения по умолчанию, чтобы вы могли быстро приступить к работе. Но если вы хотите настроить имена пакетов, префиксы, папки моделей и т. д., вы можете использовать файл конфигурации json для передачи значений.

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate \ 
    -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator /src/test/resources/3_0/petstore.yaml \
    -g java \
    -o образцы/клиент/зоомагазин/java \
    -c путь/к/config.json

    и config.json содержит в качестве примера следующее:

     { 
    "apiPackage": "petstore"
    }

    Вы также можете использовать config.yml со следующим эквивалентным примером:

     apiPackage: "petstore" 

    Поддерживаемые параметры конфигурации могут различаться в зависимости от языка. Запуск config-help -g {lang} покажет доступные параметры. Эти параметры применяются через файл конфигурации (например, config.json или config.yml) или путем их передачи с помощью -p {optionName}={optionValue} . (Если -p {optionName} не работает, откройте тикет, и мы рассмотрим его)

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar config-help -g java 

    Output

     CONFIG OPTIONS 
    modelPackage
    пакет для сгенерированных моделей

    apiPackage
    пакет для сгенерированных классов API
    ...... (результаты опущены)
    библиотека
    шаблон библиотеки (подшаблон) для использования:
    jersey1 - клиент HTTP: клиент Jersey 1.18. Обработка JSON: Jackson 2.4.2
    jersey2 — HTTP-клиент: Jersey client 2.6
    feign — HTTP-клиент: Netflix Feign 8.1.1. Обработка JSON: Jackson 2.6.3
    okhttp-gson (по умолчанию) — HTTP-клиент: OkHttp 2.4.0. Обработка JSON: модификация Gson 2.3.1
    — HTTP-клиент: OkHttp 2.4.0. Обработка JSON: Gson 2.3.1 (модификация 1.9.0)
    модификация2 — HTTP-клиент: OkHttp 2.5.0. Обработка JSON: Gson 2.4 (модификация 2.0.0-beta2)
    google-api-client — HTTP-клиент: google-api-client 1. 23.0. Обработка JSON: Jackson 2.8.9
    с гарантией безопасности — HTTP-клиент: с гарантией безопасности: 4.3.0. Обработка JSON: Gson 2.8.6. Только для Java8

    Ваш файл конфигурации для Java может выглядеть так:

     { 
    "groupId":"com.my.company",
    "artifactId":"MyClient",
    "artifactVersion":"1.2.0" ,
    "library":"feign"
    }

    Или, если вы предпочитаете формат yaml, он может выглядеть так:

     groupId: "com.my.company" 
    идентификатор артефакта: "MyClient"
    ArtifactVersion: "1.2.0"
    библиотека: "feign"

    Для всех неуказанных параметров будут использоваться значения по умолчанию.

    Другой способ переопределить параметры по умолчанию — расширить класс конфигурации для определенного языка. Например, чтобы изменить префикс для сгенерированных файлов Objective-C, просто создайте подкласс пакета ObjcClientCodegen.java :

     com.mycompany.openapitools.codegen; 

    импорт org. openapitools.codegen.languages.*;

    открытый класс MyObjcCodegen extends ObjcClientCodegen {
    static {
    PREFIX = "HELLO";
    }
    }

    и укажите Classname при запуске генератора:

     -G Com.mycompany.openapitools.codegen.myobjccodegen 

    . Ваш подкласс теперь будет загружен и переопределяется в quix . суперкласс.

    Создание собственных моделей

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

    Чтобы указать сопоставление импорта, используйте аргумент --import-mappings и укажите логику импорта модели как таковую:

     --import-mappings Pet =my.models.MyPet 

    Или для нескольких сопоставлений:

     --import-mappings Pet=my. models.MyPet,Order=my.models.MyOrder 

    или

     --import-mappings Pet=my.models.MyPet --import-mappings Order=my.models.MyOrder 

    Отображение схемы пакет) с использованием опции

    schemaMappings , например. в CLI

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/type-alias.yaml - о /tmp/java2/ --schema-mapping TypeAlias=foo.bar.TypeAlias ​​

    Другой пример (в сочетании с --type-mappings):

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i /tmp/alias.yaml -o /tmp/alias/ --schema-mappings stream=org.springframework.web.servlet.mvc.method.annotation.StreamingResponseBody --type-mappings string+binary=stream 

    , а /tmp/alias.yaml следующим образом:

     openapi: 3.0.3 
    информация:
    название: демо-приложение
    версия: 1.0.0
    серверов:
    - url: /api/v1
    пути:
    /demo:
    получить:
    резюме: Demo
    operationId: demo
    ответы:
    '200':
    описание: Demo response
    content:
    text/csv:
    schema:
    тип: строка
    формат: двоичный

    Именование встроенной схемы

    Встроенные схемы создаются как отдельные схемы автоматически, и автоматически сгенерированное имя схемы может не всем понравиться. Можно настроить имя, используя поле title или параметр inlineSchemaNameMapping . Например, запустите следующее:

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/inline_model_resolver .yaml -o /tmp/java3/ --skip-validate-spec --inline-schema-name-mappings inline_object_2=SomethingMapped,inline_object_4=nothing_new 

    покажет в консоли следующее:

     [main] INFO o.o. codegen.InlineModelResolver — встроенная схема, созданная как произвольный ObjectRequestBodyProperty_request. Чтобы иметь полный контроль над именем модели, задайте поле title или используйте параметр inlineSchemaNameMapping (--inline-schema-name-mappings в CLI). 
    [main] INFO o.o.codegen.InlineModelResolver — встроенная схема, созданная как meta_200_response. Чтобы иметь полный контроль над именем модели, задайте поле title или используйте параметр inlineSchemaNameMapping (--inline-schema-name-mappings в CLI).

    Например, чтобы назвать встроенную схему meta_200_response как MetaObject , используйте параметр --inline-schema-name-mappings следующим образом:

     java -jar modules/openapi-generator-cli/target /openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/inline_model_resolver.yaml -o /tmp/java3/ --skip-validate-spec --inline-schema -name-mappings meta_200_response=МетаОбъект,произвольныйОбъектЗапросBodyProperty_request=ПроизвольныйЗапрос 

    Другой полезный параметр — inlineSchemaNameDefaults , который позволяет настроить суффикс автоматически сгенерированного имени встроенной схемы, например. в CLI

     --inline-schema-name-defaults arrayItemSuffix=_array_item,mapItemSuffix=_map_item 

    Примечание. В настоящее время поддерживаются только arrayItemSuffix, mapItemSuffix. SKIP_SCHEMA_REUSE=true — это специальное значение, позволяющее пропустить повторное использование встроенных схем.

    Нормализатор OpenAPI​

    Нормализатор OpenAPI (по умолчанию выключен) преобразует входной документ/спецификацию OpenAPI (который может не полностью соответствовать спецификации), чтобы сделать его пригодным для работы с генератором OpenAPI. Вот список поддерживаемых правил:

    • REF_AS_PARENT_IN_ALLOF : если установлено значение true , дочерние схемы в allOf считаются родительскими, если это $ref (вместо встроенной схемы).

    Пример:

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/allOf_extension_parent.yaml -o /tmp/java-okhttp/ --openapi-normalizer REF_AS_PARENT_IN_ALLOF=true 
    • REMOVE_ANYOF_ONEOF_AND_KEEP_PROPERTIES_ONLY : если установлено значение true , будет удалена схема oneOf/anyOf только с требуемыми свойствами только в схеме со свойствами. (пример)

    Пример:

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/ removeAnyOfOneOfAndKeepPropertiesOnly_test.yaml -o /tmp/java-okhttp/ --openapi-normalizer REMOVE_ANYOF_ONEOF_AND_KEEP_PROPERTIES_ONLY=true 
    • aymostify_anyof_string_and_enum_string : при установке True , упростите любую схему с помощью строки и enum string только String

    Пример:

     Java -Jar Modules/openAp/openAp-generator-generator-generator/openapi-generator-generator/openapi-generator-generator-generator-generat -generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/simplifyAnyOfStringAndEnumString_test.yaml -o /tmp/java-okhttp/ --openapi-normalizer SIMPLIFY_ANYOF_STRING_AND_ENUM_STRING=true 
    • SIMPLIFY_BOOLEAN_ENUM : если установлено значение true , преобразовать логическое перечисление в просто перечисление.

    Пример:

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/simplifyBooleanEnum_test.yaml -o /tmp/java-okhttp/ --openapi-normalizer SIMPLIFY_BOOLEAN_ENUM=true 
    • SIMPLIFY_ONEOF_ANYOF : если установлено значение true , упростите oneOf/anyOf, 1) удалив null (подсхему) и установив значение nullable вместо true, и 2) упростив oneOf/anyOf с одной подсхемой до самой подсхемы.

    Пример:

     java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/simplifyOneOfAnyOf_test.yaml -o /tmp/java-okhttp/ --openapi-normalizer SIMPLIFY_ONEOF_ANYOF=true 
    • KEEP_ONLY_FIRST_TAG_IN_OPERATION : если установлено значение true , оставить в работе только первый тег, если определено более одного тега.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *