
javax.tools.ForwardingJavaFileManager Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jx Show documentation
Show all versions of jx Show documentation
JavaX improved library - JDK-8
The newest version!
/*
* Copyright (C) 2021 ZeoFlow SRL
*
* 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 javax.tools;
import java.io.IOException;
import java.util.Iterator;
import java.util.Set;
/**
* Forwards calls to a given file manager. Subclasses of this class
* might override some of these methods and might also provide
* additional fields and methods.
*
* @param the kind of file manager forwarded to by this object
*
* @author Peter von der Ahé
* @since 1.6
*/
public class ForwardingJavaFileManager implements JavaFileManager
{
/**
* The file manager which all methods are delegated to.
*/
protected final M fileManager;
/**
* Creates a new instance of ForwardingJavaFileManager.
*
* @param fileManager delegate to this file manager
*/
protected ForwardingJavaFileManager(M fileManager)
{
fileManager.getClass(); // null check
this.fileManager = fileManager;
}
/**
* @throws SecurityException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public ClassLoader getClassLoader(Location location)
{
return fileManager.getClassLoader(location);
}
/**
* @throws IOException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public Iterable list(Location location,
String packageName,
Set kinds,
boolean recurse)
throws IOException
{
return fileManager.list(location, packageName, kinds, recurse);
}
/**
* @throws IllegalStateException {@inheritDoc}
*/
public String inferBinaryName(Location location, javax.tools.JavaFileObject file)
{
return fileManager.inferBinaryName(location, file);
}
/**
* @throws IllegalArgumentException {@inheritDoc}
*/
public boolean isSameFile(javax.tools.FileObject a, javax.tools.FileObject b)
{
return fileManager.isSameFile(a, b);
}
/**
* @throws IllegalArgumentException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public boolean handleOption(String current, Iterator remaining)
{
return fileManager.handleOption(current, remaining);
}
public boolean hasLocation(Location location)
{
return fileManager.hasLocation(location);
}
public int isSupportedOption(String option)
{
return fileManager.isSupportedOption(option);
}
/**
* @throws IllegalArgumentException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public javax.tools.JavaFileObject getJavaFileForInput(Location location,
String className,
javax.tools.JavaFileObject.Kind kind)
throws IOException
{
return fileManager.getJavaFileForInput(location, className, kind);
}
/**
* @throws IllegalArgumentException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public javax.tools.JavaFileObject getJavaFileForOutput(Location location,
String className,
JavaFileObject.Kind kind,
javax.tools.FileObject sibling)
throws IOException
{
return fileManager.getJavaFileForOutput(location, className, kind, sibling);
}
/**
* @throws IllegalArgumentException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public javax.tools.FileObject getFileForInput(Location location,
String packageName,
String relativeName)
throws IOException
{
return fileManager.getFileForInput(location, packageName, relativeName);
}
/**
* @throws IllegalArgumentException {@inheritDoc}
* @throws IllegalStateException {@inheritDoc}
*/
public javax.tools.FileObject getFileForOutput(Location location,
String packageName,
String relativeName,
FileObject sibling)
throws IOException
{
return fileManager.getFileForOutput(location, packageName, relativeName, sibling);
}
public void flush() throws IOException
{
fileManager.flush();
}
public void close() throws IOException
{
fileManager.close();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy