package com.mobilesorcery.sdk.internal.convert; import org.eclipse.core.runtime.CoreException; import com.mobilesorcery.sdk.core.MoSyncProject; import com.mobilesorcery.sdk.core.Version; import com.mobilesorcery.sdk.core.MoSyncProject.IConverter; import com.mobilesorcery.sdk.core.security.IApplicationPermissions; import com.mobilesorcery.sdk.core.security.ICommonPermissions; public class MoSyncProjectConverter1_4 implements IConverter { public final static Version VERSION = new Version("1.4"); private static IConverter instance = new MoSyncProjectConverter1_4(); public static MoSyncProject.IConverter getInstance() { return instance; } @Override public void convert(MoSyncProject project) throws CoreException { if (VERSION.isNewer(project.getFormatVersion())) { IApplicationPermissions permissions = project.getPermissions(); IApplicationPermissions wc = permissions.createWorkingCopy(); replacePermission(wc, ICommonPermissions.AUTOSTART_1_2, ICommonPermissions.AUTOSTART); replacePermission(wc, ICommonPermissions.VIBRATE_1_2, ICommonPermissions.VIBRATE); permissions.apply(wc); } } private void replacePermission(IApplicationPermissions wc, String oldPermission, String newPermission) { if (wc.isPermissionRequested(oldPermission)) { wc.setRequestedPermission(oldPermission, false); wc.setRequestedPermission(newPermission, true); } } }