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'sTransferPluginclass and org.syncany.plugins.dummy_plugin.DummyPluginTransferSettings is the correspondingTransferSettingsimplementation.
-
-
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-specificTransferSettingsinstance.<T extends TransferManager>
TcreateTransferManager(TransferSettings transferSettings, Config config)Creates an initialized, plugin-specificTransferManagerobject 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-specificTransferSettingsinstance.- Returns:
- Empty plugin-specific
TransferSettingsinstance. - Throws:
StorageException- Thrown if noTransferSettingsare attached to a plugin
-
createTransferManager
public final <T extends TransferManager> T createTransferManager(TransferSettings transferSettings, Config config) throws StorageException
Creates an initialized, plugin-specificTransferManagerobject using the given connection details.The created instance can be used to upload/download/delete
RemoteFiles and query the remote storage for a file list.- Parameters:
transferSettings- A validTransferSettingsinstance.config- A validConfiginstance.- Returns:
- A initialized, plugin-specific
TransferManagerinstance. - Throws:
StorageException- Thrown if no (valid)TransferManagerare attached to a plugin
-
-