func (p UpdateExportProcessor) Process() {
	printDebug("UPDATEEXPORT", p.UpdateExportMsg)
	Export := types.GetExportById(p.UpdateExportMsg.ExportId, p.GetAgent())
	Export.UpdateTags(p.UpdateExportMsg.Tags)
	var pjp PendingJobProcessor
	pjp.Appkey = Export.GetAppKey()
	pjp.GenericProcessor = processor.GetGenericProcessor()
	p.SpawnProcess(pjp)
	var uesp ExportedStateProcessor
	uesp.AppKey = Export.GetAppKey()
	uesp.GenericProcessor = processor.GetGenericProcessor()

	p.SpawnProcess(uesp)

	if !Export.GetApp().IsNode() {
		for _, node := range types.GetNodes(p.GetAgent()) {
			node.Lock()
			var smp SendMessageProcessor
			smp.App = node
			smp.Msg = p.UpdateExportMsg
			smp.GenericProcessor = processor.GetGenericProcessor()
			p.SpawnProcess(smp)
			node.Unlock()
		}
	}
}
func (p ResultProcessor) Process() {
	printDebug("Processing result")

	job := types.GetJobFromResult(p.Result, p.GetAgent())
	switch p.Result.CallType {
	case calltypes.ONE2ONE:
		if job.Exists() {
			imp := job.GetImport()
			var smp SendMessageProcessor
			smp.App = imp.GetApp()
			smp.Msg = p.Result
			smp.GenericProcessor = processor.GetGenericProcessor()
			p.SpawnProcess(smp)
			job.Remove()
		}
	case calltypes.ONE2MANY:
		if job.Exists() {
			imp := job.GetImport()
			var smp SendMessageProcessor
			printDebug("SENDING ONE2MANY RES", imp.GetApp())

			smp.App = imp.GetApp()
			smp.Msg = p.Result
			smp.GenericProcessor = processor.GetGenericProcessor()
			p.SpawnProcess(smp)
		}
	case calltypes.MANY2MANY, calltypes.MANY2ONE:
		exp := types.GetExportById(p.Result.ExportId, p.GetAgent())
		for _, imp := range exp.GetAppKey().GetListener(p.Result.FunctionName, exp) {
			printDebug("Sending to", imp.GetId())
			var smp SendMessageProcessor
			smp.App = imp.GetApp()
			res := p.Result
			res.ImportId = imp.GetId()
			smp.Msg = res
			smp.GenericProcessor = processor.GetGenericProcessor()
			p.SpawnProcess(smp)
			job.Remove()
		}
	}

}