Merge branch 'master' into lttng_2_0_control_dev
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng2.ui / src / org / eclipse / linuxtools / internal / lttng2 / ui / views / control / remote / IRemoteSystemProxy.java
1 /**********************************************************************
2 * Copyright (c) 2012 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 * Bernd Hufmann - Initial API and implementation
11 **********************************************************************/
12 package org.eclipse.linuxtools.internal.lttng2.ui.views.control.remote;
13
14 import org.eclipse.core.commands.ExecutionException;
15 import org.eclipse.linuxtools.internal.lttng2.ui.views.control.service.ICommandShell;
16 import org.eclipse.rse.core.model.IRSECallback;
17 import org.eclipse.rse.core.subsystems.ICommunicationsListener;
18 import org.eclipse.rse.core.subsystems.ISubSystem;
19 import org.eclipse.rse.services.shells.IShellService;
20 import org.eclipse.rse.services.terminals.ITerminalService;
21 import org.eclipse.rse.subsystems.files.core.servicesubsystem.IFileServiceSubSystem;
22
23 /**
24 * <b><u>IRemoteSystemProxy</u></b>
25 * <p>
26 * Remote System Proxy interface.
27 * </p>
28 */
29 public interface IRemoteSystemProxy {
30
31 // ------------------------------------------------------------------------
32 // Operations
33 // ------------------------------------------------------------------------
34 /**
35 * Find the first shell service.
36 *
37 * @return shell service object, or <code>null</code> if not found.
38 */
39 public IShellService getShellService();
40
41 /**
42 * Find the first terminal service.
43 *
44 * @return shell service object, or <code>null</code> if not found.
45 */
46 public ITerminalService getTerminalService();
47
48 /**
49 * Find the first IShellServiceSubSystem service.
50 *
51 * @return shell service subsystem, or <code>null</code> if not found.
52 */
53 public ISubSystem getShellServiceSubSystem();
54
55 /**
56 * Find the first ITerminalServiceSubSystem service.
57 *
58 * @param host the connection
59 * @return shell service subsystem, or <code>null</code> if not found.
60 */
61 public ISubSystem getTerminalServiceSubSystem();
62
63 /**
64 * Finds the File Service Subsystem.
65 * @return file service subsystem, or <code>null</code> if not found.
66 */
67 public IFileServiceSubSystem getFileServiceSubSystem();
68
69 /**
70 * Connects the shell service sub system.
71 *
72 * @param callback - call-back method being called when connection was finished
73 * @throws Exception
74 */
75 public void connect(IRSECallback callback) throws ExecutionException;
76
77 /**
78 * Disconnects from the shell service sub system.
79 *
80 * @throws Exception
81 */
82 public void disconnect() throws ExecutionException;
83
84 /**
85 * Creates a command shell.
86 *
87 * @return the command shell implementation
88 * @throws Exception
89 */
90 public ICommandShell createCommandShell() throws ExecutionException;
91
92 /**
93 * Method to add a communication listener to the connector service defined for
94 * the given connection.
95 *
96 * @param listener - listener to add
97 * @throws Exception
98 */
99 public void addCommunicationListener(ICommunicationsListener listener);
100
101 /**
102 * Method to remove a communication listener from the connector service defined for
103 * the given connection.
104 *
105 * @param listener - listener to remove
106 * @throws Exception
107 */
108 public void removeCommunicationListener(ICommunicationsListener listener);
109
110 }
This page took 0.059333 seconds and 6 git commands to generate.