Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7   вперед  Ctrl      все
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Valentin Kolesnikov
Привет, Java Developers!

Недавно выпустил новую версию библиотеки underscore-java. Реализованы почти все функции оригинальной утилиты на javascript. Есть возможность расширять функционал. Примеры модулей math и string в этом же репозитории.

Буду рад пожеланиям и замечаниям.

Валентин


Скоро будет 5 лет с момента анонса библиотеки!
3 июн 20, 11:41    [22144768]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Есть еще такая идея. Не знаю даже к чему. К snakeYaml или к конвертерам в Yaml.
Или просто к кастомной библиотеке.

Есть инфа которая публична. Типа

thread-pool :
  idle : 10
  max : 100


И есть sensitive настройки которые могут иметь какие-то бизнес-идентификаторы, ip-шники облачных
ендпоинтов, порты, протоколы, и пароли и ключи.

jdbc:
  dc1-main-billing :
    jdbc-driver : "org.postgresql.Driver"
    jdbc-url : "jdbc:postgresql://ec2-public-ipv4-address.compute-1.amazonaws.com:5432/main-billing-node-01"
    jdbc-login : "main-bill"
    jdbc-pwd : "p123456789"


Хотелось бы их заменить на
jdbc:
  dc1-main-billing :
    jdbc-driver : "org.postgresql.Driver"
    jdbc-url : "${ENV_JDBC_URL}"
    ...


По сут мне нужен некий фасад или надстройка над Yaml моделью чтоб этот реплейсмент сделать по заказу.
Тоесть когда мне нужно.

По сути аналог спрингового
systemProperties['env']


Только без спринга.
14 июн 20, 12:57    [22150382]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
mayton,

Обычная задача программистам. Решается за неделю или быстрее.

Добавлю метод U.setValue(map, key, value).

Хорошего вам вечера!

Сообщение было отредактировано: 14 июн 20, 19:14
14 июн 20, 19:12    [22150531]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Еще наблюдение.

Мне иногда выгодно создавать properties с приоритетом. Например.

1-й приоритет - опции System.props
2й приоритет - опции OS env.

Это удобно когда ты работаешь с 2 environment ты держишь 2 bash-консоли и запусаешь одно
и то-же приложение просто в разных контекстах.

В моём кустарном проектике это выглядит примерно так.

    private String lookupSensitiveProperty(String propertyName) {
        Map<String, Object> hikariConfigMap = (Map<String, Object>) config.getRoot().get("hikariConfig");
        if (hikariConfigMap.containsKey(propertyName)) {
            return (String) hikariConfigMap.get(propertyName);
        } else if (System.getProperties().containsKey(propertyName)) {
            return System.getProperty(propertyName);
        } else if (System.getenv().containsKey(propertyName)) {
            return System.getenv().get(propertyName);
        } else {
            throw new HtmlParserException("Unable to found property " + propertyName);
        }
    }


Тоесть если логин-пароль для Hikari JDBC пула не был найден в Yaml конфиге - то мы делаем lookup
в Sys.props, и потом уже в ОС env.
14 июн 20, 19:27    [22150537]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Valentin Kolesnikov
mayton,

Обычная задача программистам. Решается за неделю или быстрее.

Добавлю метод U.setValue(map, key, value).

Хорошего вам вечера!

Спасибо.
14 июн 20, 19:29    [22150538]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Valentin Kolesnikov
mayton,

Обычная задача программистам. Решается за неделю или быстрее.

Добавлю метод U.setValue(map, key, value).

Хорошего вам вечера!


Добавил.

Хорошего вам вечера!
14 июн 20, 20:33    [22150561]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 3810
Zzz79
все это конечно же как отдельный репозиторий сдеалано и редактируется с помощью гита

Редактируется с помощью гита? Это как?
15 июн 20, 20:55    [22151247]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Дмитрий Мух
Zzz79
все это конечно же как отдельный репозиторий сдеалано и редактируется с помощью гита

Редактируется с помощью гита? Это как?


Редактируется в редакторе, а хранится в git.
16 июн 20, 13:39    [22151579]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Дмитрий Мух
Zzz79
все это конечно же как отдельный репозиторий сдеалано и редактируется с помощью гита

Редактируется с помощью гита? Это как?

Он имеет в виду что шаблон конфигурации лежит в сорцах. А его кастомизации, sensitive info, и производные
конфигурации - девопсы сами дописывают вручную. Но если надо централизовано что-то поменять то git
это снова лучший golden source.
16 июн 20, 13:42    [22151582]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Дмитрий Мух
Member

Откуда: Зеленоград
Сообщений: 3810
Стас?
16 июн 20, 14:09    [22151623]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Valentin Kolesnikov
Привет, Java Developers!

Недавно выпустил новую версию библиотеки underscore-java. Реализованы почти все функции оригинальной утилиты на javascript. Есть возможность расширять функционал. Примеры модулей math и string в этом же репозитории.

Буду рад пожеланиям и замечаниям.

Валентин


Сегодня 5 лет с момента анонса библиотеки.

За это время выпущено более 50 версий, добавлено чтение и генерация xml и json файлов.

Число звёзд на github - 283
Pull реквестов - 201
Issues - 44

Спасибо за поддержку проекта!

Хорошего вам дня!

Сообщение было отредактировано: 19 июн 20, 05:49
19 июн 20, 05:50    [22153337]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Недавно были выпущены новые версии библиотек: 1.56, 1.26, 1.13

- Added U.changeXmlEncoding(xml, encoding).
- Introduced U.setValue(map, key, newValue).
- Added U.update(map1, map2).
- Introduced methods U.gcd(value1, value2) and U.findGcd(value1, ... valuen).
- Improved U.throttle().

С уважением, Валентин
3 июл 20, 06:25    [22161360]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Недавно были выпущены новые версии библиотек: 1.57, 1.27, 1.14

- Improved U.update(map1, map2).
- Updated dependent libraries.

С уважением, Валентин
1 авг 20, 06:45    [22176469]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Число звёзд на github - 300
Pull реквестов - 217
Issues - 45

Спасибо за поддержку проекта!

Хорошего вам дня!
16 авг 20, 04:05    [22183198]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Недавно были выпущены новые версии библиотек: 1.58, 1.28, 1.15

- Fixed U.format(pattern, values) with a backslash.
- Added U.minimumDays(rows, columns, grid) method.
- Added U.topNCompetitors(numCompetitors, topNCompetitors, competitors, numReviews, reviews) method.

С уважением, Валентин
10 сен 20, 01:13    [22194496]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Недавно были выпущены новые версии библиотек: 1.59, 1.29, 1.16

- Added U.xmlToJson("<a/>", U.Mode.REPLACE_SELF_CLOSING_WITH_EMPTY).
- Introduced U.of(1, 2, 3) // or java.util.Arrays.asList(1, 2, 3) or new Integer[] {1, 2, 3} and toList().
- Fixed initialization error.

С уважением, Валентин
1 окт 20, 06:01    [22207354]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Куда делся

U.objectBuilder()


?
2 окт 20, 18:23    [22208247]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
mayton
Куда делся

U.objectBuilder()


?


Тут https://www.javadoc.io/static/com.github.javadev/underscore/1.59/com/github/underscore/lodash/U.html#objectBuilder--
3 окт 20, 18:34    [22208529]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Недавно были выпущены новые версии библиотек: 1.60, 1.30, 1.17

- Added method U.objectBuilder().add("key", U.objectBuilder()).

С уважением, Валентин
8 ноя 20, 05:56    [22228214]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Lelouch
Member

Откуда: Москва
Сообщений: 2028
Zzz79

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

В спринге для этого - https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/core/env/PropertySource.html
В рамках environment они как раз и образуют логику "используй первое найденное значение"
Например порядок поиска значений свойств (https://docs.spring.io/spring-boot/docs/2.1.9.RELEASE/reference/html/boot-features-external-config.html) как раз и задается с помощью порядка следования реализаций PropertySource
9 ноя 20, 13:45    [22228731]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Zzz79
mayton
Еще наблюдение.

Мне иногда выгодно создавать properties с приоритетом. Например.

1-й приоритет - опции System.props
2й приоритет - опции OS env.

Это удобно когда ты работаешь с 2 environment ты держишь 2 bash-консоли и запусаешь одно
и то-же приложение просто в разных контекстах.

В моём кустарном проектике это выглядит примерно так.

    private String lookupSensitiveProperty(String propertyName) {
        Map<String, Object> hikariConfigMap = (Map<String, Object>) config.getRoot().get("hikariConfig");
        if (hikariConfigMap.containsKey(propertyName)) {
            return (String) hikariConfigMap.get(propertyName);
        } else if (System.getProperties().containsKey(propertyName)) {
            return System.getProperty(propertyName);
        } else if (System.getenv().containsKey(propertyName)) {
            return System.getenv().get(propertyName);
        } else {
            throw new HtmlParserException("Unable to found property " + propertyName);
        }
    }


Тоесть если логин-пароль для Hikari JDBC пула не был найден в Yaml конфиге - то мы делаем lookup
в Sys.props, и потом уже в ОС env.

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

Нет смысла. Т.к. эту технику я применял только для утилит без SpringBoot.
9 ноя 20, 13:48    [22228733]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Lelouch
Member

Откуда: Москва
Сообщений: 2028
mayton
Zzz79
пропущено...

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

Нет смысла. Т.к. эту технику я применял только для утилит без SpringBoot.


Apache DeltaSpike не пробовали?)
9 ноя 20, 14:05    [22228742]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
mayton
Member

Откуда: loopback
Сообщений: 51504
Нет.
9 ноя 20, 14:07    [22228744]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Для новой версии библиотеки минимальная версия java будет 1.8.

С уважением, Валентин
20 ноя 20, 08:25    [22235853]     Ответить | Цитировать Сообщить модератору
 Re: Underscore.js библиотека для java.  [new]
Valentin Kolesnikov
Member

Откуда:
Сообщений: 3331
Недавно были выпущены новые версии библиотек: 1.61, 1.18

- Minimum java version is 1.8.

С уважением, Валентин
1 дек 20, 07:10    [22240655]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7   вперед  Ctrl      все
Все форумы / Java Ответить