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