Copyright (c) 2000, 2009 IBM Corporation and others. This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at https://www.eclipse.org/legal/epl-2.0/ SPDX-License-Identifier: EPL-2.0 Contributors: IBM Corporation - initial API and implementation
/******************************************************************************* * Copyright (c) 2000, 2009 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/
package org.eclipse.jdt.core; import org.eclipse.core.resources.IStorage; import org.eclipse.core.runtime.IPath;
A jar entry corresponding to a non-Java resource in an archive IPackageFragment or IPackageFragmentRoot.

One can navigate the non-Java resource tree using the getChildren() and getParent() methods. Jar entry resources are either files (isFile() returns true) or directories (isFile() returns false). Files don't have any children and the returned array is always empty.

Jar entry resources that refer to the same element are guaranteed to be equal, but not necessarily identical.

Since:3.3
/** * A jar entry corresponding to a non-Java resource in an archive {@link IPackageFragment} or {@link IPackageFragmentRoot}. * <p> * One can navigate the non-Java resource tree using the {@link #getChildren()} and {@link #getParent()} methods. * Jar entry resources are either files ({@link #isFile()} returns true) or directories ({@link #isFile()} returns false). * Files don't have any children and the returned array is always empty. * </p><p> * Jar entry resources that refer to the same element are guaranteed to be equal, but not necessarily identical. * <p> * * @since 3.3 */
public interface IJarEntryResource extends IStorage {
Returns the list of children of this jar entry resource. Returns an empty array if this jar entry is a file, or if this jar entry is a directory and it has no children.
Returns:the children of this jar entry resource
/** * Returns the list of children of this jar entry resource. * Returns an empty array if this jar entry is a file, or if this jar entry is a directory and it has no children. * * @return the children of this jar entry resource */
IJarEntryResource[] getChildren();
Returns the full, absolute path of this jar entry resource relative to the archive this jar entry belongs to.

A jar entry resource's full path indicates the route from the root of the archive to the jar entry resource. Within an archive, there is exactly one such path for any given jar entry resource.

The returned path is absolute (i.e. it starts with a separator) and it never has a trailing separator.

Returns:the absolute path of this jar entry resource
/** * Returns the full, absolute path of this jar entry resource relative to the archive this jar * entry belongs to. * <p> * A jar entry resource's full path indicates the route from the root of the archive * to the jar entry resource. Within an archive, there is exactly one such path * for any given jar entry resource. </p> * <p> * The returned path is absolute (i.e. it starts with a separator) and it never has a trailing separator. * </p> * * @return the absolute path of this jar entry resource */
@Override IPath getFullPath();
Returns the parent of this jar entry resource. This is either an IJarEntryResource, an IPackageFragment or an IPackageFragmentRoot.
Returns:the parent of this jar entry resource
/** * Returns the parent of this jar entry resource. This is either an {@link IJarEntryResource}, an {@link IPackageFragment} * or an {@link IPackageFragmentRoot}. * * @return the parent of this jar entry resource */
Object getParent();
Returns the package fragment root this jar entry resource belongs to.
Returns:the package fragment root this jar entry resource belongs to.
/** * Returns the package fragment root this jar entry resource belongs to. * * @return the package fragment root this jar entry resource belongs to. */
IPackageFragmentRoot getPackageFragmentRoot();
Returns true if this jar entry represents a file. Returns false if it is a directory.
Returns:whether this jar entry is a file
/** * Returns <code>true</code> if this jar entry represents a file. * Returns <code>false</code> if it is a directory. * * @return whether this jar entry is a file */
boolean isFile(); }