/** * <p>Performs an xor on an array of Booleans.</p> * * <pre> * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.TRUE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.FALSE, Boolean.FALSE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.FALSE }) = Boolean.TRUE * </pre> * * @param array an array of {@code Boolean}s * @return {@code true} if the xor is successful. * @throws IllegalArgumentException if {@code array} is {@code null} * @throws IllegalArgumentException if {@code array} is empty. * @throws IllegalArgumentException if {@code array} contains a {@code null} */ public static Boolean xor(final Boolean... array) { if (array == null) { throw new IllegalArgumentException("The Array must not be null"); } if (array.length == 0) { throw new IllegalArgumentException("Array is empty"); } try { final boolean[] primitive = ArrayUtils.toPrimitive(array); return xor(primitive) ? Boolean.TRUE : Boolean.FALSE; } catch (final NullPointerException ex) { throw new IllegalArgumentException("The array must not contain any null elements"); } }
@Test(expected = IllegalArgumentException.class) public void testXor_primitive_nullInput() { BooleanUtils.xor((boolean[]) null); }
@Test(expected = IllegalArgumentException.class) public void testXor_object_nullInput() { BooleanUtils.xor((Boolean[]) null); }
@Test(expected = IllegalArgumentException.class) public void testXor_object_nullElementInput() { BooleanUtils.xor(new Boolean[] {null}); }
@Test(expected = IllegalArgumentException.class) public void testXor_primitive_emptyInput() { BooleanUtils.xor(new boolean[] {}); }
@Test(expected = IllegalArgumentException.class) public void testXor_object_emptyInput() { BooleanUtils.xor(new Boolean[] {}); }
@Test public void testXor_primitive_validInput_2items() { assertEquals( "true ^ true", true ^ true , BooleanUtils.xor(new boolean[] { true, true })); assertEquals( "false ^ false", false ^ false, BooleanUtils.xor(new boolean[] { false, false })); assertEquals( "true ^ false", true ^ false, BooleanUtils.xor(new boolean[] { true, false })); assertEquals( "false ^ true", false ^ true, BooleanUtils.xor(new boolean[] { false, true })); }
@Test public void testXor_object_validInput_2items() { assertEquals( "false ^ false", false ^ false, BooleanUtils .xor(new Boolean[] { Boolean.FALSE, Boolean.FALSE }) .booleanValue()); assertEquals( "false ^ true", false ^ true, BooleanUtils .xor(new Boolean[] { Boolean.FALSE, Boolean.TRUE }) .booleanValue()); assertEquals( "true ^ false", true ^ false, BooleanUtils .xor(new Boolean[] { Boolean.TRUE, Boolean.FALSE }) .booleanValue()); assertEquals( "true ^ true", true ^ true, BooleanUtils .xor(new Boolean[] { Boolean.TRUE, Boolean.TRUE }) .booleanValue()); }
"false ^ false ^ false", false ^ false ^ false, BooleanUtils.xor(new boolean[] { false, false, false })); BooleanUtils.xor(new boolean[] { false, false, true })); BooleanUtils.xor(new boolean[] { false, true, false })); BooleanUtils.xor(new boolean[] { false, true, true })); BooleanUtils.xor(new boolean[] { true, false, false })); BooleanUtils.xor(new boolean[] { true, false, true })); BooleanUtils.xor(new boolean[] { true, true, false })); BooleanUtils.xor(new boolean[] { true, true, true }));
"false ^ false ^ false", false ^ false ^ false, BooleanUtils.xor( new Boolean[] { Boolean.FALSE, false ^ false ^ true, BooleanUtils .xor( new Boolean[] { Boolean.FALSE, false ^ true ^ false, BooleanUtils .xor( new Boolean[] { Boolean.FALSE, true ^ false ^ false, BooleanUtils .xor( new Boolean[] { Boolean.TRUE, "true ^ false ^ true", true ^ false ^ true, BooleanUtils.xor( new Boolean[] { Boolean.TRUE,
@Bean public String vIdmPubKey(@Value("${security.oauth2.resource.jwt.key-uri:}") String vIdmPubKeyUrl, @Value("${security.oauth2.resource.jwt.key-value:}") String vIdmPubKeyValue) { if (!BooleanUtils.xor(new boolean[]{StringUtils.isEmpty(vIdmPubKeyUrl), StringUtils.isEmpty(vIdmPubKeyValue)})) { throw new IllegalArgumentException("Exactly one of security.oauth2.resource.jwt.key-uri/value must be configured"); } return vIdmPubKeyUrl; }
/** * <p>Performs an xor on an array of Booleans.</p> * * <pre> * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.TRUE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.FALSE, Boolean.FALSE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.FALSE }) = Boolean.TRUE * </pre> * * @param array an array of {@code Boolean}s * @return {@code true} if the xor is successful. * @throws IllegalArgumentException if {@code array} is {@code null} * @throws IllegalArgumentException if {@code array} is empty. * @throws IllegalArgumentException if {@code array} contains a {@code null} */ public static Boolean xor(final Boolean... array) { if (array == null) { throw new IllegalArgumentException("The Array must not be null"); } if (array.length == 0) { throw new IllegalArgumentException("Array is empty"); } try { final boolean[] primitive = ArrayUtils.toPrimitive(array); return xor(primitive) ? Boolean.TRUE : Boolean.FALSE; } catch (final NullPointerException ex) { throw new IllegalArgumentException("The array must not contain any null elements"); } }
/** * <p>Performs an xor on an array of Booleans.</p> * * <pre> * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.TRUE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.FALSE, Boolean.FALSE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.FALSE }) = Boolean.TRUE * </pre> * * @param array an array of {@code Boolean}s * @return {@code true} if the xor is successful. * @throws IllegalArgumentException if {@code array} is {@code null} * @throws IllegalArgumentException if {@code array} is empty. * @throws IllegalArgumentException if {@code array} contains a {@code null} */ public static Boolean xor(final Boolean... array) { if (array == null) { throw new IllegalArgumentException("The Array must not be null"); } if (array.length == 0) { throw new IllegalArgumentException("Array is empty"); } try { final boolean[] primitive = ArrayUtils.toPrimitive(array); return xor(primitive) ? Boolean.TRUE : Boolean.FALSE; } catch (final NullPointerException ex) { throw new IllegalArgumentException("The array must not contain any null elements"); } }
/** * <p>Performs an xor on an array of Booleans.</p> * * <pre> * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.TRUE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.FALSE, Boolean.FALSE }) = Boolean.FALSE * BooleanUtils.xor(new Boolean[] { Boolean.TRUE, Boolean.FALSE }) = Boolean.TRUE * </pre> * * @param array an array of {@code Boolean}s * @return {@code true} if the xor is successful. * @throws IllegalArgumentException if {@code array} is {@code null} * @throws IllegalArgumentException if {@code array} is empty. * @throws IllegalArgumentException if {@code array} contains a {@code null} */ public static Boolean xor(final Boolean... array) { if (array == null) { throw new IllegalArgumentException("The Array must not be null"); } if (array.length == 0) { throw new IllegalArgumentException("Array is empty"); } try { final boolean[] primitive = ArrayUtils.toPrimitive(array); return xor(primitive) ? Boolean.TRUE : Boolean.FALSE; } catch (final NullPointerException ex) { throw new IllegalArgumentException("The array must not contain any null elements"); } }
if (!BooleanUtils.xor(new boolean[] { taskCliArguments.isDirectory(), taskCliArguments.isFiles(), taskCliArguments.isFilesListConfig() })) { throw new SejdaRuntimeException(
boolean isUpvote = upDown.equals(VoteValue.UP); boolean wasUpvote = VoteValue.UP.toString().equals(saved.getValue()); boolean voteHasChanged = BooleanUtils.xor(new boolean[]{isUpvote, wasUpvote});