21 import java.util.ArrayList; |
21 import java.util.ArrayList; |
22 import java.util.List; |
22 import java.util.List; |
23 |
23 |
24 import org.osgi.framework.Version; |
24 import org.osgi.framework.Version; |
25 |
25 |
|
26 import com.nokia.carbide.cpp.internal.api.sdk.ISBSv1BuildInfo; |
|
27 import com.nokia.carbide.cpp.sdk.core.ISymbianBuilderID; |
26 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK; |
28 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK; |
27 import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin; |
29 import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin; |
28 import com.nokia.carbide.template.engine.ITemplate; |
30 import com.nokia.carbide.template.engine.ITemplate; |
29 |
31 |
30 public class TemplateUtils { |
32 public class TemplateUtils { |
47 * template filter arguments:= framework[:versionSpec] |
49 * template filter arguments:= framework[:versionSpec] |
48 * versionSpec is a list of version or versionRange delimited by ; |
50 * versionSpec is a list of version or versionRange delimited by ; |
49 * versionRange is a minVersion and maxVersion delimited by - |
51 * versionRange is a minVersion and maxVersion delimited by - |
50 */ |
52 */ |
51 public static boolean sdkMatchesTemplate(ISymbianSDK symbianSDK, ITemplate template) { |
53 public static boolean sdkMatchesTemplate(ISymbianSDK symbianSDK, ITemplate template) { |
52 Version sdkVersion = symbianSDK.getSDKVersion(); |
54 ISBSv1BuildInfo sbsv1BuildInfo = (ISBSv1BuildInfo)symbianSDK.getBuildInfo(ISymbianBuilderID.SBSV1_BUILDER); |
53 String family = symbianSDK.getFamily(); // S60, symbian... 3rd segment of devices.xml 'name' attrib |
55 Version sdkVersion = sbsv1BuildInfo.getSDKVersion(symbianSDK); |
|
56 String family = sbsv1BuildInfo.getFamily(symbianSDK); // S60, symbian... 3rd segment of devices.xml 'name' attrib |
54 return sdkMatchesTemplate(sdkVersion, family, template); |
57 return sdkMatchesTemplate(sdkVersion, family, template); |
55 } |
58 } |
56 |
59 |
57 |
60 |
58 private static boolean isSameFamily(String f1, String f2) { |
61 private static boolean isSameFamily(String f1, String f2) { |
59 if (f1.equalsIgnoreCase(f2)) |
62 if (f1.equalsIgnoreCase(f2)) |
60 return true; |
63 return true; |
61 |
64 |
62 if ((f1.equalsIgnoreCase(ISymbianSDK.S60_FAMILY_ID) && |
65 if ((f1.equalsIgnoreCase(ISBSv1BuildInfo.S60_FAMILY_ID) && |
63 f2.equalsIgnoreCase(ISymbianSDK.SERIES60_FAMILY_ID)) || |
66 f2.equalsIgnoreCase(ISBSv1BuildInfo.SERIES60_FAMILY_ID)) || |
64 (f2.equalsIgnoreCase(ISymbianSDK.S60_FAMILY_ID) && |
67 (f2.equalsIgnoreCase(ISBSv1BuildInfo.S60_FAMILY_ID) && |
65 f1.equalsIgnoreCase(ISymbianSDK.SERIES60_FAMILY_ID))) |
68 f1.equalsIgnoreCase(ISBSv1BuildInfo.SERIES60_FAMILY_ID))) |
66 return true; |
69 return true; |
67 |
70 |
68 return false; |
71 return false; |
69 } |
72 } |
70 |
73 |