code: public static <R> OnSubscribe<R> when(Plan0<R>... plans) {
          if (plans == null) {
              throw new NullPointerException("plans");
          }
          return when(Arrays.asList(plans));
      }
docs: Joins together the results from several patterns.