reactor-core/src/main/java/reactor/core/publisher/Operators.java
public static boolean validate(@Nullable Subscription current, Subscription next) {
		Objects.requireNonNull(next, "Subscription cannot be null");
		if (current != null) {
			next.cancel();
			//reportSubscriptionSet();
			return false;
		}

		return true;
	}
public static boolean validate(@Nullable Subscription current, Subscription next) {
		Objects.requireNonNull(next, "Subscription cannot be null");
		if (current != null) {
			next.cancel();
			//reportSubscriptionSet();
			return false;
		}

		return true;
	}
public static boolean validate ( @ Nullable Subscription current , Subscription next ) { Objects . requireNonNull ( next , "Subscription cannot be null" ) ; if ( current != null ) { next . cancel ( ) ; //reportSubscriptionSet(); return false ; } return true ; }
Check Subscription current state and cancel new Subscription if current is set,
or return true if ready to subscribe.

@param current current Subscription, expected to be null
@param next new Subscription
@return true if Subscription can be used
Check Subscription current state and cancel new Subscription if current is set or return true if ready to subscribe .