blob: 9bbaffdc0e14a6b643d8165590bbec80f8ff1fbc [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2015 Ericsson
*
* All rights reserved. This program and the accompanying materials are
* made available under the terms of the Eclipse Public License v1.0 which
* accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Marc-Andre Laperle - Initial API and implementation
*******************************************************************************/
package org.eclipse.tracecompass.internal.tmf.ui.project.wizards.importtrace;
import org.eclipse.ui.internal.wizards.datatransfer.ILeveledImportStructureProvider;
/**
* An import provider that both supports using IFileSystemObject and adds
* "archive functionality" by delegating to a leveled import provider
* (TarLeveledStructureProvider, ZipLeveledStructureProvider)
*/
@SuppressWarnings("restriction")
class FileSystemObjectLeveledImportStructureProvider extends FileSystemObjectImportStructureProvider implements ILeveledImportStructureProvider {
private ILeveledImportStructureProvider fLeveledImportProvider;
FileSystemObjectLeveledImportStructureProvider(ILeveledImportStructureProvider importStructureProvider, String archivePath) {
super(importStructureProvider, archivePath);
fLeveledImportProvider = importStructureProvider;
}
@Override
public IFileSystemObject getRoot() {
return getIFileSystemObject(fLeveledImportProvider.getRoot());
}
@Override
public void setStrip(int level) {
fLeveledImportProvider.setStrip(level);
}
@Override
public int getStrip() {
return fLeveledImportProvider.getStrip();
}
@Override
public boolean closeArchive() {
return fLeveledImportProvider.closeArchive();
}
@Override
public void dispose() {
super.dispose();
closeArchive();
}
}