
class MultipleSubscriptionOperation(object):
	def run(self, try_subscription, subscriptions):
		raise NotImplementedError()

class MoveContext:
	"""Move context contains common to many move operations properties/functions  (and so passed as an entire entity to them). 
	
	Has the following properties:
	conn - instance of parallels.core.connections.Connections
	ppa_data - instance of parallels.ppa_sn.ppa_data.PPAData
	session_dir - instance of parallels.ppa_sn.session_dir.SessionDir - session directory for the local node (where the migration tool is running)
	get_windows_node_session_dir - function that accepts runner object and returns parallels.ppa_sn.session_dir.RemoteSessionDir object for that runner
	"""
	def __init__(self, conn, ppa_data, session_dir, get_windows_node_session_dir):
		self.conn = conn
		self.ppa_data = ppa_data
		self.session_dir = session_dir
		self.get_windows_node_session_dir = get_windows_node_session_dir

