package org.org.eclipse.core.utils.platform.commands.converters; import java.io.File; import java.net.MalformedURLException; import org.eclipse.core.commands.AbstractParameterValueConverter; import org.eclipse.core.commands.ParameterValueConversionException; import org.eclipse.core.resources.IResource; public class LocalFilePathConverter extends AbstractParameterValueConverter { @Override public final Object convertToObject(final String parameterValue) throws ParameterValueConversionException { final File file = new File(parameterValue); try { file.toURI().toURL(); } catch (MalformedURLException e) { throw new ParameterValueConversionException("parameterValue must be the path of a file"); //$NON-NLS-1$ } return file; } @Override public final String convertToString(final Object parameterValue) throws ParameterValueConversionException { if (!(parameterValue instanceof IResource)) { throw new ParameterValueConversionException("parameterValue must be an " + IResource.class.getName()); //$NON-NLS-1$ } final IResource resource = (IResource) parameterValue; return resource.getFullPath().toString(); } }