Перейти к содержанию

Контент-селекторы

Контент-селекторы позволяют определить содержимое, к которому пользователи будут иметь доступ.

Выбираемое содержимое оценивается с точки зрения поисковых запросов, написанных на языке CSEL (Content Selector Expression Language).

Выберите в меню пункт Управление, а затем подпункт Контент-селекторы.

На странице Контент-селекторы приведен список всех существующих в Системе селекторов. Каждый из них представлен в виде отдельной строки.

Для каждого контент-селектора отображаются:

  • Имя селектора.
  • Тип (CSEL).
  • Описание селектора.

В столбце Действия в строке селектора расположены следующие кнопки:

  • - Редактировать конфигурацию селектора. С помощью этой кнопки можно изменить его параметры (Описание и Выражение).
  • - Удалить, предназначенная для удаления селектора.

Создание контент-селектора

Для добавления нового контент-селектора:

  1. На странице Контент-селекторы нажмите на кнопку Добавить контент-селектор.
  2. Укажите Имя селектора. Имя должно быть уникальным и может содержать только английские буквы, цифры, дефисы и точки.
  3. Введите Описание селектора.
  4. Задайте Выражение для создаваемого селектора, см. раздел «Выражения контент-селекторов».
  5. Нажмите на кнопку Создать контент-селектор.

Выражения контент-селекторов

Выражение контент-селектора является поисковым запросом с использованием синтаксиса CSEL.

Ниже приведены допустимые атрибуты контент-селекторов.

Атрибут Допустимые значения
path Путь к содержимому в репозитории
format Формат запрашиваемого содержимого

Примеры контент-селекторов с регулярными выражениями (для Non-HA сборок)

Валидные операторы:

Оператор Описание Пример
== Точное соответствие тексту format == "raw"
=~ Соответствие регулярному выражению Java path =~ "^/org/apache/commons/."*
=^ Начинается с текста path =^ "/com/example/"
аnd Соответствие всем выражениям format == "maven2" and path =~ "^/org/apache/commons/."*
or Соответствие одному из выражений format == "maven2" or format == "npm"
(expr) Группировка нескольких выражений format == "npm" or (format == "maven2" and path =~ "^/org/apache/commons/.")*

Во избежание ошибок БД в регулярных выражениях диапазона версий следует избегать экранирования дефиса, например: path =~ "[0-9a-zA-Z\-_]".

Примеры использования:

  1. Выбрать контент формата raw: format == "raw".
  2. Выбрать все компоненты, расположенные по указанному пути: path =^ "/org/apache/maven/".
  3. Выбрать контент maven2 по пути, начинающемуся с /org/: format == "maven2" and path =^ "/org".

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

Примеры контент-селекторов без регулярных выражений (для HA сборок)

Валидные операторы:

Оператор Описание Пример
== Полное соответствие тексту format == "raw"
!= Не равно path != "test.jar"
=^ Начинается с текста path =^ "/org/apache/commons"
аnd Соответствие всем выражениям format == "maven2" and path =^ "/org/apache/commons"
or Соответствие одному из выражений format == "maven2" or format == "npm"
(expr) Группировка нескольких выражений format == "npm" or (format == "maven2" and path =^ "/org/apache/commons")

Операторы, которых следует избегать:

Оператор Описание Пример
=~ Соответствует шаблону регулярного выражения Java path =~ "^/org/apache/commons/."*
\- Экранирование дефисов в диапазонах версий path =~ "[0-9a-zA-Z-_]"

Примеры использования:

  1. Выбрать контент формата raw: format == "raw".
  2. Выбрать все содержимое maven2, путь к которому начинается с org.apa-che.commons:
    format == "maven2" and path =^ "/org/apache/commons/".

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