Css3 generator: 16 генераторов CSS-кода для веб-разработчиков
10.04.2021 Разное
16 генераторов CSS-кода для веб-разработчиков
Генератор CSS-кода — весьма удобный инструмент, который может сэкономить веб-разработчику немало времени, а также уберечь от лишних ошибок. Кроме того, ваш код станет более читабельным. В этой статье мы подобрали ряд полезных на наш взгляд генераторов CSS-кода.
CSS Click Chart
C помощью этого инструмента можно посмотреть, как реализуется то или иное действие на CSS. Также отображается поддержка браузерами.
Web Code Tools
Продвинутый инструмент работы с разными элементами CSS. Кроме того, можно генерировать код на HTML, JSON и ещё делать много разных интересностей.
CSS CheatSheet
Динамическая шпаргалка для CSS, но также присутствует генератор кода и текстовый редактор.
Spritebox
Создаём CSS-спрайты — с их помощью мелкие картинки объединяются в один файл и выводятся не с помощью тега img
, а с помощью CSS.
Pixel Map Generator
Генератор карт, вообще, карта только одна, но доступна в разных проекциях, также можно выделять страны и регионы разных государств.
Clean CSS
Инструмент, позволяющий взаимодействовать с CSS на разных уровнях. Здесь вы можете форматировать, минимизировать или украсить свой код.
CSS Animate
Ну что, парни, анимация? Применяйте и играйте с переходами в CSS.
UI Gradients
Один из самых классных градиентных инструментов с уже созданными шаблонами (сами им пользуемся иногда).
WAIT! Animate
Создание кастомных повторяющихся пауз между CSS-анимациями никогда не было простой задачей. Но при помощи этого приложения сложность процедуры сводится к нулю.
CSS3 Generator
CSS3 Generator — классический пример фрагментов кода, полезных в ежедневных ситуациях. Он предоставляет более 10 различных генераторов, охватывающих такие свойства, как box-shadow, flexbox и т.д.
CSS Type Set
Хотели посмотреть, как выглядят различные шрифты? Зайдите на CSS Type Set. Всё, что нужно, — ввести текст и выбрать параметры шрифта.
Enjoy CSS
Веб-приложение Enjoy CSS объединяет в себе генератор кода и визуальный редактор. Вы можете создавать различные элементы страницы (кнопки, поля ввода и т.п.), применяя к ним настраиваемые свойства CSS3.Flexy Boxes
Если вы никак не можете разобраться с flexbox, то вам стоит попробовать Flexy Boxes. В этом приложении можно сравнить различные версии flexbox и интерпретации синтаксиса.
CSSmatic
CSSmatic — ещё один генератор, который работает с box-shadow
, border-radius
, текстурами шума и градиентами. Он не настолько функционален, как CSS3 Generator, но каждый инструмент выведен на отдельную страницу, что позволяет сохранить её и не отвлекаться на остальные.
Mobirise
Полноценный инструмент генерации CSS и HTML-кода. Даже мобильные интерфейсы можно нагенерировать, хотя чем-то похоже на Readymag, Tilda и Wix, но только бесплатно и без блэкджека с SEO.
Stylie
Ещё немного анимации на CSS с возможностью экспорта и детальных настроек.
Заключение
CSS в последнее время стал намного мощнее и удобнее в использовании. Он во многом может заменить даже JavaScript. Рекомендуем ознакомиться с другими материалами по CSS и веб-разработке, если хотите научиться писать код без генераторов или освоить что-то новое:
- 8 хитростей, реализуемых только с помощью CSS;
- Введение в анимацию на CSS;
- Создание изображений на чистом CSS [часть 1, часть 2, часть 3];
- Объяснение псевдоклассов в CSS.
Источник: 360 Digital Paths
Какие CSS-генераторы можно использовать в 2021 году / Блог компании VDSina.ru / Хабр
CSS генераторы экономят время и сокращают количество ошибок в коде. Они позволяют автоматизировать многие задачи, которые опытным верстальщикам или фронтендерам уже кажутся скучными. В то же время, они могут облегчить работу над задачами, которые сложны для начинающих специалистов.
Схема работы таких генераторов проста: достаточно ввести через простой визуальный интерфейс нужные вам параметры и на выходе получить готовые CSS-стили. Далее полученный код нужно скопировать и добавить в свой проект.
Известный full-stack разработчик Марко Денич предлагает свою подборку лучших CSS-генераторов. Возможно, о каких-то из них вы не знали, и, познакомившись с ними сейчас, начнёте использовать в работе.
1. Neumorphism/Soft UI generator
Neumorphism позволяет создавать градиенты и тени. Кроме того, с ним легко подобрать и сгенерировать цвета для вашего сайта.
Подробнее
2. Smooth Shadow generator
Это генератор теней, позволяющий через удобный UI менять параметры свойства box-shadow. В CSS3 свойство box-shadow отвечает за эффекты тени, которые возможны для большинства элементов веб-страницы. Инструмент, в частности, позволяет настраивать такие параметры, как вертикальное смещение, размытие, растяжение и прозрачность. Подробнее
3. Fancy Border Radius Generator
Генератор позволяет рисовать сложные фигуры с закруглёнными углами. На выходе мы получаем набор значений свойства border-radius.
Подробнее
4. Easing Gradients
Позволяет создавать нелинейные градиенты и использовать модифицированные цветовые пространства.
Подробнее
5. Data Viz Color Palette Generator
Особенно хочется отметить, что с его помощью можно создавать гармоничные цветовые палитры с произвольным количеством базовых цветов. Инструмент имеет удобный визуальный интерфейс с множеством настроек.
Подробнее
6. CSS Grid Generator
Визуальный интерфейс очень простой, поэтому быстро накидать сетку не составит труда. Помимо таких базовых функций, как ввод количества строк, столбцов и отступов, есть возможность перетаскивать в ячейки div-блоки.
7. CSS Accordion Slider Generator
Бесплатный онлайн-сервис, позволяющий настроить через UI и сгенерировать горизонтальные и вертикальные аккордеон-слайдеры на HTML и CSS, без использования javaScript.
Подробнее
8. CSS clip-path maker
Простой онлайн-инструмент для обрезки картинок по заданному трафарету.
Подробнее
9. Get Waves
Генератор создает svg-вектор с заливкой волнообразной формы. Форму волны можно выбирать из трёх вариантов — синусоидальная, прямоугольная и пилообразная.
Также можно указывать размер волны и направление. В инструмент встроен рандомайзер, который выдаёт волны со случайными размерами, но с сохранением выбранной формы.
Подробнее
Согласны ли вы с выбором автора? Какие CSS-генераторы нравятся вам?
На правах рекламы
Эпичные серверы для размещения сайтов и не только! Быстрые VDS на базе новейших процессоров AMD EPYC и NVMe хранилища для размещения проектов любой сложности, от корпоративных сетей и игровых проектов до лендингов и VPN.
CSS3 Generator — расширение Chrome для веб-разработчиков и дизайнеров – Dobrovoimaster
У каждого разработчика или веб-дизайнера есть свой набор инструментов для работы, десктопные и онлайновые приложения, дополнения и расширения к браузерам. Прогресс не стоит на месте и время от времени появляются новые, многофункциональные или узкопрофильные приложения и расширения для современных браузеров. Google Chrom и Firefox являются лидерами по наличию написанных для них разнообразных дополнений, расширяющих их функционал.
Стараюсь держать руку на пульсе и отслеживаю появление новых, а главное полезных расширений, которые могут существенно облегчить труд веб-разработчиков и дизайнеров.
Сегодня расскажу об одном, ну очень уж интересном расширении Chrome, которое пригодится многим разработчикам, ратующим за то, чтобы интернет стал ещё более понятным, удобным и красивым. Расширение для работы с CSS3, позволяющие, как говорится: «не отходя от кассы», экспериментировать, редактировать и вносить изменения в свойства CSS3, и при этом видеть все изменения в живую.
CSS3 Generator
Очень интересное и полезное расширение для браузера Google Chrome, я бы даже сказал — полезнейшее, потому как, это расширение, являет собой, немного-немало, полноценный генератор свойств CSS3. С помощью CSS3 Generator вы с лёгкость сможете сформировать стили для любых элементов сайта.
Для редактирования и генерации кода CSS, доступны различные свойства из обоймы CSS3. На вкладке «Text Shadow», открывается визуальный редактор свойства text-shadow
, с помощью которого вы сможете добавить тень к тексту, а также, лёгким движением руки, изменять её параметры: цвет тени, радиус размытия и смещение относительно надписи.
Расширение снабжено отличным инструментом, вкладка «Hex/RGBA» открывает лёгкий, интуитивно понятный конвертор значений цвета. При необходимости, быстро, очень быстро, вы сможете перевести значения цвета HEX в RGBA и обратно, и одновременно установить степень прозрачности в RGBA.
Для формирования стилей блоков, на вкладке «Box Model», доступны обработке свойство трансформации transform:
, скругление углов border-radius:
и конечно же, популярное свойство box-shadow:
, позволяющее добавлять тени блочным элементам
Разработчики расширения не обошли стороной и такое интересное свойство как column-count
, которое определяет количество колонок в тексте. То есть открыв вкладку «Columns», вы сможете разбить текст на колонки(доступно до 4), а также определить расстояние между колонками с помощью свойства column-gap
и выбрать стиль разделителя в многоколоночном тексте используя свойство column-rule
.
Гибкие настройки функций градиента открываются на вкладке «Gradients». Для обработки и кодирования доступны свойства линейного и радиального градиента, а также формирование градиентной заливки в полоску.
И это ещё не всё))). Если вам вдруг, понадобилось какому-нибудь блочному элементу пририсовать уголок(инфо-блок, подсказки и т.д.) и попутно оформить внешний вид самого блока, с помощью расширения «CSS3 Generator», вы сможете легко это сделать, достаточно открыть вкладку «Arrows» и поиграть с параметрами.
Дальше — больше))). Чтобы быстро установить эффекты перехода из одного состояния элементов в другое при наведении на них, достаточно воспользоваться ещё одним инструментом из арсенала этого расширения, на вкладке «Transitions», обрабатывая значения свойства transition:, вы легко сможете это сделать. На выбор доступны для формирования эффекты смены позиционирования элементов, смена цветовой палитры, трансформация краёв, а также выбор эффекта анимации.
Для обработки изображений в расширении «CSS3 Generator», доступен визуальный генератор фильтров, с помощью которого, вы сможете реализовать различные виды наложения на картинки, добавить оттенки серого, сепия, расплывчивость, яркость, угол поворота оттенка, и наконец, установка тени картинкам, с помощью фильтра
drop-shadow
.Вот такое интересное дополнение, для браузера Google Chrome, представлено в магазине расширений, соответственно от туда вы его и сможете свободно скачать:
Попробуйте расширение «CSS3 Generator» в деле и я уверен, многим оно понравится, во всяком случае, такое дополнение, уж точно не будет лишним в обойме ваших инструментов.
С Уважением, Андрей .
Буду всем признателен, если поддержите проект — добавив блог в исключения AdBlock и поделитесь ссылкой на запись в своих соц-сетях:
10 лучших генераторов кода CSS3
У меня розовые воспоминания о CSS2.1. Закругленные углы, возможно, вызвали часы горя в Photoshopping, но это было просто. Большинство разработчиков могут вспомнить несколько десятков свойств, не обращаясь к справочникам каждые две минуты.
CSS3 меняет все. Имеется 116 новых свойств * с префиксами нескольких поставщиков и различными синтаксисами. Никто не может ожидать, что вы запомните все. К счастью, есть ряд бесплатных онлайн-инструментов, которые помогут вам создать современный код CSS3 для вырезания и вставки в ваши таблицы стилей…
CSS 3.0 Maker — потрясающий инструмент. Вы можете определить радиусы блока, градиенты, тени текста, тени блока, преобразования, переходы и повороты, отрегулировав несколько ползунков. Область предварительного просмотра показывает результат и указывает, какие браузеры для настольных компьютеров и мобильных устройств поддерживают эти свойства.
Код CSS можно скопировать из поля Codeview и загрузить в файл HTML, который демонстрирует эффект.
Пользователи Photoshop будут любить LayerStyles. Эффекты CSS3 определяются с помощью диалогового окна стиля слоя, которое будет немедленно знакомо всем, кто использует продукты Adobe. Это легко, логично и приятно использовать.
Код можно скопировать из динамически обновляемого средства просмотра «Код CSS» в левом нижнем углу экрана.
CSS3 Generator использует подобный мастеру подход для определения стилей. Выберите один из множества эффектов, включая радиус границы, тень текста, тень блока, несколько столбцов, преобразования и переходы. Затем заполните несколько полей, чтобы применить их к элементу предварительного просмотра.
Генератор CSS3 показывает, какие браузеры и версии поддерживают этот эффект, и, где это возможно, предоставляет специфический для IE код фильтра.
Песочница была разработана гуру CSS3 и участником SitePoint Джоном Аллсоппом. Градиенты, текстовые эффекты, свойства рамки и преобразования можно легко настроить с помощью ползунков. Полученный код и окно предварительного просмотра динамически обновляются соответственно.
Инструмент может быть не таким красивым, как некоторые из его конкурентов, но он быстрый и функциональный. Рекомендуемые.
CSS3 Playground была создана независимым разработчиком Майком Плате . Помимо поддержки ряда свойств CSS3, это единственный инструмент, который позволяет просматривать эффекты более чем на одном элементе и изменять содержимое блоков. Удивительный.
Если вы хотите что-то простое, быстрое и легкое, этот генератор CSS3 может быть инструментом для вас. Это одна из самых красивых утилит, поддерживающая радиус границы, тень от окна, прозрачность и простые градиенты фона. Вы можете также запросить специфичные для IE фильтры в результирующем коде.
CSS3-эффекты могут создавать великолепные кнопки без изображений. Генератор кнопок CSS3 позволяет настраивать шрифт, отступы, границу, градиент фона, внутреннюю тень, тени и тени текста, используя элементы управления вверх / вниз, которые могут быть проще и логичнее, чем ползунки.
Помимо предоставления кросс-браузерного кода CSS3, инструмент позволяет хранить стили и делиться ими с другими. Вы можете просматривать показанные кнопки и настраивать свойства для своего собственного использования.
Button Maker был разработан Крисом Койером из CSS Tricks . Хотя это было задумано как демонстрация технологии, это не помешало быть полезным для разработчиков CSS3!
Button Maker не поддерживает некоторые из наиболее экстремальных свойств CSS3, но это один из немногих инструментов, демонстрирующих эффекты наведения.
Если нажать, даже я могу вспомнить свойство text-shadow. CSS3 градиенты? Без шансов. Градиенты могут быть мощными, но они запутаны, и до недавнего времени браузеры webkit использовали другой синтаксис. Если вы не создаете очень простой фон, генератор градиента необходим.
Ultimate CSS Gradient Generator, ну, в общем, окончательный генератор градиента. Он использует интерфейс, аналогичный Photoshop, и создает кросс-браузерный код, который включает в себя фильтры IE. Наконец, градиенты могут быть сохранены и доступны по уникальной ссылке. Вы определенно захотите добавить в закладки этот инструмент.
Если Ultimate CSS Gradient Generator слишком много усилий, вы можете предпочесть эту альтернативу. Инструмент позволяет создавать линейные градиенты, добавляя цвета в любое количество точек остановки. Создается старый синтаксис webkit, а также код Mozilla, который должен быть совместим с другими браузерами.
Я пропустил ваш любимый генератор кода CSS3?
* Это количество новых свойств полностью составлено. Я понятия не имею, правильно ли это, но звучало разумно. Я сомневаюсь, что кто-нибудь опровергнет это … разве есть какие-нибудь педанты CSS, чтобы сэкономить несколько часов?
Если вам понравилось читать этот пост, вы полюбите Learnable ; место, чтобы узнать новые навыки и приемы у мастеров. Участники получают мгновенный доступ ко всем электронным книгам и интерактивным онлайн-курсам SitePoint, таким как Learn CSS3 .
И если вам понравилось читать этот пост, вы полюбите Learnable ; место, чтобы узнать новые навыки и приемы у мастеров. Участники получают мгновенный доступ ко всем электронным книгам и интерактивным онлайн-курсам SitePoint, таким как Learn CSS3 .
Комментарии к этой статье закрыты. У вас есть вопрос о CSS3? Почему бы не спросить об этом на наших форумах ?
CSS animation generator: 15 лучших инструментов CSS3-анимации
Создание сложной анимации иногда может превратиться в трудоемкий процесс, и здесь пригодятся библиотеки и генераторы анимации. В этой статье приводится перечень лучших инструментов для создания анимации CSS3 (CSS animation generator).
Magic CSS3 Animations — это пакет CSS3-анимаций со спецэффектами, которые вы можете свободно использовать для любых веб-проектов. Просто включите стиль CSS magic.css или минимизированную версию magic.min.css.
CSS3 Animation Cheat Sheet представляет собой набор предустановленной plug-and-play анимации для веб-проектов. Для его использования нужно добавить стили на сайт и применить подготовленные классы CSS к элементам, которые вы хотите анимировать. CSS3 Animation Cheat Sheet использует правило @keyframes и работает во всех последних версиях браузеров (в том числе в IE 10).
CSS3 Keyframes Animation Generator представляет собой онлайн-инструмент, который позволяет создавать анимацию с помощью правила @keyframes.
Включает в себя многие эффекты CSS. Эффекты рассортированы по нескольким категориям (магия, перспектива, вращение, мерцание, статика, слайды, CSS3 анимация при наведении), и все они довольно красивые. Каждый из них имеет свои собственные классы. Самый простой способ применить их — добавить эти классы к целевым элементам через JavaScript.
Animate.css предоставляет набор кросс-браузерных эффектов CSS3-анимации. Эффекты могут использоваться для привлечения внимания, создания анимации на основе появления и исчезновения элементов.
Это JavaScript-библиотека для создания динамической анимации. Просто добавьте компонент и выберите пресет. После этого вы можете получить короткий URL-адрес или экспортировать анимацию CSS3 из примеров.
Hover.CSS — полезная коллекция эффектов на CSS3, которые могут применяться для призыва к действию, кнопкам, логотипам, специальным изображениям и так далее. Для использования коллекции достаточно скопировать и вставить код эффекта в CSS или разместить ссылку на его файл стилей.
AniJS — это декларативная библиотека для создания CSS-анимации, которая позволяет ускорить и обогатить разработку. Она полностью документирована и проста в использовании.
ProgressJs — это JavaScript и CSS3 библиотека, которая помогает разработчикам создавать и управлять индикаторами загрузки (прогресс-барами). Вы можете создать собственный шаблон для прогресс-бара или легко настроить готовый.
Keyframer — это удобный инструмент, который поможет вам создать CSS3 анимацию. Кeyframer довольно прост в использовании. Чтобы добавить ключевой кадр, вам нужно только кликнуть по шкале времени, а затем нажать на круглую кнопку, чтобы применить CSS-стили для анимации. Или кнопку с крестиком, чтобы удалить текущий кадр.
Инструмент для простого создания CSS3-анимации. Нужно настроить анимацию с помощью графика, изменить ее, получить сгенерированный CSS-код и все готово!
CSSketch — это Sketch 3 плагин, который позволяет быстро изменять дизайн, вкладывая таблицы стилей. Он поддерживает язык стилей {less}. Благодаря этому вы сможете использовать в таблице стилей функции и переменные. CSSketch — это программное обеспечение с полностью открытым исходным кодом, так что вы можете внести свой вклад в его развитие.
JQuery-плагин для создания анимированной подсветки и CSS3 анимации фона. Вы можете настроить анимацию (скорость и размер), эффект (цвет, прозрачность и размытие) и задать конкретную продолжительность или отключить таймер полностью.
Это средство для тестирования отказоустойчивости (постепенной деградации) кода CSS3. С его помощью вы сможете увидеть, как веб-страница будет отображаться в IE 6-8 версии.
GFX — это библиотека 3D CSS3 анимации, которая расширяет JQuery несколькими полезными функциями для программного создания CSS3 переходов, которые управляются с помощью метода setTimeout.
Данная публикация является переводом статьи «15 Best CSS3 Animation Tools for Developers» , подготовленная редакцией проекта.
Создание анимации с помощью CSS3 генератора
Время чтения: < 1 мин.На сайте находится множество уроков по созданию анимации на CSS3, но создать новичку такую анимацию действительно сложно. Но из этой ситуации есть отличный выход — это использование CSS3 генератора для автоматического создания анимации. Он будет крайне полезен при создании различных эффектов на сайте. Также я записал подробный видеоурок по работе с данным генератором и показал всё на реальном примере.
Кто хочет знать больше о том как создавать CSS3 анимацию, а не только иметь то что дает генератор, тогда Вам рекомендую следующие статьи на эту тему:
Плюсы использования CSS3 генератора
- Простой интерфейс;
- Быстрое создание анимации;
- Нет необходимости знать каждую строчку кода.
Практика
Какую анимацию мы создадим в сегодняшнем уроке с помощью CSS3 генератора:
- Зацикленную анимацию, которая будет постоянно повторяться.
- Анимация, которая выполниться лишь один раз.
- Анимацию при наведении.
Итак, вот ссылка на сам сервис: Bouncejs.com
Весь процесс создания анимации и процесс работы с CSS3 генератором Вы можете увидеть на видео ниже:
Посмотреть результатСкачать
Вывод
CSS3 генератор позволяет за считанные секунды создать на Вашем сайты красивые эффекты при наведении, при клике или просто постоянные анимированные элементы. Только не переборщите и не раздражайте постоянным мельканием Вашего посетителя 🙂 .
Успехов!
С Уважением, Юрий Немец
CSS3 генераторы. Самые актуальные / Полезное в сети / Постовой
Генераторы CSS3 стилей — давно заезженная тема. В сети существует неимоверное количество подборок как хороших, так и не очень. Если подборок много, то самих генераторов в разы больше. Сегодня я решил сделать подборку именно тех генераторов css3 стиля, которые мы сами регулярно используем, которые проверены опытом, и о них есть что сказать.
На сегодняшний день сверстать сайт возможно вообще без изображений. Даже иконки возможно сделать иконочным шрифтом. Если в Css 2.1 мы использовали нарезанные картинки, ранее прорисованные в фотошопе, то сейчас все эффекты и стили для блоков, кнопки и т. д. делаются на css3. Это значительно облегчает работу для верстальщика.
Буквально пол года назад значительная часть верстальщиков отказывались переходить на обновленный стиль верстки, так как в использовании css3 стилей есть свои минусы. Самый главный минус — большинство эффектов не поддерживают старые браузеры. Прошло время… Людей с древними IE стало значительно меньше. Это дало возможность использовать стили css3 в полную силу.
С помощью стилей Css3 можно сделать многое: тени, кнопки, округлости, градиенты и даже анимировать элементы. Наш сайт «Постовой» практически «сплошной css». 🙂
Итак. К вашему вниманию лучшие и самые актуальные на сегодняшний день генераторы css3 стилей онлайн. Они созданы для того, чтоб облегчить работу над сайтом и не набирать код вручную.
Смотрите также:
10 инструментов для оптимизации CSS
Ultimate CSS Gradient Generator
Ultimate CSS Gradient Generator — это лучший, на мой взгляд, генератор css3 градиентов. С его помощью можно сделать такой же стиль, как и в PSD файле. Внешне он выполнен по аналогии с фотошоповским инструментом градиентов. Есть возможность создавать такие градиенты, как плавный переход с цветного в прозрачный, косые градиенты и т. д. После генерации кода, в него вставляется отдельный хак для IE9, что очень полезно в работе.
Long Shadows (Длинные тени)
Длинные тени — это последний тренд в веб-дизайне. Этот стиль на сегодняшний день стремительно набирает популярность. Некий Juani Ruiz Echazú решил написать скрипт, который бы генерировал css3 стиль длинных теней, за что ему огромное спасибо.
Итак. К вашему вниманию css3 генератор длинных теней. Он имеет возможность создавать стиль как для текста, так и для изображения. С помощью ползунков можно подстроить длину и рассеивания тени по своему усмотрению, а так же настроить цвета.
Hands On: Windows 8 HTML5 Platform
Чрезвычайно мощный набор инструментов для современной верстки от Microsoft. Генераторы позволяют создавать css3 стили, которые заточены под Internet Explorer 10. Пройдя по ссылке, вы получите мощный инструмент для работы с css3 стилями.
css3maker
Универсальный генератор css3 стилей. Позволяет выжать из css3 почти все, на что он способен. Инструмент прост в использовании и с ним ваша работа пойдет значительно быстрее.
css3button
Довольно мощный генератор css3 кнопок. Имеет приличный арсенал тонких настоек для кнопки. С этим генератором каждый верстальщик сможет добиться того, что задумал дизайнер.
Ceaser
Ceaser — это генератор css3 стилей для создания анимации движения. Очень полезный инструмент, который придаст динамики вашему сайту.
csswarp
Интересный генератор css3 стилей, с помощью которого можно создавать текстовые эффекты. Он позволяет крутить, наклонять, закручивать текст как вам угодно. Функций в нем маловато, но сам факт, что он есть, уже радует.
css3.me
Это один из наиболее популярных css3 генераторов стилей. С его помощью можно создавать наиболее простые, но очень распостраненные эффекты. Его фишка — простота в использовании.
Livetools
И напоследок набор css3 / html генераторов. Он имеет довольно мощный генератор css3 кнопок и еще три инструмента, которые придутся по душе ленивым верстальщикам — это генератор форм, генератор ленточек и генератор иконок. Последний довольно полезен.
Онлайн-тестер Java SimpleDateFormat
Онлайн-тестер Java SimpleDateFormatОнлайн-тестер Java SimpleDateFormat
(Дата / время сервера: 2021-05-10T02: 32: 41-05)
Справка
(с: http://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html)Примеры:
"гггг.MM.dd G 'at' HH: mm: ss z "
2001.07.04 AD в 12:08:56 PDT
"EEE, MMM d, '' yy"
ср, 4 июля '01
"h: мм a"
12:08
"чч, часы а, ззз"
12:00 по тихоокеанскому летнему времени
"K: мм a, z"
0:08 вечера, PDT
"ггггг.MMMMM.dd GGG чч: мм ааа "
02001. июль, 04 апреля 12:08
"EEE, d MMM yyyy HH: mm: ss Z"
ср, 4 июл 2001 12:08:56 -0700
"ггММддЧЧммссZ"
010704120856-0700
"гггг-ММ-дд'Т'ЧЧ: мм: сс. СССЗ"
2001-07-04T12: 08: 56.235-0700
"гггг-ММ-дд'Т'ЧЧ: мм: сс.SSSXXX"
2001-07-04T12: 08: 56.235-07: 00
«ГГГГ-'W'ww-u»
2001-W27-3
протестировано на:
Классы символов | |
---|---|
.abc $ | начало / конец строки |
\ б | граница слова |
Экранированные символы | |
\. \ * \\ | экранированные специальные символы |
\ т \ п \ р | табуляция, перевод строки, возврат каретки |
\ u00A9 | Кодсброшен © |
Группы и поиск | |
(abc) | группа захвата |
\ 1 | обратная ссылка на группу №1 |
(?: Abc) | группа без захвата |
(? = Abc) | положительный взгляд вперед |
(?! Abc) | отрицательный прогноз |
Квантификаторы и чередование | |
а * а + а? | 0 или более, 1 или более, 0 или 1 |
а {5} а {2,} | ровно пять, два или больше |
а {1,3} | между одним и тремя |
а +? а {2,}? | совпадать как можно меньше |
ab | cd | соответствует ab или cd |
Генераторы ключей Apache Hudi — Apache Hudi
Каждая запись в Hudi уникально идентифицируется первичным ключом, который представляет собой пару ключа записи и пути раздела, где запись принадлежит. Используя первичные ключи, Hudi может наложить а) ограничение целостности уникальности уровня раздела б) включить быстрое обновление и удаление записей. Следует с умом выбирать схему разбиения, так как это может быть определяющий фактор для вашего приема и задержки запроса.
В целом Hudi поддерживает как секционированные, так и глобальные индексы. Для набора данных с секционированным индексом (что наиболее обычно используется), каждая запись однозначно идентифицируется парой ключа записи и пути раздела. Но для набора данных с глобальный индекс, каждая запись однозначно идентифицируется только ключом записи.Не будет дублирующихся ключей записи в перегородки.
Генераторы ключей
Hudi предоставляет несколько генераторов ключей из коробки, которые пользователи могут использовать в зависимости от их потребностей, имея при этом подключаемый реализация для пользователей, чтобы реализовать и использовать свой собственный KeyGenerator. В этом блоге рассматриваются все типы ключей генераторы, которые легко доступны для использования.
Здесь — это интерфейс для KeyGenerator в Hudi для справки.
Прежде чем углубляться в различные типы генераторов ключей, давайте рассмотрим некоторые общие конфигурации, которые необходимо настроить для генераторы ключей.
Конфиг | Значение / цель |
---|---|
толстовка.datasource.write.recordkey.field | Относится к ключевому полю записи. Это обязательное поле. |
hoodie.datasource.write.partitionpath.field | Относится к полю пути раздела. Это обязательное поле. |
hoodie.datasource.write.keygenerator.class | Относится к классу генератора ключей (включая полный путь).Может ссылаться на любой из доступных или определенный пользователем. Это обязательное поле. |
hoodie.datasource.write.partitionpath.urlencode | Если установлено значение true, путь к разделу будет закодирован по URL-адресу. Значение по умолчанию — false. |
hoodie.datasource.write.hive_style_partitioning | Если задано значение true, используется разделение в стиле куста. Имя поля раздела будет добавлено к значению. Формат: «=».Значение по умолчанию — false. |
Есть еще несколько конфигураций, если вы ищете TimestampBasedKeyGenerator. Я расскажу о них в соответствующем разделе.
Давайте рассмотрим различные генераторы ключей, которые можно использовать с Hudi.
SimpleKeyGenerator
Ключ записи относится к одному полю (столбцу в фрейме данных) по имени, а путь раздела относится к одному полю (один столбец в фрейме данных) по имени. Это один из наиболее часто используемых.Значения интерпретируются как есть из фрейма данных и преобразуются в строку.
КомплексKeyGenerator
Пути ключа записи и раздела содержат одно или несколько полей по имени (комбинация нескольких полей). Поля
Ожидается, что значение конфигурации будет разделено запятыми. Например, «Hoodie.datasource.write.recordkey.field»: «col1, col4»
GlobalDeleteKeyGenerator
Для удаления глобального индекса не требуется значение раздела. Таким образом, этот генератор ключей избегает использования значения раздела для создания HoodieKey.
TimestampBasedKeyGenerator
Этот генератор ключей использует временные метки для поля раздела. Значения поля интерпретируются как отметки времени. а не просто преобразованы в строку при генерации значения пути раздела для записей. Ключ записи такой же, как и раньше, где он выбирается имя поля. Ожидается, что пользователи установят еще несколько конфигураций для использования этого KeyGenerator.
Настраиваемые конфигурации:
Конфиг | Значение / цель |
---|---|
толстовка с капюшоном.deltastreamer.keygen.timebased.timestamp. type | Один из поддерживаемых типов меток времени (UNIX_TIMESTAMP, DATE_STRING, MIXED, EPOCHMILLISECONDS, SCALAR) |
толстовка.deltastreamer.keygen.timebased.output.dateformat | Формат даты вывода |
толстовка.deltastreamer.keygen.timebased.timezone | Часовой пояс формата данных |
oodie.deltastreamer.keygen.timebased.input.dateformat | Формат даты ввода |
Давайте рассмотрим некоторые примеры значений для TimestampBasedKeyGenerator.
Отметка времени: GMT
Поле конфигурации | Значение |
---|---|
толстовка.deltastreamer.keygen.timebased.timestamp.type | «ЭПОХМИЛЛИСЕСКУНДЫ» |
толстовка с капюшоном. Deltastreamer.keygen. timebased.output.dateformat | «гггг-ММ-дд чч» |
толстовка.deltastreamer.keygen.timebased.timezone | «GMT + 8: 00» |
Значение поля ввода: «15782830L»
Путь к разделу, сгенерированный генератором ключей: «2020-01-06 12»
Если для некоторых строк значение поля ввода равно нулю.
Путь раздела, созданный генератором ключей: «1970-01-01 08»
Отметка времени: DATE_STRING
Поле конфигурации | Значение |
---|---|
толстовка с капюшоном.deltastreamer.keygen.timebased.timestamp.type | «DATE_STRING» |
толстовка.deltastreamer.keygen.timebased.output.dateformat | «гггг-ММ-дд чч» |
толстовка.deltastreamer.keygen.timebased.timezone | «GMT + 8: 00» |
толстовка. deltastreamer.keygen.timebased.input.dateformat | «гггг-ММ-дд чч: мм: сс» |
Значение поля ввода: «2020-01-06 12:12:12»
Путь к разделу, сгенерированный из генератора ключей: «2020-01-06 12»
Если для некоторых строк значение поля ввода равно нулю.
Путь раздела, созданный генератором ключей: «1970-01-01 12:00:00»
Скалярные примеры
Поле конфигурации | Значение |
---|---|
толстовка.deltastreamer.keygen.timebased.timestamp.type | «СКАЛЯР» |
толстовка.deltastreamer.keygen.timebased.output.dateformat | «гггг-ММ-дд чч» |
худи.deltastreamer.keygen.timebased.timezone | «GMT» |
толстовка.deltastreamer.keygen.timebased.timestamp.scalar.time.unit | «дней» |
Значение поля ввода: «20000L»
Путь раздела, созданный генератором ключей: «2024-10-04 12»
Если значение поля ввода пустое.
Путь раздела, созданный генератором ключей: «1970-01-02 12»
ISO8601WithMsZ с одним форматом ввода
Поле конфигурации | Значение |
---|---|
толстовка с капюшоном.deltastreamer.keygen.timebased.timestamp.type | «DATE_STRING» |
толстовка.deltastreamer.keygen.timebased.input.dateformat | «гггг-ММ-дд’T’ЧЧ: мм: сс.СССЗ» |
толстовка.deltastreamer.keygen.timebased.input.dateformat.list.delimiter.regex | ”” |
толстовка.deltastreamer.keygen.timebased.input.timezone | ”” |
худи.deltastreamer.keygen.timebased.output.dateformat | «ггггММддЧЧ» |
толстовка.deltastreamer.keygen.timebased.output.timezone | «GMT» |
Значение поля ввода: «2020-04-01T13: 01: 33. 428Z»
Путь раздела, созданный генератором ключей: «2020040113»
ISO8601WithMsZ с несколькими входными форматами
Поле конфигурации | Значение |
---|---|
толстовка с капюшоном.deltastreamer.keygen.timebased.timestamp.type | «DATE_STRING» |
толстовка.deltastreamer.keygen.timebased.input.dateformat | «гггг-ММ-дд’T’ЧЧ: мм: ссЗ, гггг-ММ-дд’T’ЧЧ: мм: сс.СССЗ» |
толстовка.deltastreamer.keygen.timebased.input.dateformat.list.delimiter.regex | ”” |
толстовка.deltastreamer.keygen.timebased.input.timezone | ”” |
худи.deltastreamer.keygen.timebased.output.dateformat | «ггггММддЧЧ» |
толстовка.deltastreamer.keygen.timebased. output.timezone | «UTC» |
Значение поля ввода: «2020-04-01T13: 01: 33.428Z»
Путь раздела, созданный генератором ключей: «2020040113»
ISO8601 Номиналы со смещением с использованием нескольких входных форматов
Поле конфигурации | Значение |
---|---|
толстовка с капюшоном.deltastreamer.keygen.timebased.timestamp.type | «DATE_STRING» |
толстовка.deltastreamer.keygen.timebased.input.dateformat | «гггг-ММ-дд’T’ЧЧ: мм: ссЗ, гггг-ММ-дд’T’ЧЧ: мм: сс.СССЗ» |
толстовка.deltastreamer.keygen.timebased.input.dateformat.list.delimiter.regex | ”” |
толстовка.deltastreamer.keygen.timebased.input.timezone | ”” |
худи.deltastreamer. keygen.timebased.output.dateformat | «ггггММддЧЧ» |
толстовка.deltastreamer.keygen.timebased.output.timezone | «UTC» |
Значение поля ввода: «2020-04-01T13: 01: 33- 05:00 »
Путь раздела, созданный генератором ключей: «2020040118»
Введите короткую строку даты и ожидайте дату в формате даты
Поле конфигурации | Значение |
---|---|
толстовка с капюшоном.deltastreamer.keygen.timebased.timestamp.type | «DATE_STRING» |
толстовка.deltastreamer.keygen.timebased.input.dateformat | «гггг-ММ-дд’T’ЧЧ: мм: ссЗ, гггг-ММ-дд’T’ЧЧ: мм: сс.ССЗ, ггггММдд» |
толстовка.deltastreamer.keygen.timebased.input.dateformat.list.delimiter.regex | ”” |
толстовка. deltastreamer.keygen.timebased.input.timezone | «UTC» |
худи.deltastreamer.keygen.timebased.output.dateformat | «ММ / дд / гггг» |
толстовка.deltastreamer.keygen.timebased.output.timezone | «UTC» |
Значение поля ввода: «220200401»
Путь раздела, созданный генератором ключей: «01.04.2020»
CustomKeyGenerator
Это общая реализация KeyGenerator, в которой пользователи могут использовать преимущества SimpleKeyGenerator,
ComplexKeyGenerator и TimestampBasedKeyGenerator одновременно.Можно настроить ключ записи и раздел
пути как одно поле или комбинация полей. Этот keyGenerator особенно полезен, если вы хотите определить
сложные пути разделов, включающие обычные поля и поля на основе меток времени. Ожидается значение свойства "hoodie.datasource.write.partitionpath.field"
в определенном формате. Формат должен быть следующим: «field1: PartitionKeyType1, field2: PartitionKeyType2…»
Полный путь к разделу создается как <значение для базы field1 PartitionKeyType1> / <значение для базы field2 PartitionKeyType2>
и так далее.Каждый тип ключа раздела может быть SIMPLE или TIMESTAMP.
Пример значения конфигурации: «field_3: simple, field_5: timestamp»
Значение конфигурации RecordKey — это либо одно поле в случае SimpleKeyGenerator, либо имена полей, разделенные запятыми, если речь идет о ComplexKeyGenerator. Например: «col1» или «col3, col4».
NonPartitionedKeyGenerator
Если ваш набор данных hudi не разбит на разделы, вы можете использовать этот «NonPartitionedKeyGenerator», который вернет пустой раздел для всех записей.Другими словами, все записи попадают в один и тот же раздел (пустой «»)
Надеюсь, этот блог дал вам хорошее представление о различных типах генераторов ключей, доступных в Apache Hudi. Спасибо за вашу постоянную поддержку сообщества Худи.
Индекс(API генератора карты сайта Java 4.0) Индекс
(API генератора карты сайта Java 4.0)В вашем браузере отключен JavaScript.
В вашем браузере отключен JavaScript.
A B C D E F G H I L M N O P R S T U V W X Y ZВсе классы Все пакеты
А
- AbstractGenerator — Класс в cz.jiripinkas.jsitemapgenerator
Генератор абстрактных
- AbstractGenerator (String) — Конструктор для класса cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Создать карту веб-сайта.
- AbstractGenerator (String, boolean) — Конструктор для класса cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Создать карту веб-сайта.
- AbstractGenerator.GeneratorConsumerWithException
— Интерфейс в cz.jiripinkas.jsitemapgenerator - AbstractGenerator. RunnableWithException — Интерфейс в cz.jiripinkas.jsitemapgenerator
- AbstractGenerator.StringSupplierWithException
— Интерфейс в cz.jiripinkas.jsitemapgenerator - AbstractSitemapGenerator
— Класс в cz.jiripinkas.jsitemapgenerator - AbstractSitemapGenerator (String) — Конструктор для класса cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
- accept (T) — Метод в интерфейсе cz.jiripinkas.jsitemapgenerator.AbstractGenerator.GeneratorConsumerWithException
- addAlternateName (String, String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- addImage (Изображение) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- addPage (AbstractGenerator.StringSupplierWithException
) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator Добавить отдельную страницу в карту сайта.
- addPage (WebPage) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Добавить отдельную страницу в карту сайта
- addPage (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Добавить отдельную страницу в карту сайта.
- addPageNames (Collection
, Function ) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator Добавить коллекцию страниц в карту сайта
- addPageNames (Supplier
>, Function ) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator Добавить коллекцию страниц в карту сайта
- addPages (Коллекция
) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator Добавить коллекцию страниц в карту сайта
- addPages (Collection
, Function ) — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractGenerator Добавить коллекцию страниц в карту сайта
- addPages (Supplier
>) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator Добавить коллекцию страниц в карту сайта
- addPages (Supplier
>, Function ) — метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator Добавить коллекцию страниц в карту сайта
- addRule (RobotsRule) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- addSitemap (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- allow (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- allowAll () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- позволяет (Список
) — Метод в классе cz. jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder - alternateName (String, String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Задает альтернативное имя веб-страницы
- alternateName (String, Supplier
) — метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder Задает альтернативное имя веб-страницы
- ВСЕГДА — cz.jiripinkas.jsitemapgenerator.ChangeFreq
- АВТО — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
Автоматическое вычисление правильного шаблона для использования
Б
- baseUrl — Переменная в классе cz.jiripinkas.jsitemapgenerator.АннотацияGenerator
- beforeAddPageEvent (WebPage) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Этот метод вызывается перед добавлением страницы в URL.
- beforeAddPageEvent (WebPage) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
- beforeAddPageEvent (WebPage) — метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
- build () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- build () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
- build () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Возвращает текущую веб-страницу
- build () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Возвращает текущую веб-страницу
- builder () — Статический метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule
- builder () — Статический метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
С
- caption (String) — Метод в классе cz. jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
- changeFreq (ChangeFreq) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает частоту смены веб-страницы
- ChangeFreq — перечисление в cz.jiripinkas.jsitemapgenerator
Как часто страница может меняться.
- changeFreqAlways () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает WebPage changeFreq на ВСЕГДА
- changeFreqDaily () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает частоту смены веб-страницы на ЕЖЕДНЕВНО
- changeFreqHourly () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает WebPage changeFreq на ЧАСОВОЙ
- changeFreqMonthly () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает WebPage changeFreq на ЕЖЕМЕСЯЧНЫЙ
- changeFreqNever () — Метод в классе cz. jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает WebPage changeFreq на НИКОГДА
- changeFreqWeekly () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает частоту смены веб-страницы на ЕЖЕНЕДЕЛЬНУЮ
- changeFreqYearly () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает WebPage changeFreq на YEARLY
- compareTo (WebPage) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
Сравните WebPage сначала по приоритету (в порядке убывания — сначала будет более высокий приоритет), затем по короткому имени (в порядке возрастания).
- connectUrlParts (String, String) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.UrlUtil
Соединить две части URL.
- constructImage (Image) — Метод в классе cz.jiripinkas.jsitemapgenerator. generator.SitemapGenerator
- constructName () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
Создает имя из каталога и расширения (если доступно), используемое в SitemapGenerators
- constructRobotsTxt () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- constructShortName () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
Создает shortName из каталога и расширения (если доступно), используется в RssGenerator
- constructUrl (WebPage) — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator
- constructUrl (WebPage) — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.SitemapIndexGenerator
Создать URL из веб-страницы
- cz.jiripinkas.jsitemapgenerator — модуль cz.jiripinkas.jsitemapgenerator
- cz.jiripinkas.jsitemapgenerator — пакет cz. jiripinkas.jsitemapgenerator
- cz.jiripinkas.jsitemapgenerator.exception — пакет cz.jiripinkas.jsitemapgenerator.exception
- cz.jiripinkas.jsitemapgenerator.generator — пакет cz.jiripinkas.jsitemapgenerator.generator
- cz.jiripinkas.jsitemapgenerator.robots — пакет cz.jiripinkas.jsitemapgenerator.robots
D
- ЕЖЕДНЕВНО — cz.jiripinkas.jsitemapgenerator.ChangeFreq
- dateFormat — Переменная в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
- ДЕНЬ — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
«гггг-ММ-дд»
- defaultChangeFreq (ChangeFreq) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает changeFreq по умолчанию для всех последующих веб-страниц
- defaultChangeFreqAlways () — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на ВСЕГДА для всех последующих веб-страниц
- defaultChangeFreqDaily () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на ЕЖЕДНЕВНО для всех последующих веб-страниц
- defaultChangeFreqHourly () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на ЧАСОВОЙ для всех последующих веб-страниц.
- defaultChangeFreqMonthly () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на ЕЖЕМЕСЯЧНЫЙ для всех последующих веб-страниц.
- defaultChangeFreqNever () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на НИКОГДА для всех последующих веб-страниц
- defaultChangeFreqWeekly () — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на ЕЖЕНЕДЕЛЬНУЮ для всех последующих веб-страниц.
- defaultChangeFreqYearly () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию changeFreq на YEARLY для всех последующих веб-страниц.
- defaultDir (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает префикс dir по умолчанию для имени всех последующих веб-страниц.
- defaultDir (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Устанавливает префикс dir по умолчанию для имени всех последующих веб-страниц.
- defaultDir (String …) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает префиксные каталоги по умолчанию для имен всех последующих веб-страниц.
- defaultDir (String …) — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Устанавливает префиксные каталоги по умолчанию для имен всех последующих веб-страниц.
- defaultExtension (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает расширение суффикса по умолчанию для всех последующих веб-страниц.
- defaultExtension (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Устанавливает расширение суффикса по умолчанию для всех последующих веб-страниц.
- defaultLastMod (LocalDateTime) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает lastMod по умолчанию для всех последующих веб-страниц
- defaultLastMod (Date) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает lastMod по умолчанию для всех последующих веб-страниц
- defaultLastModNow () — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает по умолчанию lastMod = new Date () для всех последующих веб-страниц
- defaultPriority (Double) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает приоритет по умолчанию для всех последующих веб-страниц
- defaultPriorityMax () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Устанавливает максимальный приоритет по умолчанию для всех последующих веб-страниц (1.0)
- description (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Наборы Описание
- descriptionCdata (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Описание наборов в окружении CDATA
- dir (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Задает префиксный каталог для имени.
- dir (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Задает префиксный каталог для имени.
- dir (String …) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Устанавливает имена префиксов.
- dir (String…) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает имена префиксов.
- disallow (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- disallowAll () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- запрещает (Список
) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
E
- equals (Object) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- escapeXmlSpecialCharacters (String) — Статический метод в классе cz. jiripinkas.jsitemapgenerator.UrlUtil
Экранировать специальные символы в XML
- extension (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Задает расширение суффикса.
- extension (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Задает расширение суффикса.
Ф
- Формат
- (Date, StringBuffer, FieldPosition) — Метод в классе cz.jiripinkas.jsitemapgenerator.W3CDateFormat
G
- geoLocation (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
- get () — Метод в интерфейсе cz.jiripinkas.jsitemapgenerator.AbstractGenerator.StringSupplierWithException
- get (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.HttpClient
HTTP GET to URL, вернуть статус
- getAbsoluteUrl (String) — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Получить абсолютный URL: Если webPageName имеет значение null, вернуть baseUrl.
- getAllows () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule
- getAlternateNames () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getBaseUrl () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- getCaption () — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- getChangeFreq () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getDir () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getDisallows () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule
- getExtension () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getGeoLocation () — Метод в классе cz. jiripinkas.jsitemapgenerator.Image
- getImages () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getLastMod () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getLicense () — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- getLoc () — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- getName () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getPriority () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getRules () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- getShortDescription () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getShortName () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- getSitemaps () — Метод в классе cz.jiripinkas.jsitemapgenerator. robots.RobotsTxtGenerator
- getThis () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
- getTitle () — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- getUserAgent () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule
- GWTException — исключение в cz.jiripinkas.jsitemapgenerator.exception
- GWTException (String) — Конструктор исключения cz.jiripinkas.jsitemapgenerator.exception.GWTException
H
- hashCode () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- ПОЧАСОВО — cz.jiripinkas.jsitemapgenerator.ChangeFreq
- HttpClient — Класс в cz.jiripinkas.jsitemapgenerator
- HttpClient () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.HttpClient
я
- Изображение — Класс в cz. jiripinkas.jsitemapgenerator
- Image () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.Image
- ИЗОБРАЖЕНИЕ — cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator.AdditionalNamespace
- imageBuilder () — Статический метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- ImageBuilder () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
- изображений (List
) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder - InvalidPriorityException — исключение в cz.jiripinkas.jsitemapgenerator.exception
- InvalidPriorityException (String) — Конструктор исключения cz.jiripinkas.jsitemapgenerator.exception.InvalidPriorityException
- InvalidUrlException — исключение в cz.jiripinkas.jsitemapgenerator.exception
- InvalidUrlException (Throwable) — Конструктор исключения cz. jiripinkas.jsitemapgenerator.exception.InvalidUrlException
л
- lastMod (LocalDateTime) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Наборы lastMod
- lastMod (Date) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает веб-страницу lastMod
- lastModNow () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает для lastMod веб-страницы текущую дату (новая дата ())
Лицензия- (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
- ссылка (Строка) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Наборы звеньев
- loc (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
м
- maxPriorityRoot () — Метод в классе cz. jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает имя веб-страницы на «» и приоритет на MAX_PRIORITY (1.0)
- MILLISECOND — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
«гггг-ММ-дд’Т’ЧЧ: мм: сс.СССЗ»
- МИНУТА — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
«гггг-ММ-дд’Т’ЧЧ: ммЗ»
- МЕСЯЦ — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
«гггг-ММ»
- ЕЖЕМЕСЯЧНО — cz.jiripinkas.jsitemapgenerator.ChangeFreq
N
- name (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает имя веб-страницы
- name (String …) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Устанавливает имя веб-страницы
- name (String …) — Метод в классе cz. jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает имя веб-страницы
- имя (Поставщик
) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder Устанавливает имя веб-страницы
- nameRoot () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает имя веб-страницы на «»
- НИКОГДА — cz.jiripinkas.jsitemapgenerator.ChangeFreq
O
- of (String) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.генератор.RssGenerator
Вспомогательный метод для создания экземпляра SitemapGenerator
- of (String) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator
Вспомогательный метод для создания экземпляра SitemapGenerator
- of (String) — Статический метод в классе cz. jiripinkas.jsitemapgenerator.generator.SitemapIndexGenerator
- of (String) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- of (String) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
Метод создания веб-страницы только с именем (это может быть полезно для действительно простых карт сайта или с комбинацией настроек по умолчанию установлен на SitemapGenerator)
- of (String, boolean) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Вспомогательный метод для создания экземпляра SitemapGenerator
- of (String, boolean, String, String) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Вспомогательный метод для создания экземпляра SitemapGenerator
- of (String, String, String) — Статический метод в классе cz. jiripinkas.jsitemapgenerator.generator.RssGenerator
Вспомогательный метод для создания экземпляра SitemapGenerator
- из (Поставщик
) — Статический метод в классе cz.jiripinkas.jsitemapgenerator.WebPage Метод создания веб-страницы только с именем (это может быть полезно для действительно простых карт сайта или с комбинацией настроек по умолчанию установлен на SitemapGenerator)
-П
- parse (String, ParsePosition) — Метод в классе cz.jiripinkas.jsitemapgenerator.W3CDateFormat
- pingBing () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Пингуйте Google, что карта сайта изменилась.
- pingBing (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Ping Bing, что карта сайта изменилась.
- pingGoogle () — Метод в классе cz.jiripinkas. jsitemapgenerator.AbstractSitemapGenerator
Пингуйте Google, что карта сайта изменилась.
- pingGoogle (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Пингуйте Google, что карта сайта изменилась.
- priority (Double) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает приоритет веб-страницы
- priorityMax () — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
Устанавливает максимальный приоритет веб-страницы (1.0)
- pubDate (LocalDateTime) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Наборов pubDate
- pubDate (Date) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Наборов pubDate
R
- resetDefaultChangeFreq () — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Сбросить изменение по умолчанию Частота
- resetDefaultDir () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Сбросить значение директории по умолчанию
- resetDefaultDir () — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Сбросить значение директории по умолчанию
- resetDefaultExtension () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Сбросить значение расширения по умолчанию
- resetDefaultExtension () — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Сбросить значение расширения по умолчанию
- resetDefaultLastMod () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Сбросить по умолчанию lastMod
- resetDefaultPriority () — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Сбросить приоритет по умолчанию
- RobotsRule — Класс в cz.jiripinkas.jsitemapgenerator.robots
- RobotsRule () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.robots.RobotsRule
- RobotsRule.RobotsRuleBuilder — Класс в cz.jiripinkas.jsitemapgenerator.robots
- RobotsRuleBuilder () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- RobotsRuleException — исключение в cz.jiripinkas.jsitemapgenerator.robots
- RobotsRuleException (String) — Конструктор исключения cz.jiripinkas.jsitemapgenerator.robots.RobotsRuleException
- RobotsTxtGenerator — Класс в cz.jiripinkas.jsitemapgenerator.robots
- RobotsTxtGenerator () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- rssBuilder () — Статический метод в классе cz. jiripinkas.jsitemapgenerator.WebPage
- RssGenerator — Класс в cz.jiripinkas.jsitemapgenerator.generator
- RssItemBuilder () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
- run () — Метод в интерфейсе cz.jiripinkas.jsitemapgenerator.AbstractGenerator.RunnableWithException
- run (AbstractGenerator.GeneratorConsumerWithException ) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Запустите какой-нибудь метод.
- run (AbstractGenerator.RunnableWithException) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Запустите какой-нибудь метод
S
- ВТОРОЙ — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
«гггг-ММ-дд’Т’ЧЧ: мм: ссZ»
- setAllows (List
) — Метод в классе cz.jiripinkas.jsitemapgenerator. robots.RobotsRule - setAlternateNames (Map
) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage - setBaseUrl (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
- setCaption (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- setChangeFreq (ChangeFreq) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setDir (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setDisallows (List
) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule - setExtension (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setGeoLocation (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- setHttpClient (HttpClient) — Метод в классе cz.jiripinkas.jsitemapgenerator. AbstractSitemapGenerator
- setImages (List
) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage - setLastMod (Date) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setLicense (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- setLoc (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- setName (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setPriority (Double) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setRules (Список
) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator - setShortDescription (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setShortName (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage
- setSitemaps (List
) — Метод в классе cz. jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator - setTitle (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.Image
- setUserAgent (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule
- SitemapGenerator — Класс в cz.jiripinkas.jsitemapgenerator.generator
- SitemapGenerator.AdditionalNamespace — перечисление в cz.jiripinkas.jsitemapgenerator.generator
- SitemapIndexGenerator — Класс в cz.jiripinkas.jsitemapgenerator.генератор
Генератор индекса Sitemap https://www.sitemaps.org/protocol.html#index
т
- title (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.ImageBuilder
- title (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Наборы Заголовок
- titleCdata (String) — Метод в классе cz. jiripinkas.jsitemapgenerator.WebPage.RssItemBuilder
Устанавливает заголовок в окружении CDATA
- toFile (Файл) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Создайте и сохраните карту сайта в выходной файл
- toFile (Путь) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Создайте и сохраните карту сайта в выходной файл
- toGzipByteArray () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Конструировать карту сайта в файл gzip
- toPrettyString (int) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Конструировать карту сайта в единую предварительно настроенную строку
- toPrettyXmlString (String, int) — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractGenerator
Метод для уточнения XML-строки
- toString () — Метод в классе cz. jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
Конструировать карту сайта в одну строку
- toString () — Метод в перечислении cz.jiripinkas.jsitemapgenerator.ChangeFreq
- toString () — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Это создаст RSS из веб-страниц.
- toString () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsTxtGenerator
Создать строку robots.txt
- toStringArray () — Метод в классе cz.jiripinkas.jsitemapgenerator.AbstractSitemapGenerator
- toStringArray () — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator
Создайте карту сайта в виде массива строк.
- toStringArray () — Метод в классе cz.jiripinkas.jsitemapgenerator.генератор.SitemapIndexGenerator
Построить карту сайта в массив строк
U
- urls — переменная в классе cz. jiripinkas.jsitemapgenerator.AbstractGenerator
- UrlUtil — Класс в cz.jiripinkas.jsitemapgenerator
Класс утилиты
- userAgent (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
- userAgentAll () — Метод в классе cz.jiripinkas.jsitemapgenerator.robots.RobotsRule.RobotsRuleBuilder
В
- valueOf (String) — Статический метод в перечислении cz.jiripinkas.jsitemapgenerator.ChangeFreq
Возвращает константу перечисления этого типа с указанным именем.
- valueOf (String) — Статический метод в перечислении cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator.AdditionalNamespace
Возвращает константу перечисления этого типа с указанным именем.
- valueOf (String) — Статический метод в перечислении cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
Возвращает константу перечисления этого типа с указанным именем.
- values () — Статический метод в enum cz.jiripinkas.jsitemapgenerator.ChangeFreq
Возвращает массив, содержащий константы этого типа перечисления, в порядок их объявления.
- values () — Статический метод в enum cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator.AdditionalNamespace
Возвращает массив, содержащий константы этого типа перечисления, в порядок их объявления.
- values () — Статический метод в enum cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
Возвращает массив, содержащий константы этого типа перечисления, в порядок их объявления.
Вт
- W3CDateFormat — Класс в cz.jiripinkas.jsitemapgenerator
Форматирует и анализирует даты в шести определенных форматах даты и времени W3C.
- W3CDateFormat () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.W3CDateFormat
Построить форматтер в автоматическом режиме
- W3CDateFormat (W3CDateFormat. Pattern) — Конструктор для класса cz.jiripinkas.jsitemapgenerator.W3CDateFormat
Создайте форматтер с использованием указанного шаблона или режима AUTO
- W3CDateFormat.Шаблон — перечисление в cz.jiripinkas.jsitemapgenerator
- webDescription (String) — Метод в классе cz.jiripinkas.jsitemapgenerator.generator.RssGenerator
Установить Веб-описание
- WebPage — Класс в cz.jiripinkas.jsitemapgenerator
- WebPage () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.WebPage
- WebPage.ImageBuilder — Класс в cz.jiripinkas.jsitemapgenerator
- WebPage.RssItemBuilder — Класс в cz.jiripinkas.jsitemapgenerator
- WebPage.WebPageBuilder — Класс в cz.jiripinkas.jsitemapgenerator
- WebPageBuilder () — Конструктор для класса cz.jiripinkas.jsitemapgenerator.WebPage.WebPageBuilder
- webTitle (String) — Метод в классе cz. jiripinkas.jsitemapgenerator.generator.RssGenerator
Установить веб-заголовок
- ЕЖЕНЕДЕЛЬНО — cz.jiripinkas.jsitemapgenerator.ChangeFreq
Х
- XHTML — cz.jiripinkas.jsitemapgenerator.generator.SitemapGenerator.AdditionalNamespace
Я
- ГОД — cz.jiripinkas.jsitemapgenerator.W3CDateFormat.Pattern
«гггг»
- ГОД — cz.jiripinkas.jsitemapgenerator.ChangeFreq
Z
- ZULU — Статическая переменная в классе cz.jiripinkas.jsitemapgenerator.W3CDateFormat
Часовой пояс GMT («зулусский»), для вашего удобства
Все классы Все пакеты
В вашем браузере отключен JavaScript.
Copyright © 2019. Все права защищены.
Используйте общий CI с Conan и Artifactory — документация conan 1.
36.0Если вы используете Jenkins с Conan и Artifactory, вместе с Плагин Jenkins Artifactory, любой пакет Conan, загруженный или загруженный во время сборки, будет автоматически записан в файл BuildInfo json, который будет автоматически загружен в указанный экземпляр Artifactory.
Однако, используя команду conan_build_info , вы можете собирать и загружать эту информацию, используя другие Инфраструктура CI. Есть два возможных способа использования этой команды:
Создание информации о сборке из информации о файлах блокировки
Предупреждение
Это экспериментальная функция , которая может быть изменена в будущих выпусках.
Для обеспечения совместимости с текущей реализацией команды conan_build_info
этот
Версия должна быть вызвана с использованием аргумента --v2
перед любой подкомандой.
1. Для начала связать информацию о сборке с загруженными пакетами.
вызывает подкоманду start
из conan_build_info
. Это установит artifact_property_build.name и artifact_property_build.name свойства в
артефакты. свойства.
$ conan_build_info --v2 start MyBuildName 42
2. Позвоните Конану, используя файлы блокировки, чтобы создать информацию для Информация о сборке в формате json.
$ cd mypackage $ conan create.mypackage/1.0@user/stable # Создаем один пакет $ cd .. && потребитель компакт-диска $ conan install. # Потребляет mypackage, генерирует файл блокировки $ conan create. потребитель/1.0@user/stable --lockfile conan.lock $ conan upload "*" -c -r local # Загрузить все пакеты на локальные удаленные устройства
3. Создайте информацию о сборке на основе содержимого сгенерированного файла блокировки conan.lock и файла информация, полученная с удаленного (аутентификация для удаленного, на который вы загрузили пакеты).
$ conan_build_info --v2 create buildinfo.json --lockfile conan.lock --user admin --password пароль
- Опубликуйте информацию о сборке в Artifactory с помощью подкоманды
publish
:
Использование пользователя и пароля
$ conan_build_info --v2 publish buildinfo. json --url http: // localhost: 8081 / artifactory --user admin --password пароль
или ключ API:
$ conan_build_info --v2 publish buildinfo.json --url http: // localhost: 8081 / artifactory --apikey apikey
5.Если весь процесс завершен, и вы не хотите продолжать связывать номер сборки и
имя сборки для файлов, загруженных в Artifactory, тогда вы можете использовать подкоманду stop
:
$ conan_build_info --v2 stop
Также возможно объединить различные файлы информации о сборке с помощью подкоманды update
. Это
полезно в CI, когда много ведомых
генерируют разные файлы информации о сборке.
$ conan_build_info --v2 обновить buildinfo1.json buildinfo2.json --output-file mergedbuildinfo.json
Вы можете проверить полную ссылку на conan_build_info.
@ взаимозаменяемые системы / файл зоны NPM | npm.io
Файл зоны JS
Совместимый с RFC1035 анализатор и генератор файлов зоны DNS для Node. js и браузера. На основе библиотеки dns-zonefile
от Elgs Qian Chen.
Установка
$ npm install zone-file
Usage
Создание файлов зон
import {makeZoneFile} from 'zone-file'
let zoneFileText = makeZoneFile (zoneFileJson)
Файлы зон анализа
import {parseZoneFile} из 'zone-file'
let zoneFileJson = parseZoneFile (zoneFileText)
Объекты файла зоны
импортировать {ZoneFile} из файла зоны
let zoneFileData = {
"$ origin": "MYDOMAIN.COM. ",
"$ ttl": 3600,
"а": [
{"name": "@", "ip": "127.0.0.1"},
{"имя": "www", "ip": "127.0.0.1"}
]
}
пусть zoneFile = новый ZoneFile (zoneFileData)
пусть zoneFileString = zoneFile.toString ()
let zoneFileJson = zoneFile.toJSON ()
Справочная информация
Эта библиотека принимает как данные зоны, выраженные как объект JSON, так и как текстовый файл зоны. Он поддерживает типы записей SOA
, NS
, A
, AAAA
, CNAME
, MX
, PTR
, SRV
, TXT
и URI
, а также $ ORIGIN. Ключевое слово
(только для использования в масштабах зоны).Каждый тип записи
(и ключевое слово $ ORIGIN
) является необязательным, хотя привязка ожидает найти по крайней мере запись SOA
в допустимом файле зоны.
Файлы зоны прямого DNS
Следующий JSON создает файл зоны для зоны прямого DNS:
{
"$ origin": "MYDOMAIN.COM.",
"$ ttl": 3600,
"soa": {
"mname": "NS1.NAMESERVER.NET.",
"rname": "HOSTMASTER.MYDOMAIN.COM.",
"серийный": "{время}",
«обновить»: 3600,
«повторить»: 600,
«истечь»: 604800,
«минимум»: 86400
},
«нс»: [
{"хост": "NS1.NAMESERVER.NET. "},
{"хост": "NS2.NAMESERVER.NET." }
],
"а": [
{"name": "@", "ip": "127.0.0.1"},
{"name": "www", "ip": "127.0.0.1"},
{"name": "mail", "ip": "127.0.0.1"}
],
"аааа": [
{"ip": ":: 1"},
{"имя": "почта", "ip": "2001: db8 :: 1"}
],
"cname": [
{"name": "mail1", "alias": "mail"},
{"имя": "mail2", "псевдоним": "почта"}
],
"mx": [
{"preference": 0, "host": "mail1"},
{"предпочтение": 10, "хост": "mail2"}
],
"текст":[
{"name": "txt1", "txt": "привет"},
{"имя": "txt2", "txt": "мир"}
],
"srv": [
{"name": "_xmpp-client. _tcp "," target ":" jabber "," priority ": 10," weight ": 0," port ": 5222},
{"name": "_xmpp-server._tcp", "target": "jabber", "priority": 10, "weight": 0, "port": 5269}
]
}
dns-zonefile создаст следующий файл зоны из приведенной выше информации, в то время как следующий файл зоны также может быть проанализирован для создания файла зоны как указано выше:
; Зона: MYDOMAIN.COM.
; Экспортировано (гггг-мм-ддTчч: мм: сс.сссZ): 2014-09-22T21: 10: 36.697Z
$ ORIGIN MYDOMAIN.COM.
3600 долларов США
; Запись SOA
@ В SOA NS1.NAMESERVER.NET. HOSTMASTER.MYDOMAIN.COM. (
1411420237; серийный
3600; обновить
600; повторить
604800; срок действия истекает
86400; минимум ttl
)
; NS Records
@ В NS NS1.NAMESERVER.NET.
@ В NS NS2.NAMESERVER.NET.
; Записи MX
@ IN MX 0 mail1
@ IN MX 10 mail2
; Записи
@ IN A 127.0.0.1
www IN A 127.0.0.1
mail IN A 127.0.0.1
; AAAA отчеты
@ IN AAAA :: 1
mail IN AAAA 2001: db8 :: 1
; Записи CNAME
mail1 В почте CNAME
mail2 IN CNAME mail
; Записи TXT
txt1 IN TXT "привет"
txt2 IN TXT "мир"
; Записи SRV
_xmpp-client. _tcp IN SRV 10 0 5222 jabber
_xmpp-server._tcp IN SRV 10 0 5269 jabber
Файлы зоны обратного DNS
Этот JSON создаст файл зоны для зоны обратного DNS ( $ ORIGIN
ключевое слово рекомендуется для зон обратного DNS):
{
"$ origin": "0.168.192.IN-ADDR.ARPA.",
"$ ttl": 3600,
"soa": {
"mname": "NS1.NAMESERVER.NET.",
"rname": "HOSTMASTER.MYDOMAIN.COM.",
"серийный": "{время}",
«обновить»: 3600,
«повторить»: 600,
«истечь»: 604800,
«минимум»: 86400
},
«нс»: [
{"хост": "NS1.NAMESERVER.NET. "},
{"хост": "NS2.NAMESERVER.NET." }
],
"ptr": [
{"имя": 1, "хост": "HOST1.MYDOMAIN.COM." },
{"имя": 2, "хост": "HOST2.MYDOMAIN.COM." }
]
}
dns-zonefile создаст следующий файл зоны из приведенной выше информации, в то время как следующий файл зоны также может быть проанализирован для создания файла зоны как указано выше:
; Зона: 0.168.192.IN-ADDR.ARPA.
; Экспортировано (гггг-мм-ддTчч: мм: сс. сссZ): 2014-09-22T21: 10: 36.698Z
$ ORIGIN 0.168.192.IN-ADDR.ARPA.
3600 долларов США
; Запись SOA
@ В SOA NS1.NAMESERVER.NET. HOSTMASTER.MYDOMAIN.COM. (
1411420237; серийный
3600; обновить
600; повторить
604800; срок действия истекает
86400; минимум ttl
)
; NS Records
@ В NS NS1.NAMESERVER.NET.
@ В NS NS2.NAMESERVER.NET.
; PTR Records
1 В PTR HOST1.MYDOMAIN.COM.
2 В PTR HOST2.MYDOMAIN.COM.
Правила | openHAB
«Правила» используются для автоматизации процессов: каждое правило может быть запущено, которое вызывает сценарий, который выполняет любые виды задач, например.грамм. включайте свет, изменяя свои элементы, выполняйте математические вычисления, запускайте таймеры и т. д.
openHAB имеет высокоинтегрированный, легкий, но мощный механизм правил. На этой странице вы узнаете, как использовать его функциональные возможности для автоматизации дома Real .
Определение правил
Расположение файла
Правила помещаются в папку $ OPENHAB_CONF / rules
. Демонстрационная установка (открывается в новом окне) уже поставляется с демонстрационным файлом под названием demo.rules
(открывается в новом окне), в котором есть несколько примеров, которые могут стать хорошей отправной точкой.
Файл правил может содержать несколько правил. Все правила файла имеют общий контекст выполнения, то есть они могут получать доступ и обмениваться переменными друг с другом. Поэтому имеет смысл иметь разные файлы правил для разных вариантов использования или категорий.
Определение на основе пользовательского интерфейса
С помощью пользовательского интерфейса можно создавать и редактировать правила.
Вы можете найти редактор, просматривая Настройки
-> Правила
.Щелкните значок +
, чтобы добавить правило и определить имя и триггер.
В нашем примере мы поймем запуск openHAB для инициализации нашей среды.
Щелкните Добавить действие
и выберите Выполнить сценарий
.
Выберите Rule DSL
и введите правило, как описано ниже в этой статье.
Поддержка IDE
OpenHAB VS Code Extension предлагает поддержку для построения правил.Он включает в себя проверку синтаксиса и окраску, проверку с помощью маркеров ошибок, помощь по содержанию (Ctrl + Пробел), вкл. шаблоны и т. д. Это упрощает создание правил! Посетите страницу редакторов для получения дополнительной информации и дополнительных возможностей редактора.
Синтаксис
Примечание
Синтаксис правила основан на Xbase (открывается в новом окне), и в результате он делится многими деталями с Xtend (открывает новое окно), который также построен поверх Xbase. В результате мы часто будем ссылаться на документацию Xtend за подробностями.
Файл правил — это текстовый файл со следующей структурой:
- Импорт
- Объявления переменных
- Правила
Раздел Импорт содержит оператор импорта, как и в Java. Как и в Java, они делают импортированные типы доступными без использования для них полного имени. Дополнительные сведения см. В документации Xtend по импорту (открывается в новом окне).
Пример:
Несколько операций импорта по умолчанию уже выполнены, поэтому классы из этих пакетов не нужно явно импортировать:
Раздел объявлений переменных Раздел можно использовать для объявления переменных, которые должны быть доступны для всех правил в этом файл.Вы можете объявлять переменные с начальными значениями или без них, изменять их или только для чтения. Для получения дополнительных сведений см. Документацию Xtend для объявлений переменных (открывается в новом окне).
Пример:
Раздел Rules содержит список правил. Каждое правило имеет следующий синтаксис:
-
<ИМЯ ПРАВИЛА>
— Каждое правило должно иметь уникальное имя (указанное в кавычках). Рекомендуется выбирать имя, которое имеет значение при произнесении. -
или
. Пожалуйста, смотрите ниже различные возможные триггеры. -
Триггеры правила
Прежде чем правило начнет работать, оно должно быть активировано.
Существуют различные категории триггеров правил:
- Триггеры на основе элемента (-Event): они реагируют на события на шине событий openHAB, то есть на команды и обновления статуса для элементов
- Член (-Event Триггеры на основе): они реагируют на события на шине событий openHAB для элементов, которые являются членами предоставленной группы
- Триггеры на основе времени : они реагируют в определенное время, например в полночь, каждый час и т. д.
- Триггеры на основе системы : они реагируют на определенные состояния системы.
- Триггеры на основе Thing : они реагируют на статус объекта, т.е. переходят с ONLINE на OFFLINE.
Вот подробности для каждой категории:
Триггеры на основе событий
Вы можете прослушивать команды для определенного элемента, при обновлении статуса или при изменении статуса (обновление может оставить статус неизменным). Вы можете решить, хотите ли вы поймать только определенную команду / статус или любую другую. Вот синтаксис для всех этих случаев (части в квадратных скобках необязательны):
Упрощенное объяснение различий между командой
и обновлением
можно найти в статье о основных действиях openHAB.
При использовании триггера полученной команды
Правило может запускать до того, как будет обновлено состояние Элемента.
Следовательно, если Правилу необходимо знать, что это была за команда, используйте неявную переменную receiveCommand
вместо
.
Член триггеров
Как и в случае с триггерами на основе событий, описанными выше, вы можете прослушивать команды, обновления статуса или изменения статуса для членов данной группы.Вы также можете решить, хотите ли вы поймать только определенную команду / статус или любую другую.
Все неявные переменные заполняются с помощью элемента, вызвавшего событие.
Неявная переменная triggeringItem
заполняется элементом, который вызвал срабатывание правила.
Элемент в триггере
работает только с элементами, которые являются непосредственными участниками группы.
Он не работает с членами вложенных подгрупп.
Также, как и в случае триггеров на основе событий Предмета, при использовании полученной команды
Правило может сработать до обновления состояния Предмета.Поэтому в Правилах, где Правило должно знать, что это была за команда, используйте неявную переменную receiveCommand
вместо triggeringItem.state
.
Триггеры, основанные на времени
Вы можете использовать заранее определенные выражения для таймеров или вместо этого использовать выражение cron (открывается в новом окне):
Выражение cron принимает форму шести или (необязательно) семи полей:
- секунд
- Минуты
- Часы
- День месяца
- Месяц
- День недели
- Год (необязательное поле)
Вы можете использовать генератор в FreeFormatter.com (открывается в новом окне), чтобы сгенерировать выражения cron.
Системные триггеры
Один системный триггер предоставляется, как описано в таблице ниже:
Триггер | Описание |
---|---|
Система запущена | Система запущена запускается при запуске openHAB . В openHAB версии 2 запуск системы также запускается после изменения файла правил, содержащего триггер запуска системы, или после изменения элементов в файле.файл items. |
Вы можете использовать триггер «Система запущена» для инициализации значений при запуске, если они еще не установлены.
Пример:
В openHAB версии 3 был добавлен системный триггер для startlevel, значения зависят от startlevel:
Startlevels (логически только если startlevel> = 40) доступны только в UI-Rules, а не в DSL -Правила с текстовой конфигурацией.
Триггеры на основе вещей
Ваши правила могут выполнять действия на основе обновлений статуса или изменений статуса, созданных вещами.Вы можете решить, хотите ли вы отслеживать только определенный статус или любой статус, который также может обновляться Thing. Вот синтаксис для всех этих случаев (части в квадратных скобках необязательны):
Статус, используемый в триггере и скрипте, представляет собой строку (без кавычек). Вы можете найти все возможные значения статуса в Thing Status. Чтобы узнать, как получить статус объекта в сценарии, обратитесь к разделу «Действие по состоянию объекта».
thingUID
— это идентификатор, присвоенный Thing вручную в вашей конфигурации или автоматически во время автоматического обнаружения.Вы можете найти его в пользовательском интерфейсе или с удаленной консоли Karaf.
Например, одно устройство z-wave может быть «zwave: device: c5155aa4: node14».
Примечание
Вам нужно использовать кавычки вокруг thingUID
, если он содержит специальные символы, такие как ‘:’.
Триггеры на основе каналов
Некоторые надстройки предоставляют каналы запуска. По сравнению с другими типами каналов, канал запуска предоставляет информацию о дискретных событиях, но не предоставляет непрерывную информацию о состоянии.
Ваши правила могут выполнять действия на основе событий запуска, генерируемых этими каналами запуска.Вы можете решить, хотите ли вы поймать только определенный или любой триггер, который предоставляет канал. Вот синтаксис для этих случаев (части в квадратных скобках необязательны):
Примечание
Вам нужно использовать кавычки вокруг triggerChannel
, если он содержит специальные символы, такие как :
.
triggerChannel
— идентификатор определенного канала.
Если привязка предоставляет такие каналы, вы можете найти необходимую информацию в соответствующей документации привязки.Нет общего списка возможных значений для triggerEvent
,
Доступные triggerEvent
зависят от конкретных деталей реализации привязки.
Если Правилу необходимо знать, каким было полученное событие, используйте неявную переменную receiveEvent
для доступа к информации.
Пример:
Сценарии
Язык выражений, используемый в сценариях, тот же, что и в языке Xtend — см. Документацию по выражениям (открывается в новом окне) на домашней странице Xtend.
Синтаксис очень похож на Java, но имеет много хороших функций, позволяющих писать краткий код. Это особенно эффективно при работе с коллекциями. Что делает его подходящим для openHAB с технической точки зрения, так это то, что нет необходимости компилировать сценарии, поскольку они могут быть интерпретированы во время выполнения.
Чтобы иметь возможность делать что-то полезное со сценариями, openHAB предоставляет доступ ко всем определенным элементам
- , так что вы можете легко получить к ним доступ по их имени
- всем перечисленным состояниям / командам, например.грамм.
ВКЛ, ВЫКЛ, ВНИЗ, УВЕЛИЧЕНИЕ
и т. Д. - все стандартные действия (открывает новое окно), чтобы что-то произошло
Объединив эти функции, вы можете легко написать такой код, как:
Управление состояниями элементов
Часто используются правила для управления состоянием объекта, например, включение и выключение света при определенных условиях. Две команды могут изменить значение или состояние элемента в рамках правил:
-
MyItem.postUpdate (
— изменить состояние элемента, не вызывая каких-либо неявных действий.Может использоваться для отражения изменений, которые могут быть вызваны другими способами.) -
MyItem.sendCommand (
— изменить статус элемента и инициировать возможные дальнейшие действия, например отправить команду на связанное устройство / привязку.)
В отношении триггеров правил на основе событий, команды манипулятора sendCommand
и postUpdate
действуют по-разному.
В следующей таблице показано влияние двух команд манипулятора на выполнение правила из-за используемого триггера:
Command \ Rule Trigger | получено обновление | получено команду | изменено |
---|---|---|---|
postUpdate | ⚡ правило срабатывает | ❌ | (зависит) |
sendCommand | (❌) см. Ниже | ⚡ правило срабатывает | (зависит) |
Изменение через привязку | ⚡ правило срабатывает | ⚡ правило срабатывает | (зависит) |
Осторожно: В большинстве случаев правило с триггером получено обновление
срабатывает после команды sendCommand
как:
- openHAB автоматически обновляет статус элементов, для которых определение элемента не содержит
autoupdate = "false"
- Вещь отправляет обновление статуса Элементу.
Помимо специальных методов команды манипулятора MyItem.sendCommand (
и MyItem.postUpdate (
, общие манипуляторы в форме sendCommand (MyItem,
date и postUp (MyItem,
доступны. Обычно рекомендуются определенные версии.
MyItem.sendCommand («новое состояние») по сравнению с sendCommand (MyItem, «новое состояние»)
Использование методов MyItem.sendCommand (
и MyItem.postUpdate (
часто предпочтительнее.
Это методы объектов, которые могут принимать различные типы.
Напротив, действия sendCommand (MyItem, "
и postUpdate (MyItem, "
могут принимать только строки в качестве аргументов.
Причины кроются в Java, объектно-ориентированном языке программирования, на котором построен openHAB.
Java и Rules DSL имеют два основных типа: примитивы и объекты.Тип данных строчной буквы после оператора var
или val
, например var int
, указывает на примитивный тип.
Тип данных с прописными буквами после операторов val
и var
, например var Number
указывает на объект.
Объекты сложнее примитивов.
Объекты имеют специальные методы, которые могут автоматически выполнять многие необходимые преобразования типов.
Использование Myitem.sendCommand (new_state)
или Myitem.postUpdate (new_state)
в большинстве случаев преобразует new_state
в тип, который может применить объект myItem
.
Действие sendCommand (MyItem, new_state)
не обеспечивает такой же гибкости.
Например, если new_state
набрано как примитив (например, var int new_state = 3
), а myItem имеет тип объекта Dimmer:
- , следующая команда завершится ошибкой :
sendCommand (MyItem, новое_стейт). - Однако следующая команда будет работать :
MyItem.sendCommand (new_state)
.
Использование MyItem.postUpdate (new_state)
или MyItem.sendCommand (new_state)
создаст наиболее стабильный код.
Это, безусловно, лучший способ избежать большинства проблем.
Этот синтаксис гарантирует, что любое преобразование (типизация) new_state
выполняется способом, наиболее подходящим для myItem
.
Исключение: Действия полезны, когда имя элемента доступно только в виде строки.Например, если имя элемента для получения обновления или команды было вычислено в правиле путем построения строки:
Использование состояний элементов в правилах
Часто требуется вычислить другие значения из состояний элемента или до сравнить состояния элементов с другими значениями
В openHAB каждый элемент имеет состояние.
Состояние элемента — это сам объект, доступ к которому можно получить с помощью MyItem.state
.
Полный и актуальный список типов элементов в настоящее время разрешен в OpenHAB, а типы команд, которые может принимать каждый элемент, приведены в документации openHab для элементов.Чтобы использовать состояние элемента в правилах, часто необходимо знать, какой тип состояния несет элемент и как преобразовать его в типы, которые можно использовать в таких операциях.
И наоборот, чтобы использовать результат вычисления для изменения состояния элемента, может потребоваться его преобразование в подходящий тип.
В этом разделе проводится различие между типом команды и типом состояния. Для удобства чтения можно просто добавить «тип» в конец типа команды, получая, таким образом, тип состояния.Например, цветовой элемент может получать OnOffType, IncreaseDecreaseType, PercentType или HSBType. Следовательно, все следующие действительные команды, которые можно отправить в Color Item:
-
MyColorItem.sendCommand (ON)
-
MyColorItem.sendCommand (INCREASE)
-
MyColorItem.sendCommand (50) PercentType (новый PercentTy25) 900
-
MyColorItem.sendCommand (новый HSBType (новый DecimalType (123), новый PercentType (45), новый PercentType (67)))
Альтернативный способ управления или обновления состояния элемента - использование специально отформатированные строки.В разделе документации элемента, посвященном форматированию, подробно описаны требования к форматированию.
Несмотря на то, что многие элементы принимают команды и обновления различных типов, каждый сохраняет свое состояние внутри, используя только один тип. Color Item из приведенного выше примера будет принимать различные типы команд, но вернет только HSBType.
Группы могут быть объявлены с любым типом элемента, и внутреннее состояние группы будет соответствовать этому типу.
Например, Group: Switch
вернет OnOffType для своего состояния.
Каждый тип состояния предоставляет ряд удобных методов, которые значительно облегчат преобразование и вычисления. Есть два способа обнаружить эти методы:
- Используйте openHAB VS Code Extension и комбинацию клавиш
- Посмотрите JavaDocs для данного типа.
Например, JavaDoc для HSBType (открывается в новом окне) показывает методы
getRed
,getBlue
иgetGreen
.Эти методы могут быть вызваны в Rules-DSL безполучить часть имени
, как в(MyColorItem.state как HSBType) .red)
. Они получают состояние MyColorItem, а затем приводят его как HSBType, чтобы иметь возможность использовать методы, связанные с HSBType.
Работа с состояниями элементов: преобразования
Напоминание: для получения полного и актуального списка типов элементов, которые в настоящее время разрешены в openHAB, и типов команд, которые может принимать каждый элемент, см. Раздел, посвященный элементам в openHAB документация.
Ниже неполный список некоторых наиболее распространенных преобразований. Заинтересованным читателям предлагается также посетить форум (открывается в новом окне), где можно найти еще много примеров.
Преобразование состояния элемента в строку
Все состояния элемента можно преобразовать в строку, вызвав MyItem.state.toString
.
Color Item
Color Item хранит HSBType . HSB означает оттенок, насыщенность и яркость.32 - 1) соответственно.
Элемент контакта
Элемент контакта имеет OpenClosedType. OpenClosedType - это перечисление. Можно преобразовать из Открытого и Закрытого в 1 и 0 с помощью кода, подобного:
Элемент DateTime
Элемент DateTime несет DateTimeType , который внутренне содержит объект Java ZonedDateTime
.
В некоторых случаях необходимо преобразовать временную метку эпохи в удобочитаемую и / или сохранить ее в DateTimeType и DateTime Item.Здесь можно сделать это с помощью SimpleDateFormat:
ZonedDateTimes предоставляет ряд полезных методов для сравнения дат и / или извлечения частей даты:
Dimmer Item
Dimmer Item имеет PercentType . PercentType может быть приведен к типу java.lang.Number и обрабатываться как java.lang.Number, где Number представляет любой тип числового значения. Язык правил поддерживает выполнение математических и логических операций с числами. Объект Number поддерживает методы получения примитивных версий этого числа, если это необходимо.
Если преобразование из или в шестнадцатеричные значения необходимо, могут быть полезны следующие примеры:
Дополнительные преобразования, которые могут быть полезны, перечислены ниже в NumberItem
Элемент местоположения
Элементы местоположения имеют PointType . PointType состоит из двух или трех чисел DecimalType, представляющих широту и долготу в градусах, и необязательной высоты в метрах. Вот несколько примеров:
Number Item
Number Items содержит либо DecimalType , либо QuantityType в случае, если Number Item имеет присоединенное измерение (например,грамм. Номер: температура
в файле товаров).
В правилах единицы добавляются к числу с помощью |
, где единица измерения должна быть заключена в кавычки, если она содержит неалфавитные символы, например 10 | м
, но 20 | "км / ч"
.
Для пары часто используемых единиц не обязательно указывать кавычки, это ° C
, ° F
, Ω
, °
, %
, м²
и м³
, так что можно писать 20 | "° C"
, но 20 | ° C
также подойдет.DecimalType и QuantityType также являются java.lang.Number, поэтому все преобразования, перечисленные выше в разделе Dimmer Item, применимы и к Number Item.
Вот некоторые другие часто используемые преобразования:
Другие полезные преобразования можно найти в разделе «Диммер».
Одно предупреждение приходит с DecimalType (также верно для QuantityType). Полное объяснение выходит за рамки этого введения (открывается в новом окне). Чтобы избежать ошибки при упоминании «неоднозначного вызова метода», всегда приводите состояние DecimalType к Number, а не DecimalType.
Позаботьтесь о математических расчетах, связанных с типами количества. Хотя во многих случаях вы можете свободно смешивать единицы, есть подводные камни.
Элемент Player
Элемент Player позволяет управлять проигрывателями (например, аудиоплеерами) с помощью таких команд, как Play, Pause, Next, Previous, Rewind и Fastforward. Элемент Player имеет три типа с предопределенными командами
Тип состояния | Команды | |||
---|---|---|---|---|
PlayPauseType | PLAY, PAUSE | |||
Rewind26FastforwardType | RewindFastforwardType | RewindFastforwardType | Rewind NextPreviousType | NEXT, PREVIOUS |
Эти типы могут быть преобразованы из Open и Closed в 1 и 0 с помощью кода, аналогичного Contact Item (OpenClosedType)
PointType
См. Пункт Location
Rollershutter Диммер В дополнение к типам команд типа Dimmer элемент Rollershutter принимает StopMoveType с командами STOP и MOVEString Item
Чтобы преобразовать состояние элемента, который несет StringType, можно вызвать метод toString.
Если элемент возвращает строку, содержащую значение в виде шестнадцатеричного числа, его можно преобразовать в целое число с помощью
Switch Item
Switch Item несет OnOffType. OnOffType - это перечисление. Можно преобразовать из ВКЛ и ВЫКЛ в 1 и 0 с помощью кода, подобного следующему:
Deeper Dive
При взаимодействии с состояниями элемента необходимо проявлять осторожность, чтобы понять разницу между объектами и примитивами.
Как и все объектно-ориентированные компьютерные языки, Java и Rules DSL реализовали концепцию наследования.Однако наследование применяется только к объектам, а , а не , применяется к примитивам; примерами примитивов являются целые
и логические
.
Наследование позволяет взять существующий тип объекта, называемый классом, и добавить к нему, чтобы превратить его во что-то другое.
Это «нечто иное» становится Дочерним от исходного Класса, родителем. Ребенок по-прежнему может делать все, что может делать родитель.
Базовый класс верхнего уровня для всех объектов в Java и DSL правил называется просто Object
.
Помимо других полезных вещей, класс Object
реализует метод под названием toString
.
А поскольку Object
является родительским для всех объектов, ВСЕ классы также реализуют метод toString
. Однако примитивы не наследуются от Object.
Они ни от чего не наследуются, и у них вообще нет никаких методов, включая отсутствие метода toString.
Объекты обычно оснащены множеством других методов преобразования типов, в то время как примитивы не поддерживают преобразование типов.Это различие очень важно при попытке использовать результат вычисления и применить его к состоянию статьи. sendCommand
- это универсальное действие, которое должно работать со всеми типами элементов.
Действия поддерживают только два аргумента String, поскольку все объекты будут поддерживать преобразование в String
. sendCommand (MyItem, new_state)
автоматически использует метод MyItem.toString
для преобразования MyItem в строку.
Он также попытается сделать это со вторым аргументом, если new_state
еще не является строкой.Однако, если второй аргумент является примитивом, а не объектом, он не переносит метод toString
.
Таким образом, Rules DSL не сможет преобразовать new_state
как String.
Как следствие, использование sendCommand (MyItem, примитив)
, использующего примитив в качестве второго аргумента, почти всегда будет терпеть неудачу.
Различный синтаксис для общего и зависящего от цели различается и приведен в таблице ниже:
Общий (Действие) | Конкретный (Метод) |
---|---|
postUpdate (MyItem, new_state) | MyItem.postUpdate (new_state) |
sendCommand (MyItem, new_state) | MyItem.sendCommand (new_state) |
Преимущество использования объектов над примитивами проявляется в следующих автоматически вызываемых преобразованиях типов Объектом в зависимости от контекста.
При использовании метода MyItems.sendCommand ()
, принадлежащего MyItem, будет использоваться метод sendCommand
, который подходит для выполнения необходимых преобразований типов.Например, класс NumberItem
будет иметь sendCommand (int)
, sendCommand (long)
, sendCommand (float)
, sendCommand (double)
, sendCommand (Number)
, sendCommand (DecimalType )
и sendCommand (String)
метод.
Каждый из этих отдельных методов индивидуально написан для обработки всех этих различных типов объектов.
MyItem автоматически применит метод, соответствующий типу аргумента.
Неявные переменные внутри блока выполнения
Помимо неявно доступных переменных для элементов и команд / состояний, правила могут иметь дополнительные предварительно определенные переменные в зависимости от их триггеров:
-
получено Команда
- неявно доступна в каждом правиле, которое по крайней мере один триггер командного события. -
previousState
- неявно доступно в каждом правиле, имеющем хотя бы один триггер события изменения статуса. -
newState
- неявно доступно в каждом правиле, которое имеет хотя бы один триггер события обновления или изменения статуса. -
triggeringItemName
- неявно доступно в каждом правиле, которое имеет хотя бы одно обновление статуса, изменение статуса или триггер командного события. -
triggeringItem
- неявно доступен в каждом правиле, имеющем триггер «Член в». -
receiveEvent
- неявно доступно в каждом правиле, имеющем канальный триггер.
Ранний возврат
Из правила можно вернуться раньше, не выполняя остальные инструкции, например:
Предостережение: обратите внимание на точку с запятой после оператора return, который завершает команду без дополнительного аргумента.
Concurrency Guard
Если правило срабатывает при событиях пользовательского интерфейса, может потребоваться защита от параллелизма.
Преобразования
Сервисы преобразования openHAB могут использоваться в правилах для преобразования / преобразования / преобразования данных.
Общий синтаксис выглядит следующим образом:
-
<идентификатор-преобразования>
- Сокращенный идентификатор службы преобразования -
<трансф. выражение или трансф. имя файла>
- Специфическая служба преобразования -
<входные данные или переменная>
- Данные для преобразования ДОЛЖНЫ иметь тип данных Строка
Примеры:
Метод transform
пытается преобразовать данный value, и в случае неудачи возвращает исходное неизмененное значение.В отличие от метода transform
, метод transformRaw
не перехватывает какие-либо TransformationException
внутри, а генерирует их, чтобы вызывающий мог их обработать.
Пример:
Все доступные услуги преобразования см. В списке надстроек преобразования.
Ведение журнала
Вы можете создавать сообщения журнала из ваших правил, чтобы облегчить отладку. Есть несколько методов ведения журнала, доступных из ваших правил, подписи Java:
В каждом случае параметр loggerName
комбинируется со строкой org.openhab.core.model.script.
, чтобы создать имя регистратора log4j.
Например, если ваш файл правил содержит следующее сообщение журнала:
, то регистратор, который вы должны настроить, чтобы ваши сообщения появлялись в консоли, был бы:
Примеры правил
Ниже приведены некоторые примеры общих правил:
Далее Примеры
Еще много примеров можно найти в категории «Учебники и примеры» (открывается в новом окне) форума сообщества.
Leave a Comment