package org.rhq.core.pc.drift; import java.io.File; import org.rhq.core.domain.drift.DriftDefinition; /** * This is a client interface to the server that drift-related tasks call to interact with * the server. * <br/><br/> * The primary reason classes use DriftClient instead of DriftManager directly is to * facilitate testing with stubs or mocks. */ public interface DriftClient { void sendChangeSetToServer(DriftDetectionSummary detectionSummary); /** * Sends requested content to the server. All of the files in the content directory are * zipped up, and the zip file is sent to the server. After the zip file is sent to the * server, the content directory is purged. * * @param resourceId * @param driftDefinitionName * @param contentDir */ //void sendChangeSetContentToServer(int resourceId, String driftDefinitionName, File contentDir); void sendChangeSetContentToServer(int resourceId, String driftDefName, File contentZipFile); void repeatChangeSet(int resourceId, String driftDefName, int version); File getAbsoluteBaseDirectory(int resourceId, DriftDefinition driftDefinition); void reportMissingBaseDir(int resourceId, DriftDefinition driftDefinition); }