All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.rainfall.store.dataset.MonitorLogDataset Maven / Gradle / Ivy

The newest version!
package io.rainfall.store.dataset;

import io.rainfall.store.values.MonitorLog;
import lombok.NonNull;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Optional;

@Component
public class MonitorLogDataset extends LogDataset<
    MonitorLog,
    MonitorLogRecord,
    MonitorLogRepository,
    RunRecord,
    RunRepository> {

  MonitorLogDataset(@NonNull MonitorLogRepository repository,
                    @NonNull RunRepository parentRepository,
                    @NonNull PayloadRepository payloadRepository) {
    super(repository, parentRepository, payloadRepository);
  }

  @Override
  MonitorLogRecord create(RunRecord parent, MonitorLog value, PayloadRecord payloadRecord) {
    return new MonitorLogRecord(parent, value, payloadRecord);
  }

  @Override
  void addChild(RunRecord parent, MonitorLogRecord child) {
    parent.addMonitorLog(child);
  }

  public List findMonitorLogsForRun(long parentId) {
    return repository().findByParentId(parentId);
  }

  public List findMonitorLogsForRunAndHost(long parentId, String host) {
    return repository().findByParentIdAndValueHost(parentId, host);
  }

  public Optional getPayload(long id) {
    return repository().getPayload(id);
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy