~ubuntu-branches/ubuntu/vivid/eclipse-linuxtools/vivid-proposed

« back to all changes in this revision

Viewing changes to lttng/org.eclipse.linuxtools.tmf.ui/src/org/eclipse/linuxtools/internal/tmf/ui/project/handlers/RefreshAction.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam, Jakub Adam, tony mancill
  • Date: 2014-10-11 11:44:05 UTC
  • mfrom: (1.2.4)
  • Revision ID: package-import@ubuntu.com-20141011114405-yazjvxfzzhmi5sgj
Tags: 3.1.0-1
[ Jakub Adam ]
* New upstream release (Closes: #761524).
* Refreshed d/patches.
* Don't build removed feature org.eclipse.linuxtools.tools.launch
  - merged into org.eclipse.linuxtools.profiling.
* Use javac target 1.7.
* Build new feature org.eclipse.linuxtools.dataviewers.feature
  - required by Valgrind integration.
* Build-depend on eclipse-remote-services-api and eclipse-cdt-autotools.
* Bump Standards-Version to 3.9.6.
* Override incompatible-java-bytecode-format - linuxtools needs Java 7.
* Remove unused codeless-jar override.

[ tony mancill ]
* Tweak short package description to make lintian happy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*******************************************************************************
2
 
* Copyright (c) 2012, 2013 Ericsson
3
 
 *
4
 
 * All rights reserved. This program and the accompanying materials are
5
 
 * made available under the terms of the Eclipse Public License v1.0 which
6
 
 * accompanies this distribution, and is available at
7
 
 * http://www.eclipse.org/legal/epl-v10.html
8
 
 *
9
 
 * Contributors:
10
 
 *   Patrick Tasse - Initial API and implementation
11
 
 *******************************************************************************/
12
 
 
13
 
package org.eclipse.linuxtools.internal.tmf.ui.project.handlers;
14
 
 
15
 
import org.eclipse.core.commands.ExecutionException;
16
 
import org.eclipse.core.commands.NotEnabledException;
17
 
import org.eclipse.core.commands.NotHandledException;
18
 
import org.eclipse.core.commands.common.NotDefinedException;
19
 
import org.eclipse.jface.action.Action;
20
 
import org.eclipse.jface.viewers.ISelection;
21
 
import org.eclipse.jface.viewers.ISelectionProvider;
22
 
import org.eclipse.jface.viewers.IStructuredSelection;
23
 
import org.eclipse.linuxtools.internal.tmf.ui.Activator;
24
 
import org.eclipse.linuxtools.tmf.ui.project.model.TmfExperimentElement;
25
 
import org.eclipse.linuxtools.tmf.ui.project.model.TmfExperimentFolder;
26
 
import org.eclipse.linuxtools.tmf.ui.project.model.TmfProjectModelElement;
27
 
import org.eclipse.linuxtools.tmf.ui.project.model.TmfTraceFolder;
28
 
import org.eclipse.ui.IWorkbenchPage;
29
 
import org.eclipse.ui.handlers.IHandlerService;
30
 
 
31
 
/**
32
 
 * <b><u>RefreshAction</u></b>
33
 
 * <p>
34
 
 * Implement me. Please.
35
 
 * <p>
36
 
 */
37
 
public class RefreshAction extends Action {
38
 
 
39
 
    private static final String REFRESH_COMMAND_ID = "org.eclipse.ui.file.refresh"; //$NON-NLS-1$
40
 
 
41
 
    private IWorkbenchPage page;
42
 
    private ISelectionProvider selectionProvider;
43
 
    private TmfProjectModelElement element;
44
 
 
45
 
    /**
46
 
     * Default constructor
47
 
     * @param page the workbench page
48
 
     * @param selectionProvider the selection provider
49
 
     */
50
 
    public RefreshAction(IWorkbenchPage page, ISelectionProvider selectionProvider) {
51
 
        this.page = page;
52
 
        this.selectionProvider = selectionProvider;
53
 
    }
54
 
 
55
 
    @Override
56
 
    public boolean isEnabled() {
57
 
        ISelection selection = selectionProvider.getSelection();
58
 
        if (!selection.isEmpty()) {
59
 
            IStructuredSelection sSelection = (IStructuredSelection) selection;
60
 
            if (sSelection.size() == 1) {
61
 
                if (sSelection.getFirstElement() instanceof TmfTraceFolder ||
62
 
                        sSelection.getFirstElement() instanceof TmfExperimentFolder ||
63
 
                        sSelection.getFirstElement() instanceof TmfExperimentElement) {
64
 
                    element = (TmfProjectModelElement) sSelection.getFirstElement();
65
 
                    return true;
66
 
                }
67
 
            }
68
 
        }
69
 
        return false;
70
 
    }
71
 
 
72
 
    @Override
73
 
    public void run() {
74
 
        try {
75
 
            IHandlerService handlerService = (IHandlerService) page.getActivePart().getSite().getService(IHandlerService.class);
76
 
            if (element instanceof TmfTraceFolder || element instanceof TmfExperimentFolder || element instanceof TmfExperimentElement) {
77
 
                handlerService.executeCommand(REFRESH_COMMAND_ID, null);
78
 
            }
79
 
        } catch (ExecutionException e) {
80
 
            Activator.getDefault().logError("Error refreshing resource " + element.getName(), e); //$NON-NLS-1$
81
 
        } catch (NotDefinedException e) {
82
 
            Activator.getDefault().logError("Error refreshing resource " + element.getName(), e); //$NON-NLS-1$
83
 
        } catch (NotEnabledException e) {
84
 
            Activator.getDefault().logError("Error refreshing resource " + element.getName(), e); //$NON-NLS-1$
85
 
        } catch (NotHandledException e) {
86
 
            Activator.getDefault().logError("Error refreshing resource " + element.getName(), e); //$NON-NLS-1$
87
 
        }
88
 
    }
89
 
 
90
 
}