Example usage for org.eclipse.jdt.internal.compiler.util SuffixConstants SUFFIX_CLASS

List of usage examples for org.eclipse.jdt.internal.compiler.util SuffixConstants SUFFIX_CLASS

Introduction

In this page you can find the example usage for org.eclipse.jdt.internal.compiler.util SuffixConstants SUFFIX_CLASS.

Prototype

null SUFFIX_CLASS

To view the source code for org.eclipse.jdt.internal.compiler.util SuffixConstants SUFFIX_CLASS.

Click Source Link

Usage

From source file:com.codenvy.ide.ext.java.server.internal.core.builder.ClasspathDirectory.java

License:Open Source License

public NameEnvironmentAnswer findClass(String binaryFileName, String qualifiedPackageName,
        String qualifiedBinaryFileName) {
    if (!doesFileExist(binaryFileName, qualifiedPackageName, qualifiedBinaryFileName))
        return null; // most common case

    ClassFileReader reader = null;/*from  w  w  w  . ja v a  2s .c  o m*/
    try {
        reader = Util.newClassFileReader(this.binaryFolder.getFile(new Path(qualifiedBinaryFileName)));
    } catch (CoreException e) {
        return null;
    } catch (ClassFormatException e) {
        return null;
    } catch (IOException e) {
        return null;
    }
    if (reader != null) {
        if (this.accessRuleSet == null)
            return new NameEnvironmentAnswer(reader, null);
        String fileNameWithoutExtension = qualifiedBinaryFileName.substring(0,
                qualifiedBinaryFileName.length() - SuffixConstants.SUFFIX_CLASS.length);
        return new NameEnvironmentAnswer(reader,
                this.accessRuleSet.getViolatedRestriction(fileNameWithoutExtension.toCharArray()));
    }
    return null;
}

From source file:com.codenvy.ide.ext.java.server.internal.core.builder.ClasspathJar.java

License:Open Source License

public NameEnvironmentAnswer findClass(String binaryFileName, String qualifiedPackageName,
        String qualifiedBinaryFileName) {
    if (!isPackage(qualifiedPackageName))
        return null; // most common case

    try {/*from   w w w. java  2 s . c o  m*/
        ClassFileReader reader = ClassFileReader.read(this.zipFile, qualifiedBinaryFileName);
        if (reader != null) {
            if (this.accessRuleSet == null)
                return new NameEnvironmentAnswer(reader, null);
            String fileNameWithoutExtension = qualifiedBinaryFileName.substring(0,
                    qualifiedBinaryFileName.length() - SuffixConstants.SUFFIX_CLASS.length);
            return new NameEnvironmentAnswer(reader,
                    this.accessRuleSet.getViolatedRestriction(fileNameWithoutExtension.toCharArray()));
        }
    } catch (IOException | ClassFormatException e) { // treat as if class file is missing
    }
    return null;
}

From source file:com.codenvy.ide.ext.java.server.internal.core.search.indexing.AddJarFileToIndex.java

License:Open Source License

private boolean isValidPackageNameForClass(String className) {
    char[] classNameArray = className.toCharArray();
    // use 1.7 as the source level as there are more valid identifiers in 1.7 mode
    // https://bugs.eclipse.org/bugs/show_bug.cgi?id=376673
    if (this.scanner == null)
        this.scanner = new Scanner(false /* comment */, true /* whitespace */, false /* nls */,
                ClassFileConstants.JDK1_7/* sourceLevel */, null/* taskTag */, null/* taskPriorities */,
                true /* taskCaseSensitive */);

    this.scanner.setSource(classNameArray);
    this.scanner.eofPosition = classNameArray.length - SuffixConstants.SUFFIX_CLASS.length;
    try {//ww w  . j  ava  2 s  .  c o m
        if (isIdentifier()) {
            while (this.scanner.eofPosition > this.scanner.currentPosition) {
                if (this.scanner.getNextChar() != '/'
                        || this.scanner.eofPosition <= this.scanner.currentPosition) {
                    return false;
                }
                if (!isIdentifier())
                    return false;
            }
            return true;
        }
    } catch (InvalidInputException e) {
        // invalid class name
    }
    return false;
}

From source file:io.takari.maven.plugins.compile.jdt.CompilerJdt.java

License:Open Source License

@Override
public void acceptResult(CompilationResult result) {
    if (result == null) {
        return; // ah?
    }// www.  ja  va2  s .c  o m
    final String sourceName = new String(result.getFileName());
    final File sourceFile = new File(sourceName);

    Resource<File> input = context.getProcessedSource(sourceFile);

    // track type references
    if (result.rootReferences != null && result.qualifiedReferences != null
            && result.simpleNameReferences != null) {
        context.setAttribute(input.getResource(), ATTR_REFERENCES, new ReferenceCollection(
                result.rootReferences, result.qualifiedReferences, result.simpleNameReferences));
    }

    if (result.hasProblems() && (!isLenientProcOnly() || isShowWarnings())) {
        for (CategorizedProblem problem : result.getProblems()) {
            MessageSeverity severity = isLenientProcOnly() ? MessageSeverity.WARNING
                    : problem.isError() ? MessageSeverity.ERROR : MessageSeverity.WARNING;
            input.addMessage(problem.getSourceLineNumber(), ((DefaultProblem) problem).column,
                    problem.getMessage(), severity, null /* cause */);
        }
    }

    try {
        if (!result.hasErrors() && !isProcOnly()) {
            for (ClassFile classFile : result.getClassFiles()) {
                char[] filename = classFile.fileName();
                int length = filename.length;
                char[] relativeName = new char[length + 6];
                System.arraycopy(filename, 0, relativeName, 0, length);
                System.arraycopy(SuffixConstants.SUFFIX_class, 0, relativeName, length, 6);
                CharOperation.replace(relativeName, '/', File.separatorChar);
                String relativeStringName = new String(relativeName);
                writeClassFile(input, relativeStringName, classFile);
            }
        }
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    // XXX double check affected sources are recompiled when this source has errors
}

From source file:net.sf.j2s.core.builder.ClasspathJar.java

License:Open Source License

public NameEnvironmentAnswer findClass(String binaryFileName, String qualifiedPackageName,
        String qualifiedBinaryFileName) {
    if (!isPackage(qualifiedPackageName))
        return null; // most common case

    try {/* w w  w  . ja v a 2s .com*/
        ClassFileReader reader = ClassFileReader.read(this.zipFile, qualifiedBinaryFileName);
        if (reader != null) {
            if (this.accessRuleSet == null)
                return new NameEnvironmentAnswer(reader, null);
            String fileNameWithoutExtension = qualifiedBinaryFileName.substring(0,
                    qualifiedBinaryFileName.length() - SuffixConstants.SUFFIX_CLASS.length);
            return new NameEnvironmentAnswer(reader,
                    this.accessRuleSet.getViolatedRestriction(fileNameWithoutExtension.toCharArray()));
        }
    } catch (IOException e) { // treat as if class file is missing
    } catch (ClassFormatException e) { // treat as if class file is missing
    }
    return null;
}