package com.sequenceiq.cloudbreak.service.cluster.flow.filesystem;
import java.util.List;
import java.util.Map;
import com.sequenceiq.cloudbreak.api.model.FileSystemConfiguration;
import com.sequenceiq.cloudbreak.api.model.FileSystemType;
import com.sequenceiq.cloudbreak.service.cluster.flow.RecipeScript;
import com.sequenceiq.cloudbreak.service.cluster.flow.blueprint.BlueprintConfigurationEntry;
public interface FileSystemConfigurator<T extends FileSystemConfiguration> {
Map<String, String> createResources(T fsConfig);
Map<String, String> deleteResources(T fsConfig);
List<BlueprintConfigurationEntry> getFsProperties(T fsConfig, Map<String, String> resourceProperties);
String getDefaultFsValue(T fsConfig);
List<BlueprintConfigurationEntry> getDefaultFsProperties(T fsConfig);
List<RecipeScript> getScripts(T fsConfig);
FileSystemType getFileSystemType();
}