Package org.syncany.plugins.transfer
Class TransferPlugin
- java.lang.Object
-
- org.syncany.plugins.Plugin
-
- org.syncany.plugins.transfer.TransferPlugin
-
- Direct Known Subclasses:
LocalTransferPlugin
public abstract class TransferPlugin extends Plugin
The transfer plugin is a special plugin responsible for transferring files to the remote storage. Implementations must provide implementations forTransferPlugin
(this class),TransferSettings
(connection details) andTransferManager
(transfer methods).
Plugins have to follow a naming convention:
- Package names have to be lower snaked cased
- Class names have to be camel cased
- Package names will be converted to class names by replacing underscores ('_') and uppercasing the subsequent character.
Example:
A plugin is called DummyPlugin, hence org.syncany.plugins.dummy_plugin.DummyPluginTransferPlugin is the plugin'sTransferPlugin
class and org.syncany.plugins.dummy_plugin.DummyPluginTransferSettings is the correspondingTransferSettings
implementation.
-
-
Constructor Summary
Constructors Constructor Description TransferPlugin(java.lang.String pluginId)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends TransferSettings>
TcreateEmptySettings()
Creates an empty plugin-specificTransferSettings
instance.<T extends TransferManager>
TcreateTransferManager(TransferSettings transferSettings, Config config)
Creates an initialized, plugin-specificTransferManager
object using the given connection details.-
Methods inherited from class org.syncany.plugins.Plugin
getDateStr, getId, getName, getVersion
-
-
-
-
Constructor Detail
-
TransferPlugin
public TransferPlugin(java.lang.String pluginId)
-
-
Method Detail
-
createEmptySettings
public final <T extends TransferSettings> T createEmptySettings() throws StorageException
Creates an empty plugin-specificTransferSettings
instance.- Returns:
- Empty plugin-specific
TransferSettings
instance. - Throws:
StorageException
- Thrown if noTransferSettings
are attached to a plugin
-
createTransferManager
public final <T extends TransferManager> T createTransferManager(TransferSettings transferSettings, Config config) throws StorageException
Creates an initialized, plugin-specificTransferManager
object using the given connection details.The created instance can be used to upload/download/delete
RemoteFile
s and query the remote storage for a file list.- Parameters:
transferSettings
- A validTransferSettings
instance.config
- A validConfig
instance.- Returns:
- A initialized, plugin-specific
TransferManager
instance. - Throws:
StorageException
- Thrown if no (valid)TransferManager
are attached to a plugin
-
-