/******************************************************************************* * Copyright 2015 Software Evolution and Architecture Lab, University of Zurich * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ package eu.cloudwave.wp5.feedback.eclipse.base.resources.base; import java.net.URI; import java.util.Map; import org.eclipse.core.resources.IContainer; import org.eclipse.core.resources.IMarker; import org.eclipse.core.resources.IPathVariableManager; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IProjectDescription; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.IResourceProxy; import org.eclipse.core.resources.IResourceProxyVisitor; import org.eclipse.core.resources.IResourceVisitor; import org.eclipse.core.resources.IWorkspace; import org.eclipse.core.resources.ResourceAttributes; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.QualifiedName; import org.eclipse.core.runtime.jobs.ISchedulingRule; /** * Abstract base implementation for decorators for sub-classes of {@link IResource}. A concrete decorator should NEVER * directly inherit from this class but from a more specific abstract decorator class. */ public abstract class AbstractBaseResourceDecorator implements IResource { /** * Returns the decorated {@link IResource}. * * @return the decorated {@link IResource} */ protected abstract IResource resource(); /** * {@inheritDoc} */ @Override public Object getAdapter(@SuppressWarnings("rawtypes") final Class adapter) { return resource().getAdapter(adapter); } /** * {@inheritDoc} */ @Override public boolean contains(final ISchedulingRule rule) { return resource().contains(rule); } /** * {@inheritDoc} */ @Override public boolean isConflicting(final ISchedulingRule rule) { return resource().isConflicting(rule); } /** * {@inheritDoc} */ @Override public void accept(final IResourceProxyVisitor visitor, final int memberFlags) throws CoreException { resource().accept(visitor, memberFlags); } /** * {@inheritDoc} */ @Override public void accept(final IResourceProxyVisitor visitor, final int depth, final int memberFlags) throws CoreException { resource().accept(visitor, depth, memberFlags); } /** * {@inheritDoc} */ @Override public void accept(final IResourceVisitor visitor) throws CoreException { resource().accept(visitor); } /** * {@inheritDoc} */ @Override public void accept(final IResourceVisitor visitor, final int depth, final boolean includePhantoms) throws CoreException { resource().accept(visitor, depth, includePhantoms); } /** * {@inheritDoc} */ @Override public void accept(final IResourceVisitor visitor, final int depth, final int memberFlags) throws CoreException { resource().accept(visitor, depth, memberFlags); } /** * {@inheritDoc} */ @Override public void clearHistory(final IProgressMonitor monitor) throws CoreException { resource().clearHistory(monitor); } /** * {@inheritDoc} */ @Override public void copy(final IPath destination, final boolean force, final IProgressMonitor monitor) throws CoreException { resource().copy(destination, force, monitor); } /** * {@inheritDoc} */ @Override public void copy(final IPath destination, final int updateFlags, final IProgressMonitor monitor) throws CoreException { resource().copy(destination, updateFlags, monitor); } /** * {@inheritDoc} */ @Override public void copy(final IProjectDescription description, final boolean force, final IProgressMonitor monitor) throws CoreException { resource().copy(description, force, monitor); } /** * {@inheritDoc} */ @Override public void copy(final IProjectDescription description, final int updateFlags, final IProgressMonitor monitor) throws CoreException { resource().copy(description, updateFlags, monitor); } /** * {@inheritDoc} */ @Override public IMarker createMarker(final String type) throws CoreException { return resource().createMarker(type); } /** * {@inheritDoc} */ @Override public IResourceProxy createProxy() { return resource().createProxy(); } /** * {@inheritDoc} */ @Override public void delete(final boolean force, final IProgressMonitor monitor) throws CoreException { resource().delete(force, monitor); } /** * {@inheritDoc} */ @Override public void delete(final int updateFlags, final IProgressMonitor monitor) throws CoreException { resource().delete(updateFlags, monitor); } /** * {@inheritDoc} */ @Override public void deleteMarkers(final String type, final boolean includeSubtypes, final int depth) throws CoreException { resource().deleteMarkers(type, includeSubtypes, depth); } /** * {@inheritDoc} */ @Override public boolean exists() { return resource().exists(); } /** * {@inheritDoc} */ @Override public IMarker findMarker(final long id) throws CoreException { return resource().findMarker(id); } /** * {@inheritDoc} */ @Override public IMarker[] findMarkers(final String type, final boolean includeSubtypes, final int depth) throws CoreException { return resource().findMarkers(type, includeSubtypes, depth); } /** * {@inheritDoc} */ @Override public int findMaxProblemSeverity(final String type, final boolean includeSubtypes, final int depth) throws CoreException { return resource().findMaxProblemSeverity(type, includeSubtypes, depth); } /** * {@inheritDoc} */ @Override public String getFileExtension() { return resource().getFileExtension(); } /** * {@inheritDoc} */ @Override public IPath getFullPath() { return resource().getFullPath(); } /** * {@inheritDoc} */ @Override public long getLocalTimeStamp() { return resource().getLocalTimeStamp(); } /** * {@inheritDoc} */ @Override public IPath getLocation() { return resource().getLocation(); } /** * {@inheritDoc} */ @Override public URI getLocationURI() { return resource().getLocationURI(); } /** * {@inheritDoc} */ @Override public IMarker getMarker(final long id) { return resource().getMarker(id); } /** * {@inheritDoc} */ @Override public long getModificationStamp() { return resource().getModificationStamp(); } /** * {@inheritDoc} */ @Override public String getName() { return resource().getName(); } /** * {@inheritDoc} */ @Override public IPathVariableManager getPathVariableManager() { return resource().getPathVariableManager(); } /** * {@inheritDoc} */ @Override public IContainer getParent() { return resource().getParent(); } /** * {@inheritDoc} */ @Override public Map<QualifiedName, String> getPersistentProperties() throws CoreException { return resource().getPersistentProperties(); } /** * {@inheritDoc} */ @Override public String getPersistentProperty(final QualifiedName key) throws CoreException { return resource().getPersistentProperty(key); } /** * {@inheritDoc} */ @Override public IProject getProject() { return resource().getProject(); } /** * {@inheritDoc} */ @Override public IPath getProjectRelativePath() { return resource().getProjectRelativePath(); } /** * {@inheritDoc} */ @Override public IPath getRawLocation() { return resource().getRawLocation(); } /** * {@inheritDoc} */ @Override public URI getRawLocationURI() { return resource().getRawLocationURI(); } /** * {@inheritDoc} */ @Override public ResourceAttributes getResourceAttributes() { return resource().getResourceAttributes(); } /** * {@inheritDoc} */ @Override public Map<QualifiedName, Object> getSessionProperties() throws CoreException { return resource().getSessionProperties(); } /** * {@inheritDoc} */ @Override public Object getSessionProperty(final QualifiedName key) throws CoreException { return resource().getSessionProperty(key); } /** * {@inheritDoc} */ @Override public int getType() { return resource().getType(); } /** * {@inheritDoc} */ @Override public IWorkspace getWorkspace() { return resource().getWorkspace(); } /** * {@inheritDoc} */ @Override public boolean isAccessible() { return resource().isAccessible(); } /** * {@inheritDoc} */ @Override public boolean isDerived() { return resource().isDerived(); } /** * {@inheritDoc} */ @Override public boolean isDerived(final int options) { return resource().isDerived(options); } /** * {@inheritDoc} */ @Override public boolean isHidden() { return resource().isHidden(); } /** * {@inheritDoc} */ @Override public boolean isHidden(final int options) { return resource().isHidden(options); } /** * {@inheritDoc} */ @Override public boolean isLinked() { return resource().isLinked(); } /** * {@inheritDoc} */ @Override public boolean isVirtual() { return resource().isVirtual(); } /** * {@inheritDoc} */ @Override public boolean isLinked(final int options) { return resource().isLinked(options); } /** * {@inheritDoc} */ @SuppressWarnings("deprecation") @Override public boolean isLocal(final int depth) { return resource().isLocal(depth); } /** * {@inheritDoc} */ @Override public boolean isPhantom() { return resource().isPhantom(); } /** * {@inheritDoc} */ @SuppressWarnings("deprecation") @Override public boolean isReadOnly() { return resource().isReadOnly(); } /** * {@inheritDoc} */ @Override public boolean isSynchronized(final int depth) { return resource().isSynchronized(depth); } /** * {@inheritDoc} */ @Override public boolean isTeamPrivateMember() { return resource().isTeamPrivateMember(); } /** * {@inheritDoc} */ @Override public boolean isTeamPrivateMember(final int options) { return resource().isTeamPrivateMember(options); } /** * {@inheritDoc} */ @Override public void move(final IPath destination, final boolean force, final IProgressMonitor monitor) throws CoreException { resource().move(destination, force, monitor); } /** * {@inheritDoc} */ @Override public void move(final IPath destination, final int updateFlags, final IProgressMonitor monitor) throws CoreException { resource().move(destination, updateFlags, monitor); } /** * {@inheritDoc} */ @Override public void move(final IProjectDescription description, final boolean force, final boolean keepHistory, final IProgressMonitor monitor) throws CoreException { resource().move(description, force, keepHistory, monitor); } /** * {@inheritDoc} */ @Override public void move(final IProjectDescription description, final int updateFlags, final IProgressMonitor monitor) throws CoreException { resource().move(description, updateFlags, monitor); } /** * {@inheritDoc} */ @Override public void refreshLocal(final int depth, final IProgressMonitor monitor) throws CoreException { resource().refreshLocal(depth, monitor); } /** * {@inheritDoc} */ @Override public void revertModificationStamp(final long value) throws CoreException { resource().revertModificationStamp(value); } /** * {@inheritDoc} */ @SuppressWarnings("deprecation") @Override public void setDerived(final boolean isDerived) throws CoreException { resource().setDerived(isDerived); } /** * {@inheritDoc} */ @Override public void setDerived(final boolean isDerived, final IProgressMonitor monitor) throws CoreException { resource().setDerived(isDerived, monitor); } /** * {@inheritDoc} */ @Override public void setHidden(final boolean isHidden) throws CoreException { resource().setHidden(isHidden); } /** * {@inheritDoc} */ @SuppressWarnings("deprecation") @Override public void setLocal(final boolean flag, final int depth, final IProgressMonitor monitor) throws CoreException { resource().setLocal(flag, depth, monitor); } /** * {@inheritDoc} */ @Override public long setLocalTimeStamp(final long value) throws CoreException { return resource().setLocalTimeStamp(value); } /** * {@inheritDoc} */ @Override public void setPersistentProperty(final QualifiedName key, final String value) throws CoreException { resource().setPersistentProperty(key, value); } /** * {@inheritDoc} */ @SuppressWarnings("deprecation") @Override public void setReadOnly(final boolean readOnly) { resource().setReadOnly(readOnly); } /** * {@inheritDoc} */ @Override public void setResourceAttributes(final ResourceAttributes attributes) throws CoreException { resource().setResourceAttributes(attributes); } /** * {@inheritDoc} */ @Override public void setSessionProperty(final QualifiedName key, final Object value) throws CoreException { resource().setSessionProperty(key, value); } /** * {@inheritDoc} */ @Override public void setTeamPrivateMember(final boolean isTeamPrivate) throws CoreException { resource().setTeamPrivateMember(isTeamPrivate); } /** * {@inheritDoc} */ @Override public void touch(final IProgressMonitor monitor) throws CoreException { resource().touch(monitor); } }