All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.groupbyinc.common.util.JavaUtils Maven / Gradle / Ivy

There is a newer version: 198
Show newest version
package com.groupbyinc.common.util;

import com.groupbyinc.common.util.exception.GroupByUtilException;

import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * Java utilities
 *
 * @author Alan Czajkowski
 */
public final class JavaUtils {

  private JavaUtils() {
    // not publicly instantiable
  }

  /**
   * Return a non-null {@link Collection}.
   *
   * @param collection
   *         a collection (List or Set, can be null)
   *
   * @return {@link Collection} a non-null immutable collection
   */
  public static  Collection notNull(Collection collection) {
    if (collection instanceof List) {
      return notNull((List) collection);
    } else if (collection instanceof Set) {
      return notNull((Set) collection);
    }

    throw new GroupByUtilException("Not a List or Set");
  }

  /**
   * Return a non-null {@link List}.
   *
   * @param list
   *         a list (can be null)
   *
   * @return {@link List} a non-null immutable list
   */
  public static  List notNull(List list) {
    return list == null ? Collections.emptyList() : list;
  }

  /**
   * Return a non-null {@link Set}.
   *
   * @param set
   *         a set (can be null)
   *
   * @return {@link Set} a non-null immutable set
   */
  public static  Set notNull(Set set) {
    return set == null ? Collections.emptySet() : set;
  }

  /**
   * Return a non-null {@link Map}.
   *
   * @param map
   *         a map (can be null)
   *
   * @return {@link Map} a non-null immutable map
   */
  public static  Map notNull(Map map) {
    return map == null ? Collections.emptyMap() : map;
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy