rulebook-core/src/main/java/com/deliveredtechnologies/rulebook/util/ArrayUtils.java
@SuppressWarnings("unchecked")
  public static <T> T[] combine(T[] array1, T[] array2) {
    return combine(array1, array2, array1.length + array2.length);
  }
@SuppressWarnings("unchecked")
  public static <T> T[] combine(T[] array1, T[] array2) {
    return combine(array1, array2, array1.length + array2.length);
  }
The combine() static method combines the contents of two arrays into a single array of the same type.
@param array1  the array to be concatenated on the left
@param array2  the array to be concatenated on the right
@param <T>     the type of array
@return        a concatenation of array1 and array2