// Path: org.eclipse.angularjs.ui/src/org/eclipse/angularjs/internal/ui/AngularUIMessages.java
// public final class AngularUIMessages extends NLS {
// 
// 	private static final String BUNDLE_NAME = "org.eclipse.angularjs.internal.ui.AngularUIMessages"; //$NON-NLS-1$
// 
// 	private static ResourceBundle fResourceBundle;
// 
// 	public static String ConvertProjectToAngular_converting_project_job_title;
// 
// 	public static String AngularGlobalPreferencesPage_desc;
// 	public static String HTMLAngularGlobalPreferencesPage_desc;
// 	public static String HTMLAngularEditorPreferencesPage_desc;
// 
// 	public static String Sample_HTMLAngular_doc;
// 
// 	public static String AngularTyping_Auto_Complete;
// 	public static String AngularTyping_Close_EL;
// 
// 	// Angular Explorer View
// 	public static String AngularOutline_computing;
// 	
// 	public static String GoToDefinitionAction_text;
// 	public static String GoToDefinitionAction_tooltip;
// 	public static String LinkToControllerAction_text;
// 	public static String LinkToControllerAction_tooltip;
// 	public static String RefreshExplorerAction_text;
// 	public static String RefreshExplorerAction_tooltip;
// 	public static String UnLinkToControllerAction_text;
// 	public static String UnLinkToControllerAction_tooltip;
// 
// 	public static String AngularExplorerView_openFile_error;
// 	public static String AngularExplorerView_openFileDialog_title;
// 
// 	public static String LexicalSortingAction_text;
// 	public static String LexicalSortingAction_tooltip;
// 	public static String LexicalSortingAction_description;
// 
// 	// Hyperlink
// 	public static String HTMLAngularHyperLink_text;
// 	public static String HTMLAngularHyperLink_typeLabel;
// 
// 	// Preferences
// 	public static String DirectivesPropertyPage_desc;
// 	public static String DirectivesPropertyPage_useOriginalName_label;
// 	public static String DirectivesPropertyPage_startsWithLabel_text;
// 	public static String DirectivesPropertyPage_startsWithNothing_label;
// 	public static String DirectivesPropertyPage_startsWithX_label;
// 	public static String DirectivesPropertyPage_startsWithData_label;
// 	public static String DirectivesPropertyPage_delimiterLabel_text;
// 	public static String DirectivesPropertyPage_colonDelimiter_label;
// 	public static String DirectivesPropertyPage_minusDelimiter_label;
// 	public static String DirectivesPropertyPage_underscoreDelimiter_label;
// 	public static String DirectivesPropertyPage_directiveTestLabel_text;
// 
// 	public static String ExpressionPropertyPage_startSybol_label;
// 	public static String ExpressionPropertyPage_endSybol_label;
// 
// 	public static String OpenAngularElementAction_label;
// 	public static String OpenAngularElementAction_description;
// 	public static String OpenAngularElementAction_tooltip;
// 	public static String OpenAngularElementAction_dialogMessage;
// 	public static String OpenAngularElementAction_dialogTitle;
// 
// 	// Protractor
// 	public static String ProtractorLaunchShortcut_Error;
// 	public static String ProtractorLaunchShortcut_Protractor_Failed;
// 
// 	public static String ProtractorPreferencesPage_desc;
// 	public static String ProtractorPreferencesPage_defaultCliFile_label;
// 	public static String ProtractorPreferencesPage_debugger_label;
// 	
// 	public static String Protractor_MainTab_location_label;
// 	public static String Protractor_MainTab_Select_a_protractor_config_file;
// 	public static String Protractor_ProtractorTab_name;
// 	public static String Protractor_ProtractorTab_cliFile;
// 
// 
// 	private AngularUIMessages() {
// 	}
// 
// 	public static ResourceBundle getResourceBundle() {
// 		try {
// 			if (fResourceBundle == null)
// 				fResourceBundle = ResourceBundle.getBundle(BUNDLE_NAME);
// 		} catch (MissingResourceException x) {
// 			fResourceBundle = null;
// 		}
// 		return fResourceBundle;
// 	}
// 
// 	static {
// 		NLS.initializeMessages(BUNDLE_NAME, AngularUIMessages.class);
// 	}
// }


import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.eclipse.angularjs.internal.ui.AngularUIMessages;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.preferences.IScopeContext;
import org.eclipse.osgi.util.NLS;
import tern.eclipse.ide.ui.handlers.AbstractConvertProjectCommandHandler;
import tern.server.ITernModule;
import tern.server.TernDef;
import tern.server.TernPlugin;
/**
 *  Copyright (c) 2013-2014 Angelo ZERR.
 *  All rights reserved. This program and the accompanying materials
 *  are made available under the terms of the Eclipse Public License v1.0
 *  which accompanies this distribution, and is available at
 *  http://www.eclipse.org/legal/epl-v10.html
 *
 *  Contributors:
 *  Angelo Zerr <angelo.zerr@gmail.com> - initial API and implementation
 */
package org.eclipse.angularjs.internal.ui.handlers;




/**
 * Convert selected project to Angular project.
 * 
 */
public class ConvertProjectToAngularCommandHandler extends
		AbstractConvertProjectCommandHandler {

	@Override
	protected String getConvertingProjectJobTitle(IProject project) {
		return NLS
// Path: org.eclipse.angularjs.ui/src/org/eclipse/angularjs/internal/ui/AngularUIMessages.java
// public final class AngularUIMessages extends NLS {
// 
// 	private static final String BUNDLE_NAME = "org.eclipse.angularjs.internal.ui.AngularUIMessages"; //$NON-NLS-1$
// 
// 	private static ResourceBundle fResourceBundle;
// 
// 	public static String ConvertProjectToAngular_converting_project_job_title;
// 
// 	public static String AngularGlobalPreferencesPage_desc;
// 	public static String HTMLAngularGlobalPreferencesPage_desc;
// 	public static String HTMLAngularEditorPreferencesPage_desc;
// 
// 	public static String Sample_HTMLAngular_doc;
// 
// 	public static String AngularTyping_Auto_Complete;
// 	public static String AngularTyping_Close_EL;
// 
// 	// Angular Explorer View
// 	public static String AngularOutline_computing;
// 	
// 	public static String GoToDefinitionAction_text;
// 	public static String GoToDefinitionAction_tooltip;
// 	public static String LinkToControllerAction_text;
// 	public static String LinkToControllerAction_tooltip;
// 	public static String RefreshExplorerAction_text;
// 	public static String RefreshExplorerAction_tooltip;
// 	public static String UnLinkToControllerAction_text;
// 	public static String UnLinkToControllerAction_tooltip;
// 
// 	public static String AngularExplorerView_openFile_error;
// 	public static String AngularExplorerView_openFileDialog_title;
// 
// 	public static String LexicalSortingAction_text;
// 	public static String LexicalSortingAction_tooltip;
// 	public static String LexicalSortingAction_description;
// 
// 	// Hyperlink
// 	public static String HTMLAngularHyperLink_text;
// 	public static String HTMLAngularHyperLink_typeLabel;
// 
// 	// Preferences
// 	public static String DirectivesPropertyPage_desc;
// 	public static String DirectivesPropertyPage_useOriginalName_label;
// 	public static String DirectivesPropertyPage_startsWithLabel_text;
// 	public static String DirectivesPropertyPage_startsWithNothing_label;
// 	public static String DirectivesPropertyPage_startsWithX_label;
// 	public static String DirectivesPropertyPage_startsWithData_label;
// 	public static String DirectivesPropertyPage_delimiterLabel_text;
// 	public static String DirectivesPropertyPage_colonDelimiter_label;
// 	public static String DirectivesPropertyPage_minusDelimiter_label;
// 	public static String DirectivesPropertyPage_underscoreDelimiter_label;
// 	public static String DirectivesPropertyPage_directiveTestLabel_text;
// 
// 	public static String ExpressionPropertyPage_startSybol_label;
// 	public static String ExpressionPropertyPage_endSybol_label;
// 
// 	public static String OpenAngularElementAction_label;
// 	public static String OpenAngularElementAction_description;
// 	public static String OpenAngularElementAction_tooltip;
// 	public static String OpenAngularElementAction_dialogMessage;
// 	public static String OpenAngularElementAction_dialogTitle;
// 
// 	// Protractor
// 	public static String ProtractorLaunchShortcut_Error;
// 	public static String ProtractorLaunchShortcut_Protractor_Failed;
// 
// 	public static String ProtractorPreferencesPage_desc;
// 	public static String ProtractorPreferencesPage_defaultCliFile_label;
// 	public static String ProtractorPreferencesPage_debugger_label;
// 	
// 	public static String Protractor_MainTab_location_label;
// 	public static String Protractor_MainTab_Select_a_protractor_config_file;
// 	public static String Protractor_ProtractorTab_name;
// 	public static String Protractor_ProtractorTab_cliFile;
// 
// 
// 	private AngularUIMessages() {
// 	}
// 
// 	public static ResourceBundle getResourceBundle() {
// 		try {
// 			if (fResourceBundle == null)
// 				fResourceBundle = ResourceBundle.getBundle(BUNDLE_NAME);
// 		} catch (MissingResourceException x) {
// 			fResourceBundle = null;
// 		}
// 		return fResourceBundle;
// 	}
// 
// 	static {
// 		NLS.initializeMessages(BUNDLE_NAME, AngularUIMessages.class);
// 	}
// }


// Path: org.eclipse.angularjs.ui/src/org/eclipse/angularjs/internal/ui/handlers/ConvertProjectToAngularCommandHandler.java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.eclipse.angularjs.internal.ui.AngularUIMessages;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.preferences.IScopeContext;
import org.eclipse.osgi.util.NLS;
import tern.eclipse.ide.ui.handlers.AbstractConvertProjectCommandHandler;
import tern.server.ITernModule;
import tern.server.TernDef;
import tern.server.TernPlugin;

/**
 *  Copyright (c) 2013-2014 Angelo ZERR.
 *  All rights reserved. This program and the accompanying materials
 *  are made available under the terms of the Eclipse Public License v1.0
 *  which accompanies this distribution, and is available at
 *  http://www.eclipse.org/legal/epl-v10.html
 *
 *  Contributors:
 *  Angelo Zerr <angelo.zerr@gmail.com> - initial API and implementation
 */
package org.eclipse.angularjs.internal.ui.handlers;




/**
 * Convert selected project to Angular project.
 * 
 */
public class ConvertProjectToAngularCommandHandler extends
		AbstractConvertProjectCommandHandler {

	@Override
	protected String getConvertingProjectJobTitle(IProject project) {
		return NLS
				.bind(AngularUIMessages.ConvertProjectToAngular_converting_project_job_title,