Package org.apache.camel.processor.aggregate

Examples of org.apache.camel.processor.aggregate.OptimisticLockRetryPolicy


public class OptimisticLockRetryPolicyTest extends TestCase {

    private static long precision = 10L; // give or take 10ms

    public void testRandomBackOff() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(true);
        policy.setExponentialBackOff(false);
        policy.setMaximumRetryDelay(500L);

        for (int i = 0; i < 10; i++) {
            long elapsed = doDelay(policy, i);

            assertTrue(elapsed <= policy.getMaximumRetryDelay() + precision && elapsed >= 0);
        }
    }
View Full Code Here


            assertTrue(elapsed <= policy.getMaximumRetryDelay() + precision && elapsed >= 0);
        }
    }

    public void testExponentialBackOff() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(true);
        policy.setMaximumRetryDelay(0L);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 6; i++) {
            long elapsed = doDelay(policy, i);

            assertDelay(50L << i, elapsed);
View Full Code Here

            assertDelay(50L << i, elapsed);
        }
    }

    public void testExponentialBackOffMaximumRetryDelay() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(true);
        policy.setMaximumRetryDelay(200L);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 10; i++) {
            long elapsed = doDelay(policy, i);

            switch (i) {
View Full Code Here

            }
        }
    }

    public void testRetryDelay() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(false);
        policy.setMaximumRetryDelay(0L);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 10; i++) {
            long elapsed = doDelay(policy, i);

            assertDelay(50L, elapsed);
View Full Code Here

            assertDelay(50L, elapsed);
        }
    }

    public void testMaximumRetries() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(false);
        policy.setMaximumRetryDelay(0L);
        policy.setMaximumRetries(2);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 10; i++) {
            switch (i) {
            case 0:
            case 1:
                assertTrue(policy.shouldRetry(i));
                break;
            default:
                assertFalse(policy.shouldRetry(i));
            }
        }
    }
View Full Code Here

            public void configure() throws Exception {
                from("direct:fails")
                    .aggregate(header("id"), new BodyInAggregatingStrategy())
                        .aggregationRepository(new AlwaysFailingRepository())
                        .optimisticLocking()
                        .optimisticLockRetryPolicy(new OptimisticLockRetryPolicy().maximumRetries(5))
                        .completionSize(2)
                        .to("mock:result");

                from("direct:everysecondone")
                    .aggregate(header("id"), new BodyInAggregatingStrategy())
View Full Code Here

public class OptimisticLockRetryPolicyTest extends TestCase {

    private static long precision = 5L; // give or take 5ms

    public void testRandomBackOff() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(true);
        policy.setExponentialBackOff(false);
        policy.setMaximumRetryDelay(500L);

        for (int i = 0; i < 10; i++) {
            long start = System.currentTimeMillis();
            policy.doDelay(i);
            long elapsed = System.currentTimeMillis() - start;
            assertTrue(elapsed <= policy.getMaximumRetryDelay() + precision && elapsed >= 0);
        }
    }
View Full Code Here

            assertTrue(elapsed <= policy.getMaximumRetryDelay() + precision && elapsed >= 0);
        }
    }

    public void testExponentialBackOff() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(true);
        policy.setMaximumRetryDelay(0L);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 10; i++) {
            long start = System.currentTimeMillis();
            policy.doDelay(i);
            long elapsed = System.currentTimeMillis() - start;
            assertTrue(elapsed >= (policy.getRetryDelay() << i) - precision);
            assertTrue(elapsed <= (policy.getRetryDelay() << i) + precision);
        }
    }
View Full Code Here

            assertTrue(elapsed <= (policy.getRetryDelay() << i) + precision);
        }
    }

    public void testExponentialBackOffMaximumRetryDelay() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(true);
        policy.setMaximumRetryDelay(200L);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 10; i++) {
            long start = System.currentTimeMillis();
            policy.doDelay(i);
            long elapsed = System.currentTimeMillis() - start;
            switch (i) {
            case 0:
                assertTrue(elapsed <= 50 + precision);
                assertTrue(elapsed >= 50 - precision);
View Full Code Here

            }
        }
    }

    public void testRetryDelay() throws Exception {
        OptimisticLockRetryPolicy policy = new OptimisticLockRetryPolicy();
        policy.setRandomBackOff(false);
        policy.setExponentialBackOff(false);
        policy.setMaximumRetryDelay(0L);
        policy.setRetryDelay(50L);

        for (int i = 0; i < 10; i++) {
            long start = System.currentTimeMillis();
            policy.doDelay(i);
            long elapsed = System.currentTimeMillis() - start;
            assertTrue(elapsed <= policy.getRetryDelay() + precision);
            assertTrue(elapsed >= policy.getRetryDelay() - precision);
        }
    }
View Full Code Here

TOP

Related Classes of org.apache.camel.processor.aggregate.OptimisticLockRetryPolicy

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.