Examples of TimeConstrainedProcessTracker


Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

                TENANT_ID,
                ProcessId.newProcessId(),
                "Testable Time Constrained Process",
                5000L);

        TimeConstrainedProcessTracker tracker =
                process.timeConstrainedProcessTracker();

        LevelDBUnitOfWork.start(this.database);
        trackerRepository.save(tracker);
        LevelDBUnitOfWork.current().commit();

        process.confirm1();

        assertFalse(received);
        assertFalse(process.isCompleted());
        assertFalse(process.didProcessingComplete());
        assertEquals(ProcessCompletionType.NotCompleted, process.processCompletionType());

        process.confirm2();

        assertFalse(received);
        assertTrue(process.isCompleted());
        assertTrue(process.didProcessingComplete());
        assertEquals(ProcessCompletionType.CompletedNormally, process.processCompletionType());
        assertNull(process.timedOutDate());

        tracker.informProcessTimedOut();

        assertFalse(received);
        assertFalse(process.isTimedOut());

        assertFalse(trackerRepository.allTrackers(process.tenantId()).isEmpty());
View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

                TENANT_ID,
                ProcessId.newProcessId(),
                "Testable Time Constrained Process 1",
                1L); // forced timeout

        TimeConstrainedProcessTracker tracker1 =
                process1.timeConstrainedProcessTracker();

        TestableTimeConstrainedProcess process2 =
                new TestableTimeConstrainedProcess(
                        TENANT_ID,
                        ProcessId.newProcessId(),
                        "Testable Time Constrained Process 2",
                        5000L);

        TimeConstrainedProcessTracker tracker2 =
                process2.timeConstrainedProcessTracker();

        LevelDBUnitOfWork.start(this.database);
        trackerRepository.save(tracker1);
        trackerRepository.save(tracker2);
View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

            this.productRepository().save(product);

            ProcessId processId = ProcessId.existingProcessId(product.discussionInitiationId());

            TimeConstrainedProcessTracker tracker =
                    this.processTrackerRepository()
                        .trackerOfProcessId(aCommand.getTenantId(), processId);

            tracker.completed();

            this.processTrackerRepository().save(tracker);

            ApplicationServiceLifeCycle.success();
View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

            }

            String timedOutEventName =
                    ProductDiscussionRequestTimedOut.class.getName();

            TimeConstrainedProcessTracker tracker =
                    new TimeConstrainedProcessTracker(
                            product.tenantId().id(),
                            ProcessId.newProcessId(),
                            "Create discussion for product: "
                                + product.name(),
                            new Date(),
                            5L * 60L * 1000L, // retries every 5 minutes
                            3, // 3 total retries
                            timedOutEventName);

            this.processTrackerRepository().save(tracker);

            product.startDiscussionInitiation(tracker.processId().id());

            this.productRepository().save(product);

            ApplicationServiceLifeCycle.success();

View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

    @Override
    public TimeConstrainedProcessTracker trackerOfProcessId(String aTenantId, ProcessId aProcessId) {
        LevelDBKey primaryKey = new LevelDBKey(PRIMARY, aTenantId, aProcessId.id());

        TimeConstrainedProcessTracker tracker =
                LevelDBUnitOfWork.readOnly(this.database())
                    .readObject(
                            primaryKey.key().getBytes(),
                            TimeConstrainedProcessTracker.class);
View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

        Date now = new Date();

        Iterator<TimeConstrainedProcessTracker> iterator = trackers.iterator();

        while (iterator.hasNext()) {
            TimeConstrainedProcessTracker tracker = iterator.next();

            if (tracker != null) {
                Date timeout = new Date(tracker.timeoutOccursOn());

                if (timeout.after(now)) {
                    iterator.remove();
                }
            }
View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

        LevelDBUnitOfWork uow = LevelDBUnitOfWork.readOnly(this.database());

        List<Object> keys = uow.readKeys(allTrackerKey);

        for (Object trackerId : keys) {
            TimeConstrainedProcessTracker tracker =
                    uow.readObject(
                            trackerId.toString().getBytes(),
                            TimeConstrainedProcessTracker.class);

            if (tracker != null) {
View Full Code Here

Examples of com.saasovation.common.domain.model.process.TimeConstrainedProcessTracker

        LevelDBUnitOfWork uow = LevelDBUnitOfWork.readOnly(this.database());

        List<Object> keys = uow.readKeys(allTrackerKey);

        for (Object trackerId : keys) {
            TimeConstrainedProcessTracker tracker =
                    uow.readObject(
                            trackerId.toString().getBytes(),
                            TimeConstrainedProcessTracker.class);

            if (tracker != null) {
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.