/******************************************************************************* * Copyright (c) 2004 Composent, Inc. 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: Composent, Inc. - initial API and implementation ******************************************************************************/ package org.eclipse.ecf.filetransfer.identity; import java.net.*; import org.eclipse.ecf.core.identity.ID; /** * ID for a remote file. * */ public interface IFileID extends ID { /** * Get the file name from this IFileID. This will return just the filename * portion of a more complex file ID, e.g. index.html from IFileID created * with value "http://www.composent.com/index.html" * * @return String just the file name and extension (if any) for this given * IFileID. Will not be <code>null</code>. */ public String getFilename(); /** * Get the url associated with the file identified by this IFileID. * * @return URL associated with this IFileID. Will not be null. * @exception MalformedURLException thrown if URL cannot be created for this IFileID */ public URL getURL() throws MalformedURLException; /** * Get the URI associated with the file identified by this IFileID. * * @return URI associated with this IFileID. Will not be <code>null</code>. * @throws URISyntaxException thrown if URI cannot be created for this IFileID. * @since 5.0 */ public URI getURI() throws URISyntaxException; }