/* * Copyright (c) 2006-2013 Rogério Liesenfeld * This file is subject to the terms of the MIT license (see LICENSE.txt). */ package mockit.internal.state; import mockit.*; import mockit.internal.mockups.*; public final class MockClasses { final MockInstances regularMocks; final MockInstances startupMocks; private final MockStates mockStates; MockClasses() { regularMocks = new MockInstances(); startupMocks = new MockInstances(); mockStates = new MockStates(); } public MockInstances getRegularMocks() { return regularMocks; } public MockInstances getMocks(boolean forStartup) { return forStartup ? startupMocks : regularMocks; } public MockStates getMockStates() { return mockStates; } public MockUp<?> findMock(Class<?> mockClass) { MockUp<?> mock = regularMocks.findMock(mockClass); if (mock == null) mock = startupMocks.findMock(mockClass); return mock; } public void removeMock(MockUp<?> mock) { regularMocks.removeInstance(mock); startupMocks.removeInstance(mock); } }