Class DataListUtil

java.lang.Object
com.almis.awe.model.util.data.DataListUtil

public final class DataListUtil extends Object
DataList Class Data list formatted as an standard data output
Author:
Pablo GARCIA - 24/JUN/2010
  • Method Details

    • getMapper

      public static com.fasterxml.jackson.databind.ObjectMapper getMapper()
      Retrieve object mapper
      Returns:
      ObjectMapper
    • getData

      public static String getData(DataList list, Integer rowNumber, String key)
      Returns the value data by (rowNumber, hashKey)
      Parameters:
      list - DataList
      rowNumber - Row number
      key - Column name
      Returns:
      Single Value Data
    • getCellData

      public static CellData getCellData(DataList list, Integer rowNumber, String columnName)
      Returns the cellData value by (rowNumber, columnName)
      Parameters:
      list - DataList
      rowNumber - Row number
      columnName - Column name
      Returns:
      Single cellData
    • getRow

      public static Map<String,CellData> getRow(DataList list, int rowNumber)
      Returns the HasMap Row by (rowNumber)
      Parameters:
      list - DataList
      rowNumber - Row number
      Returns:
      Single Hash Map
    • getRowIndex

      public static int getRowIndex(DataList list, String columnIdentifier, Object rowIdentifier)
      Retrieve the row index for an identifier
      Parameters:
      list - DataList
      columnIdentifier - Column identifier
      rowIdentifier - Row identifier
      Returns:
      Row index
    • addColumn

      public static void addColumn(DataList list, String columnName, String defaultValue)
      Set column Name and it's value per line
      Parameters:
      list - DataList
      columnName - Column name (alias)
      defaultValue - Default value
    • copyColumn

      public static void copyColumn(DataList target, String targetColumnName, DataList source, String sourceColumnName)
      Copy column from other datalist
      Parameters:
      target - Target datalist
      targetColumnName - Target column
      source - Source datalist
      sourceColumnName - Source column
    • renameColumn

      public static void renameColumn(DataList dataList, String sourceColumnName, String targetColumnName)
      Rename column in datalist
      Parameters:
      dataList - DataList
      sourceColumnName - Source column name
      targetColumnName - Target column name
    • addColumn

      public static void addColumn(DataList list, String columnName, List<?> columnValues)
      Set column Name and it's value per line
      Parameters:
      list - Datalist
      columnName - Column name (alias)
      columnValues - List with column values
    • getDataAsArray

      public static String[] getDataAsArray(DataList dataList, List<String> columnList)
      Returns the datalist as a string array
      Parameters:
      dataList - Datalist
      columnList - Column order
      Returns:
      DataList as a string array
    • asBeanList

      public static <T> List<T> asBeanList(@NonNull @NonNull DataList dataList, Class<T> beanClass)
      Return the datalist as bean list
      Type Parameters:
      T - class type
      Parameters:
      dataList - datalist
      beanClass - bean class
      Returns:
      bean list
    • getParameterBeanValue

      public static <T> T getParameterBeanValue(Class<T> beanClass, Map<String,Object> paramsMap)
      Retrieve parameter as bean value from JSON. You can use Spring Formatter SPI with annotations
      Type Parameters:
      T - Bean type
      Parameters:
      beanClass - Bean class
      paramsMap - Parameter map
      Returns:
      Bean value
    • getParameterBeanListValue

      public static <T> List<T> getParameterBeanListValue(Class<T> beanClass, Map<String,Object> paramsMap)
      Retrieve parameter as bean list value. You can use Spring Formatter SPI with annotations.
      Parameters:
      beanClass - Bean class
      paramsMap - Parameter map
      Returns:
      Bean list
    • initializeList

      public static <T> List<T> initializeList(List<T> valueList, Class<T> beanClass) throws AWException
      Initialize bean list
      Type Parameters:
      T - bean class
      Parameters:
      valueList - Value list of field
      beanClass - Bean class
      Returns:
      Initialized bean list
      Throws:
      AWException - AWE exception
    • fromBeanList

      public static <T> DataList fromBeanList(List<T> beanList)
      Return the datalist as bean list
      Type Parameters:
      T - class type
      Parameters:
      beanList - bean class
      Returns:
      bean list
    • addColumnWithOneRow

      public static void addColumnWithOneRow(DataList list, String columnName, Object cellValue)
      Add a column with one row value
      Parameters:
      list - DataList
      columnName - Column name (alias)
      cellValue - Cell value
    • getColumn

      public static List<CellData> getColumn(DataList list, String columnName)
      Retrieve a column data
      Parameters:
      list - DataList
      columnName - Column name (alias)
      Returns:
      Column object list
    • getColumnAsArrayNode

      public static com.fasterxml.jackson.databind.node.ArrayNode getColumnAsArrayNode(DataList list, String columnName)
      Retrieve a column data as QueryParameter
      Parameters:
      list - DataList
      columnName - Column name (alias)
      Returns:
      Column object list
    • sort

      public static void sort(DataList list, List<SortColumn> sortList)
      Sort datalist
      Parameters:
      list - DataList to sort
      sortList - Sort by field list
    • sort

      public static void sort(DataList list, String columnId, String direction)
      Sort datalist
      Parameters:
      list - DataList to sort
      columnId - Sort by field list
      direction - Sort direction
    • sort

      public static void sort(DataList list, List<SortColumn> sortColumnList, boolean nullsFirst)
      Sort datalist set nulls values position
      Parameters:
      list - DataList to sort
      sortColumnList - List with sort columns
      nullsFirst - Null values at first
    • filter

      public static void filter(DataList list, String column, String value)
      Remove the rows whose column value is distinct to the value
      Parameters:
      list - DataList to filter
      column - column to check
      value - value to check
    • filter

      public static void filter(DataList list, FilterColumn... filterColumns)
      Remove the rows whose column value is distinct to the value
      Parameters:
      list - DataList to filter
      filterColumns - columns to check
    • filterContains

      public static void filterContains(DataList list, FilterColumn... filterColumns)
      Remove the rows whose column value doesn't contains the defined values
      Parameters:
      list - DataList to filter
      filterColumns - columns to check
    • getColumnList

      public static List<String> getColumnList(DataList list)
      Retrieve dataList column names
      Parameters:
      list - Datalist
      Returns:
      Column list
    • hasColumn

      public static boolean hasColumn(DataList list, String columnId)
      Retrieve dataList column names
      Parameters:
      list - Datalist
      Returns:
      Column list
    • distinct

      public static void distinct(DataList list, List<SortColumn> sortColumns)
      Keeps only distinct values of given fields
      Parameters:
      list - DataList
      sortColumns - Sort by field list