/* * -----------------------------------------------------------------------\ * PerfCake *   * Copyright (C) 2010 - 2016 the original author or authors. *   * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * -----------------------------------------------------------------------/ */ package org.perfcake.scenario; import org.perfcake.message.MessageTemplate; import org.perfcake.message.correlator.Correlator; import org.perfcake.message.generator.MessageGenerator; import org.perfcake.message.receiver.Receiver; import org.perfcake.message.sender.MessageSenderManager; import org.perfcake.message.sequence.SequenceManager; import org.perfcake.reporting.ReportManager; import org.perfcake.validation.ValidationManager; import java.util.List; /** * Utility class for tests. It can retract scenario classes from Scenario object. * It is possible because this class is in the same package as Scenario. However, * this is just for test purposes. Also, it should be used only for tests, where there * is no other option of obtaining the references. * * @author <a href="mailto:marvenec@gmail.com">Martin Večeřa</a> */ public class ScenarioRetractor { private final Scenario scenario; /** * Creates a new retractor to keep the Scenario insides visible to the outer world. * * @param scenario * The scenario subject to inspection. */ public ScenarioRetractor(final Scenario scenario) { this.scenario = scenario; } /** * Gets the scenario generator. * * @return The generator. */ public MessageGenerator getGenerator() { return scenario.getGenerator(); } /** * Gets the message sender manager. * * @return The message sender manager. */ public MessageSenderManager getMessageSenderManager() { return scenario.getMessageSenderManager(); } /** * Gets the report manager. * * @return The report manager. */ public ReportManager getReportManager() { return scenario.getReportManager(); } /** * Gets the validation manager. * * @return The validation manager. */ public ValidationManager getValidationManager() { return scenario.getValidationManager(); } /** * Gets the {@link SequenceManager}. * * @return The {@link SequenceManager}. */ public SequenceManager getSequenceManager() { return scenario.getSequenceManager(); } /** * Gets the message store. * * @return The list of all message templates. */ public List<MessageTemplate> getMessageStore() { return scenario.getMessageStore(); } /** * Gets the {@link Receiver}. * @return The {@link Receiver}. */ public Receiver getReceiver() { return scenario.getReceiver(); } /** * Gets the {@link Correlator}. * @return The {@link Correlator}. */ public Correlator getCorrelator() { return scenario.getCorrelator(); } }