diff options
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/properties/ProjectPropertiesLinkProvider.java')
-rw-r--r-- | org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/properties/ProjectPropertiesLinkProvider.java | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/properties/ProjectPropertiesLinkProvider.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/properties/ProjectPropertiesLinkProvider.java deleted file mode 100644 index 79f588617..000000000 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/properties/ProjectPropertiesLinkProvider.java +++ /dev/null @@ -1,92 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2004, 2008 Eugene Kuleshov and others. - * 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: - * Eugene Kuleshov - initial API and implementation - *******************************************************************************/ - -package org.eclipse.mylyn.internal.tasks.ui.properties; - -import org.eclipse.core.resources.IProject; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.resources.ProjectScope; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.core.runtime.preferences.IEclipsePreferences; -import org.eclipse.core.runtime.preferences.IScopeContext; -import org.eclipse.mylyn.commons.core.StatusHandler; -import org.eclipse.mylyn.internal.tasks.ui.TasksUiPlugin; -import org.eclipse.mylyn.tasks.core.IRepositoryManager; -import org.eclipse.mylyn.tasks.core.TaskRepository; -import org.eclipse.mylyn.tasks.ui.AbstractTaskRepositoryLinkProvider; -import org.osgi.service.prefs.BackingStoreException; - -/** - * Default Task Repository link provider - * - * @author Eugene Kuleshov - */ -public class ProjectPropertiesLinkProvider extends AbstractTaskRepositoryLinkProvider { - - private static final String PROPERTY_PREFIX = "project.repository"; //$NON-NLS-1$ - - private static final String PROJECT_REPOSITORY_KIND = PROPERTY_PREFIX + ".kind"; //$NON-NLS-1$ - - private static final String PROJECT_REPOSITORY_URL = PROPERTY_PREFIX + ".url"; //$NON-NLS-1$ - - @Override - public TaskRepository getTaskRepository(IResource resource, IRepositoryManager repositoryManager) { - IProject project = resource.getProject(); - if (project == null || !project.isAccessible()) { - return null; - } - - IScopeContext projectScope = new ProjectScope(project); - IEclipsePreferences projectNode = projectScope.getNode(TasksUiPlugin.ID_PLUGIN); - if (projectNode != null) { - String kind = projectNode.get(PROJECT_REPOSITORY_KIND, ""); //$NON-NLS-1$ - String urlString = projectNode.get(PROJECT_REPOSITORY_URL, ""); //$NON-NLS-1$ - return repositoryManager.getRepository(kind, urlString); - } - return null; - } - - @Override - public boolean canSetTaskRepository(IResource resource) { - IProject project = resource.getProject(); - return project != null && project.isAccessible(); - } - - @Override - public boolean setTaskRepository(IResource resource, TaskRepository repository) { - IProject project = resource.getProject(); - if (project == null || !project.isAccessible()) { - return false; - } - - IScopeContext projectScope = new ProjectScope(project); - IEclipsePreferences projectNode = projectScope.getNode(TasksUiPlugin.ID_PLUGIN); - if (projectNode != null) { - if (repository != null) { - projectNode.put(PROJECT_REPOSITORY_KIND, repository.getConnectorKind()); - projectNode.put(PROJECT_REPOSITORY_URL, repository.getRepositoryUrl()); - } else { - projectNode.remove(PROJECT_REPOSITORY_KIND); - projectNode.remove(PROJECT_REPOSITORY_URL); - } - try { - projectNode.flush(); - return true; - } catch (BackingStoreException e) { - StatusHandler.log(new Status(IStatus.ERROR, TasksUiPlugin.ID_PLUGIN, - "Failed to save task repository to project association preference", e)); //$NON-NLS-1$ - } - } - return false; - } - -} |