Package ru.bgcrm.util

Class Utils

java.lang.Object
ru.bgcrm.util.Utils

public class Utils extends Object
  • Field Details

    • DEFAULT_DELIM

      public static final String DEFAULT_DELIM
      Default delimiter: ", "
      See Also:
    • HEX

      public static final char[] HEX
    • HEX_LOWERCASE

      public static final char[] HEX_LOWERCASE
  • Constructor Details

    • Utils

      public Utils()
  • Method Details

    • parseInt

      public static int parseInt(String str)
      Преобразует строку в int, в случае ошибки возращает 0.
      Parameters:
      str - входная строка
      Returns:
      число преобразованное из строки или 0 в случае ошибки
    • parseInt

      public static int parseInt(String str, int defaultValue)
      Преобразует строку в int, в случае ошибки возращает defaultValue.
      Parameters:
      str - входная строка
      defaultValue - значение возращаемое в случае ошибки при преобразовании
      Returns:
      число преобразованное из строки или defaultValue в случае ошибки
    • parseLong

      public static long parseLong(String str)
      Преобразует строку в long, в случае ошибки возращает 0.
      Parameters:
      str - входная строка
      Returns:
      число преобразованное из строки или 0 в случае ошибки
    • parseLong

      public static long parseLong(String str, long defaultValue)
      Преобразует строку в long, в случае ошибки возращает defaultValue.
      Parameters:
      str - входная строка
      defaultValue - значение возращаемое в случае ошибки при преобразовании
      Returns:
      число преобразованное из строки или defaultValue в случае ошибки
    • parseBigDecimal

      public static BigDecimal parseBigDecimal(Object obj, BigDecimal defaultValue)
      Converts an object's string representation to a decimal object.
      Parameters:
      obj - the object.
      defaultValue - the default value in case of parsing exception.
      Returns:
      decimal object, defaultValue for any unparsable value.
    • parseBigDecimal

      public static BigDecimal parseBigDecimal(Object obj)
      Converts an object's string representation to a decimal object.
      Parameters:
      obj - the object.
      Returns:
      decimal object, null when str was null, BigDecimal.ZERO for any unparsable value.
    • parseBoolean

      public static boolean parseBoolean(String str)
      Вызывает функию
      invalid reference
      #parseBoolean(String, boolean)
      со вторым параметром false.
      Parameters:
      str -
      Returns:
    • isStringNumber

      public static boolean isStringNumber(String str)
      Определяет хранится ли в строке число.
      Parameters:
      str -
      Returns:
    • parseBoolean

      public static Boolean parseBoolean(String str, Boolean defaultValue)
      Преобразует строку в boolean.
      Parameters:
      str - строка.
      defaultValue - значение по-умолчанию.
      Returns:
      true - если str равно "1", "TRUE", "YES", "ON" без учёта регистра; false - если str равно "0", "FALSE", "NO" без учёта регистра; в ином случае - defaultValue.
    • booleanToStringInt

      public static final String booleanToStringInt(boolean value)
      Преобразует boolean в строку "1" или "0".
      Parameters:
      value -
      Returns:
    • maskNull

      public static final <T> T maskNull(T value, T defaultValue)
      Возвращает объект либо иное значение, если объект null.
      Parameters:
      value -
      Returns:
    • maskNull

      public static final String maskNull(String value)
      Преобразует входную строку в пустую, если она null.
      Parameters:
      value -
      Returns:
    • maskNullDecimal

      public static final BigDecimal maskNullDecimal(BigDecimal value)
      Возвращает входное значение тогда и только тогда, когда оно не равно null, иначе возвращает BigDecimal.ZERO.
      Parameters:
      value -
      Returns:
    • emptyToNull

      public static final <T, C extends Collection<T>> C emptyToNull(C value)
      Converts to null an empty collection
      Parameters:
      value - the input collection
      Returns:
      the input collection, if it is not empty, or null
    • maskEmpty

      public static final String maskEmpty(String value, String defaultValue)
      Преобразует входную строку в значение по-умолчанию, если она null или пустая.
      Parameters:
      value -
      Returns:
    • isEmptyString

      public static final boolean isEmptyString(String value)
      Проверяет, является ли строка пустой или null.
      Parameters:
      value - проверяемая строка
      Returns:
      true - если пустая или null
    • isBlankString

      public static final boolean isBlankString(String value)
      Проверяет, является ли строка пустой, состоящей из пробельных символов или null.
      Parameters:
      value - проверяемая строка
      Returns:
      true если пустая, состоит из пробельных символов или null
    • notEmptyString

      public static final boolean notEmptyString(String value)
      Проверяет, является ли строка пустой или null.
      Parameters:
      value - проверяемая строка
      Returns:
      false если пустая или null
    • notBlankString

      public static final boolean notBlankString(String value)
      Checks if string value is blank.
      Parameters:
      value - checked value.
      Returns:
      false when value is null, empty or has only whitespace chars.
    • notBlankStrings

      public static final boolean notBlankStrings(String... value)
      Checks all the passed values with notBlankString(String).
      Parameters:
      value - values.
      Returns:
      value is not null, all the values aren't blank.
    • countLines

      public static final int countLines(String value)
      Counts the number of lines in string
      Parameters:
      value - the string
      Returns:
      the count of \n chars
    • isPositive

      public static final boolean isPositive(Integer value)
      Is the integer value greater than zero. To do not create lambda functions.
      Parameters:
      value -
      Returns:
    • isValidEmail

      public static final boolean isValidEmail(String value)
      Is the string a valid E-Mail address.
      Parameters:
      value -
      Returns:
    • toString

      public static final String toString(Collection<?> valuesList)
      Вызывается toString(Collection, String, String) с параметром emptyValue="", delim=DEFAULT_DELIM.
      Parameters:
      valuesList -
      Returns:
    • toString

      public static final String toString(Collection<?> valuesList, String emptyValue, String delim)
      Преобразовывает коллекцию в строку, разделенную значениями delim.
      Parameters:
      valuesList - коллектиция
      emptyValue - значение при пустом списке
      delim - разделитель
      Returns:
    • toIntegerList

      public static final List<Integer> toIntegerList(String valuesStr)
      Преобразует строку с разделителями - запятыми или точками с запятой к списку Integer.
      Parameters:
      valuesStr -
      Returns:
    • toIntegerList

      public static final List<Integer> toIntegerList(String valuesStr, String delims)
      Преобразует строку с произвольными разделителями - символами в delims в список Integer.
      Parameters:
      valuesStr -
      delims -
      Returns:
    • toIntegerSet

      public static final Set<Integer> toIntegerSet(String valuesStr)
      Преобразование строки, разделенной запятыми к набору Integer.
      Parameters:
      valuesStr -
      Returns:
    • toSet

      public static final Set<String> toSet(String valuesStr, String delims)
      Преобразует строку разделённую произвольными разделителями - симвоолами в delims в набор строк.
      Parameters:
      valuesStr -
      delims -
      Returns:
    • toSet

      public static final Set<String> toSet(String valuesStr)
      Преобразует строку разделённую , либо ; в набор строк.
      Parameters:
      valuesStr -
      Returns:
    • toList

      public static final List<String> toList(String valuesStr)
      Преобразует строку разделённую , либо ; в список строк.
      Parameters:
      valuesStr -
      Returns:
    • toList

      public static final List<String> toList(String value, String delims)
      Converts a string with obitary delimeter chars to list of strings.
      Parameters:
      value - incoming string.
      delims - delimeter chars.
      Returns:
      list of tokens, each of that is not empty string.
    • toText

      public static final String toText(List<String> config, String separator)
      Converts a string with obitary delimeter chars to set of strings.
      Parameters:
      value - incoming string.
      delims - delimeter chars.
      Returns:
      set of tokens, each of that is not empty string.
    • getObjectIdsList

      public static final <T extends IdTitle> List<Integer> getObjectIdsList(Collection<T> list)
      Возвращает список кодов объектов.
      Parameters:
      list -
      Returns:
    • getObjectIdsSet

      public static final <T extends IdTitle> Set<Integer> getObjectIdsSet(Collection<T> list)
      Возаращает набор кодов объектов.
      Parameters:
      list -
      Returns:
    • getObjectIds

      public static final <T extends Id> String getObjectIds(Collection<T> list)
      Возвращает коды объектов из коллекции через запятую.
      Parameters:
      list -
      Returns:
    • getObjectIds

      public static final <T extends Id> String getObjectIds(Collection<T> list, String startValues)
      Возвращает коды объектов из коллекции через запятую с указанным началом строки.
      Parameters:
      list -
      startValues - начало строки.
      Returns:
    • getObjectIds

      public static <T extends Id> String getObjectIds(Collection<T> list, String startValues, String delim)
      Возвращает коды объектов из коллекции с указанием разделителя и начала строки.
      Parameters:
      list -
      startValues - начало строки.
      delim - разделитель кодов.
      Returns:
    • getObjectTitles

      public static final <T extends Title> String getObjectTitles(Collection<T> list)
      Concatenates object titles to a comma separated string.
      Parameters:
      list - the list of titled objects
      Returns:
      comma separated string
    • getObjectTitles

      public static <T extends IdTitle> String getObjectTitles(List<T> fullList, Set<Integer> selectedIds)
      Concatenates object titles to a comma separated string.
      Parameters:
      fullList - the full object list, defines the resulting order
      selectedIds - the selected IDs
      Returns:
      comma separated string
    • getObjectTitles

      public static final <T extends IdTitle> String getObjectTitles(Map<Integer,T> fullMap, List<Integer> selectedIds)
      Concatenates object titles to a comma separated string.
      Parameters:
      fullMap - the full object map
      selectedIds - the selected IDs, defines the resulting order
      Returns:
      comma separated string
    • getObjectList

      public static final <T extends IdTitle> List<T> getObjectList(List<T> fullList, Collection<Integer> selectedIds)
      Selects objects sub-list from a given full list with IDs presented in a collection.
      Parameters:
      fullList - the full list.
      selectedIds - the IDs collection.
      Returns:
    • getObjectList

      public static final <T extends IdTitle> List<T> getObjectList(Map<Integer,T> fullMap, List<Integer> selectedIds)
      Selects objects list from a full map by a given IDs list in the same order.
      Parameters:
      fullMap - the full objects map.
      selectedIds - the IDs list.
      Returns:
    • parseIdTitleList

      public static final List<IdTitle> parseIdTitleList(String value)
      Возвращает список объектов из строки вида код:наименование; код:наименование.
      Parameters:
      value -
      Returns:
    • parseIdTitleList

      public static final List<IdTitle> parseIdTitleList(String value, String noPairValue)
      Возвращает список объектов из строки вида код:наименование; код:наименование. Если значение для второго элемента пары не указано, будет использовано переданное в параметре noPairValue
      Parameters:
      value -
      noPairValue -
      Returns:
    • addSetupPair

      public static final void addSetupPair(StringBuilder data, String prefix, String param, String value)
    • addCommaSeparated

      public static final void addCommaSeparated(StringBuilder result, String value)
      Добавляет в конец строки новое значение, отделяя запятой с пробелом, если он не первый.
      Parameters:
      result -
      value -
    • addSeparated

      public static final void addSeparated(StringBuilder result, String separator, String value)
    • formatPatternString

      public static String formatPatternString(String object, int objectId, ParamValueDAO paramValueDAO, String pattern) throws Exception
      Генерирует строку из шаблона с подстановкой макросов вида ${param_<код параметра>}.
      Parameters:
      object -
      objectId -
      paramValueDAO -
      pattern -
      Returns:
      Throws:
      Exception
    • getDigest

      public static String getDigest(String value)
      Вызывает getDigest(String, String) с кодировкой UTF-8.
      Parameters:
      value -
      Returns:
    • getDigest

      public static String getDigest(String value, String charset)
      Возвращает строковое представление MD5 хэша от входной строки.
      Parameters:
      value - входные данные
      charset - кодировка
      Returns:
      строка
    • getDigest

      public static String getDigest(byte[] value)
      HEX representation of MD5 digest.
      Parameters:
      value - digest basic.
      Returns:
      digest HEX string or null in case of any error.
    • getTmpDir

      public static String getTmpDir()
      System temp directory.
      Returns:
      value of system property 'java.io.tmpdir', or '/tmp' if it is missing.
    • createDirectoryIfNoExistInWorkDir

      public static final File createDirectoryIfNoExistInWorkDir(String dirName)
    • substringAfter

      public static final String substringAfter(String value, String token, int num)
      Возвращает остаток строки после num вхождения token в строку value.
      Parameters:
      value -
      token -
      num -
      Returns:
    • generateSecret

      public static final String generateSecret()
      Returns:
      generated random string with 32 ASCII chars.
    • getFirst

      public static <T> T getFirst(Collection<T> collection)
      Parameters:
      collection - collection of elements.
      Returns:
      the first element from collection, or null if collection is null or empty.
    • escapeXml

      public static String escapeXml(String value)
      Calls Functions.escapeXml(String) - replaces XML markup symbols to special codes.
      Parameters:
      value -
      Returns:
      the input string with replacements
    • htmlEncode

      public static String htmlEncode(String value)
      Calls UtilFunction.htmlEncode(String) - replaces only HTML tags.
      Parameters:
      value -
      Returns:
    • getOpenId

      public static int getOpenId(String url)
      Extracts entity ID from URL.
      Parameters:
      url - URL.
      Returns:
      extracted positive ID or 0 if couldn't extract.
    • setFileNameHeaders

      public static void setFileNameHeaders(javax.servlet.http.HttpServletResponse response, String fileName)
      Sets HTTP headers for downloaded file.
      Parameters:
      response -
      fileName -
    • errorAndExit

      public static void errorAndExit(int code, String message)
      Writes error message and exists the running application.
      Parameters:
      code - exit code.
      message - message.
    • newInstance

      @Deprecated public static Object newInstance(String className, Object... args) throws Exception
      Deprecated.
      The method does special JSP-specific type converting, therefore must not be called from Java code.
      Throws:
      Exception
    • hasClass

      public static boolean hasClass(Object o, String... names)
      Checks if object is instance one of classes.
      Parameters:
      o - the object to check.
      names - class names.
      Returns:
      if object o is instance any of names classes.
    • getSystemProperty

      public static String getSystemProperty(String key, String defaultValue)
      Retrieves a property value from System.getProperty(String).
      Parameters:
      key - the key is prepended by bgerp.
      defaultValue - the default value if no property found.
      Returns:
    • format

      public static String format(BigDecimal value)
      Formats a decimal value to a regular string without trailing zeros.
      Parameters:
      value - the decimal value.
      Returns:
      empty string for null value, or formatted string.