Package org.eclipse.remote.core

# Interface IRemoteConnectionWorkingCopy

All Superinterfaces:
  `IRemoteConnection`

public interface IRemoteConnectionWorkingCopy extends IRemoteConnection
A working copy of a remote connection used to change the name and/or attributes of the connection. It is also used when creating a new connection

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.eclipse.remote.core.IRemoteConnection

`IRemoteConnection.Service`

## Field Summary

### Fields inherited from interface org.eclipse.remote.core.IRemoteConnection

`FILE_SEPARATOR_PROPERTY, LINE_SEPARATOR_PROPERTY, LOCALE_CHARMAP_PROPERTY, OS_ARCH_PROPERTY, OS_NAME_PROPERTY, OS_VERSION_PROPERTY, PATH_SEPARATOR_PROPERTY, USER_HOME_PROPERTY`

## Method Summary

Modifier and Type
Method
Description
`IRemoteConnection`
`getOriginal()`
Returns the original connection this working copy was created from.
`boolean`
`isDirty()`
Returns whether this connection has been modified since it was last saved or created.
`IRemoteConnection`
`save()`
Saves this working copy to its original connection and returns a handle to the resulting connection.
`void`
`setAttribute(String key, String value)`
Set an implementation dependent attribute for the connection.
`void`
`setName(String name)`
Set the name for this connection
`void`
`setSecureAttribute(String key, String value)`
Set an attribute such as a password that's stored in secure storage.

### Methods inherited from interface org.eclipse.remote.core.IRemoteConnection

`addConnectionChangeListener, close, fireConnectionChangeEvent, getAttribute, getConnectionType, getName, getProperty, getSecureAttribute, getService, getWorkingCopy, hasService, isOpen, open, removeConnectionChangeListener`

## Method Details

### getOriginal

IRemoteConnection getOriginal()
Returns the original connection this working copy was created from. Returns null if this is a new connection.

Returns:
  original connection

### isDirty

boolean isDirty()
Returns whether this connection has been modified since it was last saved or created.

Returns:
  true if the connection has been modified

### save

IRemoteConnection save() throws RemoteConnectionException
Saves this working copy to its original connection and returns a handle to the resulting connection. Has no effect if this connection does not need saving.

Returns:
  saved connection
Throws:
  `RemoteConnectionException`

### setName

void setName(String name)
Set the name for this connection

Parameters:
  `name` -

### setAttribute

void setAttribute(String key, String value)
Set an implementation dependent attribute for the connection. Attributes keys supported by the connection can be obtained using `#getAttributes()`. Attributes are persisted along with connection information.

Parameters:
  `key` - attribute key
  `value` - attribute value

### setSecureAttribute

void setSecureAttribute(String key, String value)
Set an attribute such as a password that's stored in secure storage.

Parameters:
  `key` -
  `value` -
Since:
  2.0