org.eclipse.aether.AbstractForwardingRepositorySystemSession Maven / Gradle / Ivy
/*******************************************************************************
* Copyright (c) 2013 Sonatype, 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:
* Sonatype, Inc. - initial API and implementation
*******************************************************************************/
package org.eclipse.aether;
import java.util.Map;
import org.eclipse.aether.artifact.ArtifactTypeRegistry;
import org.eclipse.aether.collection.DependencyGraphTransformer;
import org.eclipse.aether.collection.DependencyManager;
import org.eclipse.aether.collection.DependencySelector;
import org.eclipse.aether.collection.DependencyTraverser;
import org.eclipse.aether.collection.VersionFilter;
import org.eclipse.aether.repository.AuthenticationSelector;
import org.eclipse.aether.repository.LocalRepository;
import org.eclipse.aether.repository.LocalRepositoryManager;
import org.eclipse.aether.repository.MirrorSelector;
import org.eclipse.aether.repository.ProxySelector;
import org.eclipse.aether.repository.WorkspaceReader;
import org.eclipse.aether.resolution.ArtifactDescriptorPolicy;
import org.eclipse.aether.resolution.ResolutionErrorPolicy;
import org.eclipse.aether.transfer.TransferListener;
/**
* A special repository system session to enable decorating or proxying another session. To do so, clients have to
* create a subclass and implement {@link #getSession()}.
*/
public abstract class AbstractForwardingRepositorySystemSession
implements RepositorySystemSession
{
/**
* Creates a new forwarding session.
*/
protected AbstractForwardingRepositorySystemSession()
{
}
/**
* Gets the repository system session to which this instance forwards calls. It's worth noting that this class does
* not save/cache the returned reference but queries this method before each forwarding. Hence, the session
* forwarded to may change over time or depending on the context (e.g. calling thread).
*
* @return The repository system session to forward calls to, never {@code null}.
*/
protected abstract RepositorySystemSession getSession();
public boolean isOffline()
{
return getSession().isOffline();
}
public boolean isIgnoreArtifactDescriptorRepositories()
{
return getSession().isIgnoreArtifactDescriptorRepositories();
}
public ResolutionErrorPolicy getResolutionErrorPolicy()
{
return getSession().getResolutionErrorPolicy();
}
public ArtifactDescriptorPolicy getArtifactDescriptorPolicy()
{
return getSession().getArtifactDescriptorPolicy();
}
public String getChecksumPolicy()
{
return getSession().getChecksumPolicy();
}
public String getUpdatePolicy()
{
return getSession().getUpdatePolicy();
}
public LocalRepository getLocalRepository()
{
return getSession().getLocalRepository();
}
public LocalRepositoryManager getLocalRepositoryManager()
{
return getSession().getLocalRepositoryManager();
}
public WorkspaceReader getWorkspaceReader()
{
return getSession().getWorkspaceReader();
}
public RepositoryListener getRepositoryListener()
{
return getSession().getRepositoryListener();
}
public TransferListener getTransferListener()
{
return getSession().getTransferListener();
}
public Map getSystemProperties()
{
return getSession().getSystemProperties();
}
public Map getUserProperties()
{
return getSession().getUserProperties();
}
public Map getConfigProperties()
{
return getSession().getConfigProperties();
}
public MirrorSelector getMirrorSelector()
{
return getSession().getMirrorSelector();
}
public ProxySelector getProxySelector()
{
return getSession().getProxySelector();
}
public AuthenticationSelector getAuthenticationSelector()
{
return getSession().getAuthenticationSelector();
}
public ArtifactTypeRegistry getArtifactTypeRegistry()
{
return getSession().getArtifactTypeRegistry();
}
public DependencyTraverser getDependencyTraverser()
{
return getSession().getDependencyTraverser();
}
public DependencyManager getDependencyManager()
{
return getSession().getDependencyManager();
}
public DependencySelector getDependencySelector()
{
return getSession().getDependencySelector();
}
public VersionFilter getVersionFilter()
{
return getSession().getVersionFilter();
}
public DependencyGraphTransformer getDependencyGraphTransformer()
{
return getSession().getDependencyGraphTransformer();
}
public SessionData getData()
{
return getSession().getData();
}
public RepositoryCache getCache()
{
return getSession().getCache();
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy