package org.jboss.narayana.rest.integration.test.common; import java.io.Serializable; import java.util.ArrayList; import java.util.List; import org.jboss.narayana.rest.integration.api.Participant; import org.jboss.narayana.rest.integration.api.Vote; /** * * @author <a href="mailto:gytis@redhat.com">Gytis Trikleris</a> * */ public final class LoggingParticipant implements Participant, Serializable { private static final long serialVersionUID = 7584938841973602732L; private final List<String> invocations; private final Vote outcome; public LoggingParticipant(final Vote outcome) { this.outcome = outcome; this.invocations = new ArrayList<String>(); } @Override public Vote prepare() { invocations.add("prepare"); return outcome; } @Override public void commit() { invocations.add("commit"); } @Override public void commitOnePhase() { invocations.add("commitOnePhase"); } @Override public void rollback() { invocations.add("rollback"); } public List<String> getInvocations() { return invocations; } public Vote getOutcome() { return outcome; } }