package org.bundlemaker.core.analysis; import org.bundlemaker.core.resource.IModuleResource; import org.bundlemaker.core.resource.IModuleAwareMovableUnit; /** * <p> * Defines an {@link IBundleMakerArtifact} that holds an {@link IModuleResource} instance. * </p> * * @author Gerd Wütherich (gerd@gerd-wuetherich.de) */ public interface IResourceArtifact extends IBundleMakerArtifact, IModuleAwareMovableUnit { /** * <p> * Returns the associated resource. * </p> * * @return the associated resource. */ IModuleResource getAssociatedResource(); /** * <p> * Returns the simple resource name, e.g. {@code MyClass.class}, never {@code null}. * </p> * * @return the simple type name, e.g. {@code MyClass.class}, never {@code null}. */ String getName(); /** * <p> * Returns the fully qualified resource name, e.g. {@code com/example/MyClass.class}, never {@code null}. * </p> * * @return the fully qualified resource name, e.g. {@code com/example/MyClass}, never {@code null}. */ String getQualifiedName(); /** * <p> * </p> * * @author Gerd Wütherich (gerd@gerd-wuetherich.de) */ public static interface IResourceArtifactContent extends IBundleMakerArtifact { } }