author | timkelly |
Thu, 26 Aug 2010 09:57:08 -0500 | |
changeset 1892 | 2009dcd074b0 |
parent 1881 | fccb2e8f8b9b |
permissions | -rw-r--r-- |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
1 |
/* |
1434 | 2 |
* Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies). |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of the License "Eclipse Public License v1.0" |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
8 |
* |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
11 |
* |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
12 |
*/ |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
13 |
package com.nokia.carbide.cpp.sdk.core; |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
14 |
|
1434 | 15 |
import java.util.Set; |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
16 |
|
1462 | 17 |
import org.eclipse.core.runtime.IPath; |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
18 |
import org.osgi.framework.Version; |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
19 |
|
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
20 |
/** |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
21 |
* This interface provides details on a single Symbian OS SDK. |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
22 |
* |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
23 |
* Notes on return values for unknown/undefined items: |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
24 |
* - String value are empty "" |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
25 |
* - IPath and IFile objects are null |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
26 |
* - containers have zero size |
179
77bd4ab5f973
cleanup some API/javadoc. Add API changes for SBV support.
timkelly
parents:
147
diff
changeset
|
27 |
* |
77bd4ab5f973
cleanup some API/javadoc. Add API changes for SBV support.
timkelly
parents:
147
diff
changeset
|
28 |
* @noimplement This interface is not intended to be implemented by clients. |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
29 |
*/ |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
30 |
|
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
31 |
public interface ISymbianSDK { |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
32 |
|
1434 | 33 |
/** |
1819 | 34 |
* Value given for an SDK that is created when a build configuration |
35 |
* references an non-existent SDK. |
|
1881 | 36 |
* @since 3.0 |
1819 | 37 |
*/ |
1820
5c955fcfdc3d
fix npe, clear sbsv2 query cache data in memory when rebuilding sbsv2 cache from pref, other code clean-up
timkelly
parents:
1819
diff
changeset
|
38 |
public static String BAD_EPOCROOT = "/BAD_SDK_ROOT"; |
1819 | 39 |
|
40 |
/** |
|
1434 | 41 |
* Returns build info for a particular builder. |
1733 | 42 |
* @param builderId id string of a builder (ISymbianBuilderID constant) |
1799 | 43 |
* @return ISDKBuildInfo - may be null if the builderId is deprecated. |
1710
94cdcd7c5550
Refactor getBuiltInMacros() to be SBSv1 specific. This are the hard-coded macros misc macros we are adding for SBSv1.
timkelly
parents:
1667
diff
changeset
|
44 |
* @since 3.0 |
1733 | 45 |
* @see {@link ISymbianBuilderID} |
1434 | 46 |
*/ |
47 |
ISDKBuildInfo getBuildInfo(String builderId); |
|
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
48 |
|
1434 | 49 |
/** |
1462 | 50 |
* Returns the absolute path to the epoc32 directory of this SDK. This method is guaranteed to |
51 |
* return the path with a trailing File.separator. |
|
52 |
* |
|
53 |
* @return the absolute path to the epoc32 directory. |
|
54 |
*/ |
|
55 |
String getEPOCROOT(); |
|
56 |
||
57 |
/** |
|
58 |
* Returns an IPath for the epoc32\include directory of a SDK. |
|
59 |
* @return an IPath for the epoc32\include directory, or <code>null</code>. |
|
60 |
*/ |
|
61 |
IPath getIncludePath(); |
|
62 |
||
63 |
/** |
|
64 |
* Returns the OS version string of this SDK. |
|
65 |
* |
|
1719 | 66 |
* @return the OS Version object. If the version cannot be determined it will be "9.5". |
1667
352fb86872dd
remove ISymbianSDK: getSDKVersion(), getName() and related methods.
timkelly
parents:
1462
diff
changeset
|
67 |
* @deprecated - use ISymbianSDK{@link #getSupportedFeatures()} to figure out the properties of an SDK |
1462 | 68 |
*/ |
69 |
Version getOSVersion(); |
|
70 |
||
1771
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
71 |
// /** |
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
72 |
// * Returns the prefix file for a particular builder. |
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
73 |
// * @param builderId id string of a builder |
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
74 |
// * @return the File object for the prefix file, or |
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
75 |
// * <code>null</code> if there isn't one for the SDK. |
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
76 |
// */ |
bd45dfd2e7ee
Remove ISymbianSDK#getPrefixFile. You can get this from ISDKBuildInfo#getPrefixFromVariantCfg().
timkelly
parents:
1736
diff
changeset
|
77 |
// File getPrefixFile(String builderId); |
1462 | 78 |
|
79 |
/** |
|
80 |
* Returns an IPath for the epoc32\release directory of a SDK. |
|
81 |
* @return an IPath for the epoc32\release directory, or <code>null</code>. |
|
82 |
*/ |
|
83 |
IPath getReleaseRoot(); |
|
84 |
||
85 |
/** |
|
1434 | 86 |
* Returns a set of features supported by the SDK. |
87 |
* Feature IDs are defined in ISymbianSDKFeatures. |
|
88 |
* @return set of features |
|
1710
94cdcd7c5550
Refactor getBuiltInMacros() to be SBSv1 specific. This are the hard-coded macros misc macros we are adding for SBSv1.
timkelly
parents:
1667
diff
changeset
|
89 |
* @since 3.0 |
1892 | 90 |
* @see {@link ISymbianSDKFeatures} |
1434 | 91 |
*/ |
92 |
@SuppressWarnings("rawtypes") |
|
93 |
Set getSupportedFeatures(); |
|
1736
ba74c19c6de3
fix bug 11762. Fix targettypes for MMP editor to retrieve properly depending on whether build config is SBsv1 or SBSv2.
timkelly
parents:
1733
diff
changeset
|
94 |
|
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
95 |
/** |
1462 | 96 |
* Returns an IPath for the epoc32\tools directory of a SDK. |
97 |
* @return an IPath for the epoc32\tools directory, or <code>null</code>. |
|
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
98 |
*/ |
1462 | 99 |
IPath getToolsPath(); |
100 |
||
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
101 |
/** |
1462 | 102 |
* Returns the unique id of this SDK. This is the devices.xml 'id' attribute. |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
103 |
* |
1462 | 104 |
* @return the id string of this SDK. |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
105 |
*/ |
1462 | 106 |
String getUniqueId(); |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
107 |
|
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
108 |
/** |
1462 | 109 |
* Returns true if the SDK is enabled, false otherwise. |
110 |
* |
|
111 |
* @return <code>true</code> if the SDK is enabled, and |
|
112 |
* <code>false</code> otherwise |
|
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
113 |
*/ |
1462 | 114 |
boolean isEnabled(); |
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
115 |
|
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
116 |
/** |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
117 |
* Scans/Rescans the SDK for info such as prefix file, variant macros, manifest.xml, etc. |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
118 |
*/ |
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
119 |
void scanSDK(); |
1462 | 120 |
|
0
fb279309251b
DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff
changeset
|
121 |
} |