Package org.axonframework.domain

Examples of org.axonframework.domain.DomainEventStream


        entityManager.clear();
        aggregate1.changeState();
        testSubject.appendEvents("test", aggregate1.getUncommittedEvents());
        aggregate1.commitEvents();

        DomainEventStream actualEventStream = testSubject.readEvents("test", aggregate1.getIdentifier());
        List<DomainEventMessage> domainEvents = new ArrayList<DomainEventMessage>();
        while (actualEventStream.hasNext()) {
            DomainEventMessage next = actualEventStream.next();
            domainEvents.add(next);
            assertEquals(aggregate1.getIdentifier(), next.getAggregateIdentifier());
        }

        assertEquals(2, domainEvents.size());
View Full Code Here


                                                                                      MetaData.emptyInstance()));

        entityManager.flush();
        entityManager.clear();

        DomainEventStream actual = testSubject.readEvents("test", aggregateIdentifier, 2);
        for (int i=2;i<=4;i++) {
            assertTrue(actual.hasNext());
            assertEquals(i, actual.next().getSequenceNumber());
        }
        assertFalse(actual.hasNext());
    }
View Full Code Here

                                                                                      MetaData.emptyInstance()));

        entityManager.flush();
        entityManager.clear();

        DomainEventStream actual = testSubject.readEvents("test", aggregateIdentifier, 2, 3);
        for (int i=2;i<=3;i++) {
            assertTrue(actual.hasNext());
            assertEquals(i, actual.next().getSequenceNumber());
        }
        assertFalse(actual.hasNext());
    }
View Full Code Here

        EntityManager entityManager = entityManagerProvider.getEntityManager();
        Iterator<? extends SerializedDomainEventData> batch = eventEntryStore.fetchFiltered(whereClause,
                                                                                            parameters,
                                                                                            batchSize,
                                                                                            entityManager);
        DomainEventStream eventStream = new CursorBackedDomainEventStream(null, batch, null, true);
        while (eventStream.hasNext()) {
            visitor.doWithEvent(eventStream.next());
        }
    }
View Full Code Here

        // the nested handler must be invoked second
        assertFalse(testSubject.entity.appliedEvents.get(0).nested);
        assertTrue(testSubject.entity.appliedEvents.get(1).nested);
        assertFalse(testSubject.entity.appliedEvents.get(2).nested);

        DomainEventStream uncommittedEvents = testSubject.getUncommittedEvents();
        int i = 0;
        while (uncommittedEvents.hasNext()) {
            assertSame(testSubject.entity.appliedEvents.get(i), uncommittedEvents.next().getPayload());
            i++;
        }
    }
View Full Code Here

    public void testIdentifierInitialization_LateInitialization() {
        LateIdentifiedAggregate aggregate = new LateIdentifiedAggregate();
        assertEquals("lateIdentifier", aggregate.getIdentifier());
        assertEquals("lateIdentifier", aggregate.getUncommittedEvents().peek().getAggregateIdentifier());

        DomainEventStream uncommittedEvents = aggregate.getUncommittedEvents();
        assertFalse(((StubDomainEvent) uncommittedEvents.next().getPayload()).nested);
        assertTrue(((StubDomainEvent) uncommittedEvents.next().getPayload()).nested);
    }
View Full Code Here

                }
            }
            if (aggregateRoot == null) {
                logger.debug("Aggregate {} not in first level cache, loading fresh one from Event Store",
                             aggregateIdentifier);
                DomainEventStream events = null;
                try {
                    events = decorator.decorateForRead(typeIdentifier, aggregateIdentifier,
                                                       eventStore.readEvents(typeIdentifier, aggregateIdentifier));
                    if (events.hasNext()) {
                        aggregateRoot = aggregateFactory.createAggregate(aggregateIdentifier, events.peek());
                        aggregateRoot.initializeState(events);
                    }
                } catch (EventStreamNotFoundException e) {
                    throw new AggregateNotFoundException(
                            aggregateIdentifier,
View Full Code Here

                             .method(TaskOptions.Method.POST)
        );
    }

    public void createSnapshot(String typeIdentifier, String aggregateIdentifier) {
        DomainEventStream eventStream = null;
        try {
            eventStream = eventStore.readEvents(typeIdentifier, aggregateIdentifier);
            DomainEventMessage snapshotEvent = createSnapshot(typeIdentifier, eventStream);
            if (snapshotEvent != null) {
                eventStore.appendSnapshotEvent(typeIdentifier, snapshotEvent);
View Full Code Here

        }
        return exceptionResult;
    }

    private void storeAndPublish(DisruptorUnitOfWork unitOfWork) {
        DomainEventStream eventsToStore = unitOfWork.getEventsToStore();
        if (eventsToStore.hasNext()) {
            eventStore.appendEvents(unitOfWork.getAggregateType(), eventsToStore);
        }
        List<EventMessage> eventMessages = unitOfWork.getEventsToPublish();
        EventMessage[] eventsToPublish = eventMessages.toArray(new EventMessage[eventMessages.size()]);
        if (eventBus != null && eventsToPublish.length > 0) {
View Full Code Here

        final DBCursor dbCursor = storageStrategy.findEvents(mongoTemplate.domainEventCollection(),
                                                             type,
                                                             identifier.toString(),
                                                             snapshotSequenceNumber + 1);

        DomainEventStream stream = new CursorBackedDomainEventStream(dbCursor, lastSnapshotCommit, identifier, false);
        if (!stream.hasNext()) {
            throw new EventStreamNotFoundException(type, identifier);
        }
        return stream;
    }
View Full Code Here

TOP

Related Classes of org.axonframework.domain.DomainEventStream

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.