KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > java > j2seplatform > platformdefinition > DefaultSourceLevelQueryImpl


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 package org.netbeans.modules.java.j2seplatform.platformdefinition;
21
22 import org.netbeans.api.java.platform.JavaPlatform;
23 import org.netbeans.api.java.platform.JavaPlatformManager;
24 import org.netbeans.spi.java.queries.SourceLevelQueryImplementation;
25 import org.openide.filesystems.FileObject;
26
27 /**
28  * Returns the source level for the non projectized java/class files (those
29  * file for which the classpath is provided by the {@link DefaultClassPathProvider}
30  * @author Tomas Zezula
31  */

32 public class DefaultSourceLevelQueryImpl implements SourceLevelQueryImplementation {
33
34     private static final String JavaDoc JAVA_EXT = "java"; //NOI18N
35

36     public DefaultSourceLevelQueryImpl() {}
37
38     public String JavaDoc getSourceLevel(final FileObject javaFile) {
39         assert javaFile != null : "javaFile has to be non null"; //NOI18N
40
String JavaDoc ext = javaFile.getExt();
41         if (JAVA_EXT.equalsIgnoreCase (ext)) {
42             JavaPlatform jp = JavaPlatformManager.getDefault().getDefaultPlatform();
43             assert jp != null : "JavaPlatformManager.getDefaultPlatform returned null"; //NOI18N
44
String JavaDoc s = jp.getSpecification().getVersion().toString();
45             if (s.equals("1.6") || s.equals("1.7")) {
46                 // #89131: these levels are not actually distinct from 1.5.
47
return "1.5";
48             } else {
49                 return s;
50             }
51         }
52         return null;
53     }
54
55 }
56
Popular Tags