package org.ovirt.engine.core.dao.gluster; import java.util.List; import org.ovirt.engine.core.common.businessentities.gluster.GlusterGeoRepSession; import org.ovirt.engine.core.common.businessentities.gluster.GlusterGeoRepSessionConfiguration; import org.ovirt.engine.core.common.businessentities.gluster.GlusterGeoRepSessionDetails; import org.ovirt.engine.core.compat.Guid; import org.ovirt.engine.core.dao.Dao; /** * Interface for DB operations on Gluster Geo-Replication Entities */ public interface GlusterGeoRepDao extends Dao { public void save(GlusterGeoRepSession geoRepSession); public void saveDetails(GlusterGeoRepSessionDetails geoRepSessionDetails); public void saveDetailsInBatch(List<GlusterGeoRepSessionDetails> geoRepSessionDetailsList); public void saveConfig(GlusterGeoRepSessionConfiguration geoRepSessionConfig); /** * Retrieves the GlusterGeoRepSession. */ public GlusterGeoRepSession getById(Guid id); public GlusterGeoRepSession getGeoRepSession(String sessionKey); public GlusterGeoRepSession getGeoRepSession(Guid masterVolumeId, Guid slaveHostId, String slaveVolumeName); public List<GlusterGeoRepSession> getGeoRepSessions(Guid masterVolumeId); public List<GlusterGeoRepSession> getGeoRepSessionsInCluster(Guid clusterId); public GlusterGeoRepSession getGeoRepSessionBySlaveVolume(Guid slaveVolumeId); public void remove(Guid id); public void updateSession(GlusterGeoRepSession geoRepSession); public void updateDetails(GlusterGeoRepSessionDetails geoRepSessionDetails); public void updateDetailsInBatch(List<GlusterGeoRepSessionDetails> geoRepSessionDetailsObjs); public void saveOrUpdateDetailsInBatch(List<GlusterGeoRepSessionDetails> geoRepSessionDetailsObjs); public void updateConfig(GlusterGeoRepSessionConfiguration geoRepSessionConfig); public List<GlusterGeoRepSessionDetails> getGeoRepSessionDetails(Guid sessionId); public GlusterGeoRepSessionDetails getGeoRepSessionDetails(Guid sessionId, Guid masterBrickId); public List<GlusterGeoRepSessionConfiguration> getGeoRepSessionConfig(Guid sessionId); public List<GlusterGeoRepSessionConfiguration> getGlusterGeoRepSessionUnSetConfig(Guid sessionId); public GlusterGeoRepSessionConfiguration getGeoRepSessionConfigByKey(Guid sessionId, String configKey); public List<GlusterGeoRepSession> getAllSessions(); }