package rod;
import java.util.HashMap;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.actuate.metrics.GaugeService;
import org.springframework.stereotype.Repository;
@Repository
public class ResourceRepository {
private final Map<String, Resource> resources = new HashMap<>();
private final GaugeService gaugeService;
@Autowired
public ResourceRepository(final GaugeService gaugeService) {
this.gaugeService = gaugeService;
gaugeService.submit("gauge.repository.resource.count", resourceCount());
}
public void save(final Resource resource) {
resources.put(resource.getName(), resource);
gaugeService.submit("gauge.repository.resource.count", resourceCount());
}
public int resourceCount() {
return resources.size();
}
}