package com.battery.device.simulator; import java.util.List; /** 测试和独立协议合同使用的内存状态存储。 */ public final class InMemoryBtsSimulatorStateStore implements BtsSimulatorStateStore { private SimulatorState state; private List recentRequests = List.of(); public InMemoryBtsSimulatorStateStore() { } public InMemoryBtsSimulatorStateStore(SimulatorState state) { this.state = state; } @Override public synchronized SimulatorState loadOrInitialize(SimulatorState defaults) { if (state == null) state = defaults; return state; } @Override public synchronized void save(SimulatorState state) { this.state = state; } @Override public synchronized List loadRecentRequests() { return recentRequests; } @Override public synchronized void saveRecentRequests(List requests) { recentRequests = List.copyOf(requests); } @Override public synchronized void reset(SimulatorState defaults) { state = defaults; recentRequests = List.of(); } }