def extendProtocol(lFactory, sFactory):
	global dtnMonitors, BundleWriter

	try:
		if ExtensionLoader().isActive("Groups") is False:
			raise KeyError, "Group extension not active"

		if ExtensionLoader().isActive("HTTP-DTN") is False:
			raise KeyError, "HTTP-DTN extension not active"

		if ExtensionLoader().isActive("DTNHealingDataModel") is False:
			raise KeyError, "DTNHealingDataModel was not loaded"

		dtnMonitors = (ExtensionLoader().
						getExtension("Groups").
							getGroup("DTN-Healers"))

		dtnExtension = ExtensionLoader().getExtension("HTTP-DTN")

		BundleWriter = dtnExtension.BundleWriter

	except KeyError as e:
		return False

	dtnExtension.addToken('dtnhealing', DTNHealingParser)

	return True