KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > java > j2seproject > queries > SourceLevelQueryImpl


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 package org.netbeans.modules.java.j2seproject.queries;
20
21 import org.netbeans.modules.java.j2seproject.J2SEProjectUtil;
22 import org.netbeans.spi.java.queries.SourceLevelQueryImplementation;
23 import org.netbeans.spi.project.support.ant.AntProjectHelper;
24 import org.netbeans.spi.project.support.ant.PropertyEvaluator;
25 import org.netbeans.spi.project.support.ant.PropertyUtils;
26 import org.netbeans.spi.project.support.ant.EditableProperties;
27 import org.netbeans.api.java.platform.Specification;
28 import org.openide.filesystems.FileObject;
29
30 /**
31  * Returns source level of project sources.
32  * @author David Konecny
33  */

34 public class SourceLevelQueryImpl implements SourceLevelQueryImplementation {
35
36     private final PropertyEvaluator evaluator;
37
38     public SourceLevelQueryImpl(PropertyEvaluator evaluator) {
39         this.evaluator = evaluator;
40     }
41
42     public String JavaDoc getSourceLevel(FileObject javaFile) {
43         final String JavaDoc activePlatform = evaluator.getProperty ("platform.active"); //NOI18N
44
if (J2SEProjectUtil.getActivePlatform(activePlatform) != null) {
45             String JavaDoc sl = evaluator.getProperty("javac.source"); //NOI18N
46
if (sl != null && sl.length() > 0) {
47                 return sl;
48             } else {
49                 return null;
50             }
51         }
52         else {
53             EditableProperties props = PropertyUtils.getGlobalProperties();
54             String JavaDoc sl = (String JavaDoc) props.get("default.javac.source"); //NOI18N
55
if (sl != null && sl.length() > 0) {
56                 return sl;
57             } else {
58                 return null;
59             }
60         }
61     }
62     
63 }
64
Popular Tags