import os.path

import target_distribution_methods

from actions import TestIfFileUpToDateOnTargetAction, SftpSendFileAction

def create_actions(source, filename, sha1sum, size, target):	
	return [TestIfFileUpToDateOnTargetAction(filename, sha1sum, target),
		SftpSendFileAction(source, filename, sha1sum, size, target)]

target_distribution_methods.register('sftp', create_actions)
import os.path

import target_distribution_methods

from actions import ParallelScpSendFileAction

def create_action(task, source, filename, target):	
	return ParallelScpSendFileAction(task, source, filename, target)

target_distribution_methods.register('parallel_scp', create_action)
import os.path

import target_distribution_methods

from actions import CopyFileAction

def create_action(task, source, filename, target):	
	target_filename = os.path.join(target['directory'], filename)
	return CopyFileAction(task, source, target_filename)

target_distribution_methods.register('cp', create_action)