Carbide.c++

com.nokia.carbide.cpp.sdk.core
Interface ISDKManager


public interface ISDKManager

Interface to Symbian OS SDK's. Use this interface to get the list of all SDKs.

See Also:
ISymianSDK

Field Summary
static java.lang.String DEFAULT_DEVICES_DRIVE_SPEC
          The default drive spec where devices.xml resides when it cannot be determined through the windows registry.
static java.lang.String DEFAULT_DEVICES_XML_DIR
          Default windows directory where devices.xml resides (without the drive spec)
static java.lang.String DEVICES_FILE_NAME
          File name for devices.xml, the Symbian SDK file used to define all SDK locations on a machine.
 
Method Summary
 void addInstalledSdkChangeListener(ICarbideInstalledSDKChangeListener listener)
          Add an ICarbideInstalledSDKChangeListener listener
 void addSDK(ISymbianSDK sdk)
          Add an new SDK to the devices.xml
 boolean checkDevicesXMLSynchronized()
          Checks to see if the devices.xml on disk contains the same current information as what we have in the sdk list.
 void enableBSFScanner(boolean enabled)
          Set whether or not build platforms should be added for SDKs that contain .bsf extensions.
 boolean getBSFScannerEnabled()
          Get whether or not the UI has enabled BSF scanning.
 java.lang.String getCSLArmToolchainInstallPathAndCheckReqTools()
          Getting installation path of CSL Arm Toolchain from the registry.
 java.io.File getDevicesXMLFile()
          Get the full path to the devices.xml file.
 IRVCTToolChainInfo[] getInstalledRVCTTools()
          Returns toolchain info for all detected RVCT tools.
 java.util.List<com.nokia.carbide.cpp.internal.api.sdk.BuildPlat> getPlatformList()
          Get the list of all available built-in platforms
 ISymbianSDK getSDK(java.lang.String sdkId, boolean scanIfNecessary)
          Get an SDK from it's unique 'id' attribute.
 java.util.List<ISymbianSDK> getSDKList()
          Get a list of all loaded SDKs
 com.nokia.carbide.cpp.internal.api.sdk.SymbianMacroStore getSymbianMacroStore()
          Retrieves the instance of the Symbian Macro Store
 void removeInstalledSdkChangeListener(ICarbideInstalledSDKChangeListener listener)
          Remove an ICarbideInstalledSDKChangeListener listener
 boolean removeSDK(java.lang.String sdkId)
          Delete an SDK from devices.xml
 void scanSDKs()
          Scan devices.xml and build the SDK list.
 void setDefaultSDK(ISymbianSDK sdk)
          Sets the default SDK attribute for the input SDK.
 void setPlatformList(java.util.List<com.nokia.carbide.cpp.internal.api.sdk.BuildPlat> platList)
          Sets the list of available build platforms
 void updateCarbideSDKCache()
          Refresh the configuration cache that contains additional information that the devices.xml data does not have, such as OS and SDK version.
 void updateSDK(ISymbianSDK sdkId)
          Update an existing SDK to the devices.xml
 

Field Detail

DEFAULT_DEVICES_XML_DIR

static final java.lang.String DEFAULT_DEVICES_XML_DIR
Default windows directory where devices.xml resides (without the drive spec)

See Also:
Constant Field Values

DEFAULT_DEVICES_DRIVE_SPEC

static final java.lang.String DEFAULT_DEVICES_DRIVE_SPEC
The default drive spec where devices.xml resides when it cannot be determined through the windows registry.

Since:
2.0
See Also:
Constant Field Values

DEVICES_FILE_NAME

static final java.lang.String DEVICES_FILE_NAME
File name for devices.xml, the Symbian SDK file used to define all SDK locations on a machine.

See Also:
Constant Field Values
Method Detail

scanSDKs

void scanSDKs()
Scan devices.xml and build the SDK list. Call this routine clears all current SDK entries.


addSDK

void addSDK(ISymbianSDK sdk)
Add an new SDK to the devices.xml

Parameters:
sdk -

removeSDK

boolean removeSDK(java.lang.String sdkId)
Delete an SDK from devices.xml

Parameters:
sdkId -
Returns:

getSDKList

java.util.List<ISymbianSDK> getSDKList()
Get a list of all loaded SDKs

Returns:
List of ISymbianSDK objects, which may be empty.

getSDK

ISymbianSDK getSDK(java.lang.String sdkId,
                   boolean scanIfNecessary)
Get an SDK from it's unique 'id' attribute.

Parameters:
sdkId -
scanIfNecessary - build SDK list if not done already
Returns:

updateSDK

void updateSDK(ISymbianSDK sdkId)
Update an existing SDK to the devices.xml

Parameters:
sdkId -

getSymbianMacroStore

com.nokia.carbide.cpp.internal.api.sdk.SymbianMacroStore getSymbianMacroStore()
Retrieves the instance of the Symbian Macro Store

Returns:

updateCarbideSDKCache

void updateCarbideSDKCache()
Refresh the configuration cache that contains additional information that the devices.xml data does not have, such as OS and SDK version.


setDefaultSDK

void setDefaultSDK(ISymbianSDK sdk)
Sets the default SDK attribute for the input SDK. Sets all other sdks in devcies.xml to 'default=false'

Parameters:
sdk - - ISymbianSDK object

getBSFScannerEnabled

boolean getBSFScannerEnabled()
Get whether or not the UI has enabled BSF scanning.

Returns:
true if BSF scanning is enabled.

enableBSFScanner

void enableBSFScanner(boolean enabled)
Set whether or not build platforms should be added for SDKs that contain .bsf extensions.

Parameters:
enabled - - When true, add BSF platforms.

setPlatformList

void setPlatformList(java.util.List<com.nokia.carbide.cpp.internal.api.sdk.BuildPlat> platList)
Sets the list of available build platforms

Parameters:
platList, - a list of BuildPlat objects
See Also:
BuildPlat

getPlatformList

java.util.List<com.nokia.carbide.cpp.internal.api.sdk.BuildPlat> getPlatformList()
Get the list of all available built-in platforms

Returns:
A list of BuildPlat objects
See Also:
BuildPlat

getDevicesXMLFile

java.io.File getDevicesXMLFile()
Get the full path to the devices.xml file. This scans first the windows registry under 'SOFTWARE\Symbian\EPOC SDKs\CommonPath'. If CommonPath is not defined then the system drive spec is used with the folder location at '\Program Files\Common Files\Symbian'.

Returns:
File object. Clients should check File.exists() to make sure the file exists on disk.

getCSLArmToolchainInstallPathAndCheckReqTools

java.lang.String getCSLArmToolchainInstallPathAndCheckReqTools()
                                                               throws SDKEnvInfoFailureException
Getting installation path of CSL Arm Toolchain from the registry. The method also check that the all required tools exist.

Returns:
Path to tool binaries under installation path directory, successful. Otherwise throws an exception.
Throws:
SDKEnvInfoFailureException

getInstalledRVCTTools

IRVCTToolChainInfo[] getInstalledRVCTTools()
Returns toolchain info for all detected RVCT tools.

Returns:
Array of toolchain information objects.

addInstalledSdkChangeListener

void addInstalledSdkChangeListener(ICarbideInstalledSDKChangeListener listener)
Add an ICarbideInstalledSDKChangeListener listener

Parameters:
listener - - An instance of ICarbideInstalledSDKChangeListener

removeInstalledSdkChangeListener

void removeInstalledSdkChangeListener(ICarbideInstalledSDKChangeListener listener)
Remove an ICarbideInstalledSDKChangeListener listener

Parameters:
listener - - An instance of ICarbideInstalledSDKChangeListener

checkDevicesXMLSynchronized

boolean checkDevicesXMLSynchronized()
Checks to see if the devices.xml on disk contains the same current information as what we have in the sdk list. When not synchronized, when an SDK is add or removed outside of Carbide for example, this means an SDK rescan operation is needed.

Returns:
true if synchronized (no rescan needed), otherwise false (not up to date). Will also return true when devices.xml does not exist
Since:
2.0
See Also:
ISDKManager.fireDevicesXMLChanged

Carbide.c++