CORD-2247: Write basic static checker for xproto

Change-Id: I63a96972e16fd8dd62d4dec840eede66cbb26368
diff --git a/lib/xos-genx/xos-genx-tests/attics/xosmodel_bottom.py b/lib/xos-genx/xos-genx-tests/attics/xosmodel_bottom.py
index 8e28718..734aed5 100644
--- a/lib/xos-genx/xos-genx-tests/attics/xosmodel_bottom.py
+++ b/lib/xos-genx/xos-genx-tests/attics/xosmodel_bottom.py
@@ -15,4 +15,4 @@
 
 
 def bottom():
-    return 'bottom'
\ No newline at end of file
+    return 'bottom'
diff --git a/lib/xos-genx/xos-genx-tests/attics/xosmodel_header.py b/lib/xos-genx/xos-genx-tests/attics/xosmodel_header.py
index 044eb4e..5cee4a3 100644
--- a/lib/xos-genx/xos-genx-tests/attics/xosmodel_header.py
+++ b/lib/xos-genx/xos-genx-tests/attics/xosmodel_header.py
@@ -15,4 +15,4 @@
 
 
 def header():
-    return 'header'
\ No newline at end of file
+    return 'header'
diff --git a/lib/xos-genx/xos-genx-tests/attics/xosmodel_model.py b/lib/xos-genx/xos-genx-tests/attics/xosmodel_model.py
index ca48b14..048641a 100644
--- a/lib/xos-genx/xos-genx-tests/attics/xosmodel_model.py
+++ b/lib/xos-genx/xos-genx-tests/attics/xosmodel_model.py
@@ -15,4 +15,4 @@
 
 
 def model():
-    return 'model'
\ No newline at end of file
+    return 'model'
diff --git a/lib/xos-genx/xos-genx-tests/attics/xosmodel_top.py b/lib/xos-genx/xos-genx-tests/attics/xosmodel_top.py
index 2d0adcb..79752d0 100644
--- a/lib/xos-genx/xos-genx-tests/attics/xosmodel_top.py
+++ b/lib/xos-genx/xos-genx-tests/attics/xosmodel_top.py
@@ -15,4 +15,4 @@
 
 
 def top():
-    return 'top'
\ No newline at end of file
+    return 'top'
diff --git a/lib/xos-genx/xos-genx-tests/parse_test.py b/lib/xos-genx/xos-genx-tests/parse_test.py
index 88c7372..e63c7d0 100644
--- a/lib/xos-genx/xos-genx-tests/parse_test.py
+++ b/lib/xos-genx/xos-genx-tests/parse_test.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 class XProtoParseTests(unittest.TestCase):
@@ -31,7 +31,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("vsg", output)
         self.assertIn("vSG Service", output)
 
@@ -60,7 +60,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("PhoneNumber", output)
 
     def test_link_extensions(self):
@@ -75,7 +75,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("VRouterService", output)
 	
 	pass
@@ -91,7 +91,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("ServiceProxy", output)
 
     def test_message_options(self):
@@ -105,7 +105,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("e1000", output)
 
 	pass
@@ -121,7 +121,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("Base", output)
 
 if __name__ == '__main__':
diff --git a/lib/xos-genx/xos-genx-tests/target_test.py b/lib/xos-genx/xos-genx-tests/target_test.py
index b45f5ed..dde39dd 100644
--- a/lib/xos-genx/xos-genx-tests/target_test.py
+++ b/lib/xos-genx/xos-genx-tests/target_test.py
@@ -16,7 +16,7 @@
 
 import unittest
 import os
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers, OUTPUT_DIR
 
 TEST_FILE = "test_file"
@@ -43,7 +43,7 @@
         args.inputs = ''
         args.target = target
         args.attic = OUTPUT_DIR
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn(TEST_OUTPUT, output)
 
     def test_xproto_lib(self):
@@ -54,7 +54,7 @@
         args = FakeArgs()
         args.inputs = ''
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("Eureka", output)
 
     def test_context(self):
@@ -66,7 +66,7 @@
         args.inputs = ''
         args.target = target
         args.kv='what:what is what'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("what is what", output)
 
     def test_singularize(self):
@@ -93,7 +93,7 @@
         args = FakeArgs()
         args.inputs = proto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertEqual("one,sheep,radius,slice,network,omf_friendly", output.lstrip().rstrip().rstrip(','))
 
     def test_pluralize(self):
@@ -120,7 +120,7 @@
         args = FakeArgs()
         args.inputs = proto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertEqual("data,sheep,radii,slices,networks,omf_friendlies", output.lstrip().rstrip().rstrip(','))
 
 if __name__ == '__main__':
diff --git a/lib/xos-genx/xos-genx-tests/test_cli.py b/lib/xos-genx/xos-genx-tests/test_cli.py
index e6de65c..4beef06 100644
--- a/lib/xos-genx/xos-genx-tests/test_cli.py
+++ b/lib/xos-genx/xos-genx-tests/test_cli.py
@@ -22,7 +22,7 @@
 class Args:
     pass
 
-class XOSGeneratorTest(unittest.TestCase):
+class XOSProcessorTest(unittest.TestCase):
     """
     Testing the CLI binding for the XOS Generative Toolchain
     """
@@ -47,11 +47,10 @@
         expected_args.target = os.path.abspath(os.getcwd() + '/' + args.target)
         expected_args.output = os.path.abspath(os.getcwd() + '/' + args.output)
 
-        with patch("xosgenx.xosgen.XOSGenerator.generate") as generator:
+        with patch("xosgenx.xosgen.XOSProcessor.process") as generator:
             XosGen.init(args)
             actual_args = generator.call_args[0][0]
             self.assertEqual(actual_args.files, expected_args.files)
-            self.assertEqual(actual_args.target, expected_args.target)
             self.assertEqual(actual_args.output, expected_args.output)
 
 if __name__ == '__main__':
diff --git a/lib/xos-genx/xos-genx-tests/test_django_generator.py b/lib/xos-genx/xos-genx-tests/test_django_generator.py
index 8567d2a..0ba90b5 100644
--- a/lib/xos-genx/xos-genx-tests/test_django_generator.py
+++ b/lib/xos-genx/xos-genx-tests/test_django_generator.py
@@ -16,7 +16,7 @@
 
 import unittest
 import os
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs
 
 VROUTER_XPROTO = os.path.abspath(os.path.dirname(os.path.realpath(__file__)) + "/xproto/vrouterport.xproto")
@@ -30,7 +30,7 @@
         args = FakeArgs()
         args.files = [VROUTER_XPROTO]
         args.target = 'django.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         fields = filter(lambda s:'Field(' in s, output.splitlines())
         self.assertEqual(len(fields), 2)
@@ -60,7 +60,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'django.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         null_true = filter(lambda s: 'null = True' in s, output.splitlines())
         null_false = filter(lambda s: 'null = False' in s, output.splitlines())
diff --git a/lib/xos-genx/xos-genx-tests/test_field_graph.py b/lib/xos-genx/xos-genx-tests/test_field_graph.py
index f7f004c..38f77b7 100644
--- a/lib/xos-genx/xos-genx-tests/test_field_graph.py
+++ b/lib/xos-genx/xos-genx-tests/test_field_graph.py
@@ -17,7 +17,7 @@
 import unittest
 from xosgenx.jinja2_extensions import FieldNotFound
 from helpers import FakeArgs, OUTPUT_DIR, XProtoTestHelpers
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 
 class XProtoFieldGraphTest(unittest.TestCase):
     def test_field_graph(self):
@@ -46,7 +46,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         output =  eval(output)
         self.assertIn({'A','B','C'}, output)
         self.assertIn({'openflow_id','name'}, output)
@@ -80,10 +80,10 @@
             args = FakeArgs()
             args.inputs = xproto
             args.target = target
-            output = XOSGenerator.generate(args)
+            output = XOSProcessor.process(args)
 
         # The following call generates some output, which should disappear
-        # when Matteo merges his refactoring of XOSGenerator.
+        # when Matteo merges his refactoring of XOSProcessor.
         self.assertRaises(FieldNotFound, generate)
 
 if __name__ == '__main__':
diff --git a/lib/xos-genx/xos-genx-tests/test_general_security.py b/lib/xos-genx/xos-genx-tests/test_general_security.py
index b571294..8744a6c 100644
--- a/lib/xos-genx/xos-genx-tests/test_general_security.py
+++ b/lib/xos-genx/xos-genx-tests/test_general_security.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 """The function below is for eliminating warnings arising due to the missing output_security_check,
@@ -46,7 +46,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -69,7 +69,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -97,7 +97,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output,globals()) # This loads the generated function, which should look like this:
 
@@ -135,7 +135,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output,globals()) # This loads the generated function, which should look like this:
 
@@ -171,7 +171,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -202,7 +202,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -221,7 +221,7 @@
 	args = FakeArgs()
         args.inputs = xproto
         args.target = self.target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -244,7 +244,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         """
         def output_security_check(obj, ctx):
             i2 = Credential.objects.filter((~ Q(obj_id=obj_id)))[0]
diff --git a/lib/xos-genx/xos-genx-tests/test_general_validation.py b/lib/xos-genx/xos-genx-tests/test_general_validation.py
index fbed567..0fc0092 100644
--- a/lib/xos-genx/xos-genx-tests/test_general_validation.py
+++ b/lib/xos-genx/xos-genx-tests/test_general_validation.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 import pdb
 
@@ -47,7 +47,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -71,7 +71,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -101,7 +101,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -131,7 +131,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -162,7 +162,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -182,7 +182,7 @@
 	args = FakeArgs()
         args.inputs = xproto
         args.target = self.target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -207,7 +207,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output,globals()) # This loads the generated function, which should look like this:
 
@@ -244,7 +244,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         """
         def policy_output_enforcer(obj, ctx):
diff --git a/lib/xos-genx/xos-genx-tests/test_generator.py b/lib/xos-genx/xos-genx-tests/test_generator.py
index f59bbfd..9b1a44a 100644
--- a/lib/xos-genx/xos-genx-tests/test_generator.py
+++ b/lib/xos-genx/xos-genx-tests/test_generator.py
@@ -17,7 +17,7 @@
 import unittest
 import os
 from helpers import FakeArgs, OUTPUT_DIR
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 
 TEST_EXPECTED_OUTPUT = """
     name: XOSModel
@@ -39,7 +39,7 @@
 
 TEST_ATTICS = os.path.abspath(os.path.dirname(os.path.realpath(__file__)) + "/attics/")
 
-class XOSGeneratorTest(unittest.TestCase):
+class XOSProcessorTest(unittest.TestCase):
     """
     Testing the XOS Generative Toolchain
     """
@@ -58,7 +58,7 @@
         args = FakeArgs()
         args.files = [TEST_XPROTO]
         args.target = TEST_TARGET
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertEqual(output, TEST_EXPECTED_OUTPUT)
 
     def test_generator_custom_target_from_inputs(self):
@@ -68,7 +68,7 @@
         args = FakeArgs()
         args.inputs = open(TEST_XPROTO).read()
         args.target = TEST_TARGET
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertEqual(output, TEST_EXPECTED_OUTPUT)
 
     def test_django_with_attic(self):
@@ -82,7 +82,7 @@
         args.output = OUTPUT_DIR
         args.dest_extension = 'py'
         args.write_to_file = 'model'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         # xosmodel has custom header attic
         self.assertIn('from xosmodel_header import *', output['XOSModel'])
@@ -113,7 +113,7 @@
         args.output = OUTPUT_DIR
         args.dest_extension = 'py'
         args.write_to_file = 'model'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         # verify files
         xosmodel = OUTPUT_DIR + '/xosmodel.py'
@@ -138,7 +138,7 @@
         args.output = OUTPUT_DIR
         args.dest_extension = 'txt'
         args.write_to_file = 'model'
-        XOSGenerator.generate(args)
+        XOSProcessor.process(args)
 
         generated_files = [f for f in os.listdir(OUTPUT_DIR) if not f.startswith('.')]
         self.assertEqual(len(generated_files), 2)
@@ -158,7 +158,7 @@
         args.target = SPLIT_TARGET
         args.output = OUTPUT_DIR
         args.write_to_file = 'target'
-        XOSGenerator.generate(args)
+        XOSProcessor.process(args)
 
         generated_files = [f for f in os.listdir(OUTPUT_DIR) if not f.startswith('.')]
         self.assertEqual(len(generated_files), 2)
@@ -176,7 +176,7 @@
         args.output = OUTPUT_DIR
         args.dest_extension = 'py'
         args.write_to_file = 'model'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         # should not print a file if options.skip_django = True
         file = OUTPUT_DIR + '/user.py'
@@ -188,7 +188,7 @@
         args.target = 'service.xtarget'
         args.output = OUTPUT_DIR
         args.write_to_file = 'target'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         model = OUTPUT_DIR + '/models.py'
         self.assertTrue(os.path.isfile(model))
diff --git a/lib/xos-genx/xos-genx-tests/test_graph.py b/lib/xos-genx/xos-genx-tests/test_graph.py
index 48978e9..cda36d0 100644
--- a/lib/xos-genx/xos-genx-tests/test_graph.py
+++ b/lib/xos-genx/xos-genx-tests/test_graph.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 class XProtoGraphTests(unittest.TestCase):
@@ -115,7 +115,7 @@
         args = FakeArgs()
         args.inputs = proto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         num_semis = output.count(';')
         self.assertGreater(num_semis, 3) # 3 is the number of links, each of which contains at least one field
 
@@ -216,7 +216,7 @@
         args = FakeArgs()
         args.inputs = proto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         num_semis = output.count(';')
         self.assertGreater(num_semis, 3)
@@ -308,7 +308,7 @@
         args = FakeArgs()
         args.inputs = proto
         args.target = xtarget
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn('easter_egg', output)
 
 if __name__ == '__main__':
diff --git a/lib/xos-genx/xos-genx-tests/test_package.py b/lib/xos-genx/xos-genx-tests/test_package.py
index 127fc07..373a818 100644
--- a/lib/xos-genx/xos-genx-tests/test_package.py
+++ b/lib/xos-genx/xos-genx-tests/test_package.py
@@ -16,7 +16,7 @@
 
 import unittest
 import os
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 class XProtoPackageTest(unittest.TestCase):
@@ -46,7 +46,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         self.assertIn('Port,xos.core,xos.core.Port', output)
 
@@ -162,7 +162,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         self.assertIn('numberCores', output) # Instance showed up via cross-package call
         self.assertIn('ip;', output) # Network showed up via cross-package call
@@ -223,7 +223,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         self.assertIn('xos_created', output)
 
@@ -324,7 +324,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         self.assertIn('easter_egg', output)
 
@@ -430,7 +430,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         self.assertEqual(output.count('firstapp'), 2)
         self.assertEqual(output.count('networkapp'), 2)
diff --git a/lib/xos-genx/xos-genx-tests/test_policy.py b/lib/xos-genx/xos-genx-tests/test_policy.py
index 3ff700b..9e77976 100644
--- a/lib/xos-genx/xos-genx-tests/test_policy.py
+++ b/lib/xos-genx/xos-genx-tests/test_policy.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 import pdb
 
@@ -41,7 +41,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("true_policy", output)
 
     def test_constant(self):
@@ -56,7 +56,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args).replace('t','T')
+        output = XOSProcessor.process(args).replace('t','T')
         self.assertTrue(eval(output)) 
 
     def test_function_term(self):
@@ -70,7 +70,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
        
         slice = FakeArgs()
         slice.user = FakeArgs()
@@ -90,7 +90,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
        
         slice = FakeArgs()
         slice.user = FakeArgs()
@@ -110,7 +110,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
        
         slice = FakeArgs()
         slice.user = FakeArgs()
@@ -130,7 +130,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
        
         slice = FakeArgs()
         slice.user = FakeArgs()
@@ -150,7 +150,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
        
         slice = FakeArgs()
         slice.user = 'twin'
@@ -172,7 +172,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         slice = FakeArgs()
         slice.is_admin = False
@@ -194,7 +194,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         slice = FakeArgs()
         slice.is_admin = False
@@ -218,7 +218,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         
         Privilege = FakeArgs()
         Privilege.object_id = 1
@@ -243,7 +243,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         
         (op, operands), = eval(output).items()
 
@@ -263,7 +263,7 @@
         args.target = target
 
         with self.assertRaises(Exception):
-            output = XOSGenerator.generate(args)
+            output = XOSProcessor.process(args)
         
 
     def test_forall(self):
@@ -279,7 +279,7 @@
         args.inputs = xproto
         args.target = target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         (op, operands), = eval(output).items()
 
         self.assertEqual(op,'forall')
diff --git a/lib/xos-genx/xos-genx-tests/test_pure_proto.py b/lib/xos-genx/xos-genx-tests/test_pure_proto.py
index 511682e..45cb6ed 100644
--- a/lib/xos-genx/xos-genx-tests/test_pure_proto.py
+++ b/lib/xos-genx/xos-genx-tests/test_pure_proto.py
@@ -16,7 +16,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 # Generate from xproto, then generate from equivalent proto
@@ -86,7 +86,7 @@
 		args_xproto = FakeArgs()
 		args_xproto.inputs = xproto
 		args_xproto.target = target
-		xproto_gen = XOSGenerator.generate(args_xproto)
+		xproto_gen = XOSProcessor.process(args_xproto)
 
 		count1 = len(xproto_gen.split('\n'))
 
@@ -94,7 +94,7 @@
 		args_proto.inputs = proto
 		args_proto.target = target
 		args_proto.rev = True
-		proto_gen = XOSGenerator.generate(args_proto)
+		proto_gen = XOSProcessor.process(args_proto)
 		count2 = len(proto_gen.split('\n'))
 
 		self.assertEqual(count1, count2)
@@ -117,13 +117,13 @@
 		args_xproto = FakeArgs()
 		args_xproto.inputs = xproto
 		args_xproto.target = target
-		xproto_gen = XOSGenerator.generate(args_xproto)
+		xproto_gen = XOSProcessor.process(args_xproto)
 
 		args_proto = FakeArgs()
 		args_proto.inputs = proto
 		args_proto.target = target
 		args_proto.rev = True
-		proto_gen = XOSGenerator.generate(args_proto)
+		proto_gen = XOSProcessor.process(args_proto)
 
 		self.assertEqual(proto_gen, xproto_gen)
 
diff --git a/lib/xos-genx/xos-genx-tests/test_rlinks.py b/lib/xos-genx/xos-genx-tests/test_rlinks.py
index b195249..ba025ab 100644
--- a/lib/xos-genx/xos-genx-tests/test_rlinks.py
+++ b/lib/xos-genx/xos-genx-tests/test_rlinks.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 class XProtoRlinkTests(unittest.TestCase):
@@ -56,7 +56,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("'src_port': 'device_ports'", output)
         self.assertIn("'src_port': 'ports'", output)
 
diff --git a/lib/xos-genx/xos-genx-tests/test_swagger.py b/lib/xos-genx/xos-genx-tests/test_swagger.py
index f87f47a..8107870 100644
--- a/lib/xos-genx/xos-genx-tests/test_swagger.py
+++ b/lib/xos-genx/xos-genx-tests/test_swagger.py
@@ -17,13 +17,13 @@
 import unittest
 
 import yaml
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, OUTPUT_DIR
 
 class Args:
     pass
 
-class XOSGeneratorTest(unittest.TestCase):
+class XOSProcessorTest(unittest.TestCase):
 
     def test_swagger_target(self):
         """
@@ -63,7 +63,7 @@
         args.write_to_file = "single"
         args.dest_file = "swagger.yaml"
         args.quiet = False
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("/xosapi/v1/core/instances/:", output)
         self.assertIn("/xosapi/v1/core/instances/{id}:", output)
         self.assertIn("Instance:", output)
diff --git a/lib/xos-genx/xos-genx-tests/test_tosca.py b/lib/xos-genx/xos-genx-tests/test_tosca.py
index f829273..6807028 100644
--- a/lib/xos-genx/xos-genx-tests/test_tosca.py
+++ b/lib/xos-genx/xos-genx-tests/test_tosca.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 
@@ -46,7 +46,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = self.target_tosca_type
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn('string', output)
         self.assertIn('boolean', output)
         self.assertIn('integer', output)
@@ -77,7 +77,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = self.target_tosca_keys
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn('name', output)
 
     def test_xproto_fields_to_tosca_keys_custom(self):
@@ -98,7 +98,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = self.target_tosca_keys
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertNotIn('name', output)
         self.assertIn('key_1', output)
         self.assertIn('key_2', output)
@@ -120,7 +120,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = self.target_tosca_keys
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertNotIn('name', output)
         self.assertIn('provider_service_instance_id', output)
 
@@ -147,7 +147,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = self.target_tosca_keys
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("['name', ['key_4', 'key_3'], ['key_1', 'key_2']]", output)
 
         xproto = \
@@ -166,5 +166,5 @@
             """
 
         args.inputs = xproto
-        output = XOSGenerator.generate(args)
-        self.assertIn("['name', ['key_1_id', 'key_3_id', 'key_2_id']]", output)
\ No newline at end of file
+        output = XOSProcessor.process(args)
+        self.assertIn("['name', ['key_1_id', 'key_3_id', 'key_2_id']]", output)
diff --git a/lib/xos-genx/xos-genx-tests/test_translator.py b/lib/xos-genx/xos-genx-tests/test_translator.py
index 48c1a81..2f8cc8a 100644
--- a/lib/xos-genx/xos-genx-tests/test_translator.py
+++ b/lib/xos-genx/xos-genx-tests/test_translator.py
@@ -16,7 +16,7 @@
 
 import unittest
 import os
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs
 import yaml
 
@@ -37,7 +37,7 @@
         args = FakeArgs()
         args.files = [VROUTER_XPROTO]
         args.target = 'proto.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertEqual(output, PROTO_EXPECTED_OUTPUT)
 
     def test_yaml_generator(self):
@@ -122,7 +122,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         yaml_ir = yaml.load(output)
         self.assertEqual(len(yaml_ir['items']), 4)
@@ -145,7 +145,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         yaml_ir = yaml.load(output)
         self.assertEqual(len(yaml_ir['items']), 1)
         self.assertIn('Bar', output)
@@ -164,7 +164,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         yaml_ir = yaml.load(output)
         self.assertEqual(len(yaml_ir['items']), 1)
         self.assertIn('name', output)
@@ -184,7 +184,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn("options:", output)
         self.assertIn(" {'id': 'container_vm', 'label': 'Container In VM'}", output)
 
@@ -201,7 +201,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertNotIn("options:", output)
 
     def test_default_value_in_modeldef(self):
@@ -221,7 +221,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn('default: "bar"', output)
         self.assertIn('default: "false"', output)
         self.assertIn('default: "true"', output)
@@ -241,7 +241,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertNotIn('default:', output)
 
     def test_one_to_many_in_modeldef(self):
@@ -262,7 +262,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         # Service deps model
         self.assertIn('{model: Service, type: manytoone, on_field: provider_service}', output)
         self.assertIn('{model: Service, type: manytoone, on_field: provider_service}', output)
@@ -290,7 +290,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn('description: "This is the Foo model"', output)
 
     def test_model_verbose_name(self):
@@ -312,7 +312,7 @@
         args = FakeArgs()
         args.inputs = xproto
         args.target = 'modeldefs.xtarget'
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         self.assertIn('verbose_name: "Verbose Foo Name"', output)
 
 if __name__ == '__main__':
diff --git a/lib/xos-genx/xos-genx-tests/test_xos_security.py b/lib/xos-genx/xos-genx-tests/test_xos_security.py
index a07bc7b..2c704ac 100644
--- a/lib/xos-genx/xos-genx-tests/test_xos_security.py
+++ b/lib/xos-genx/xos-genx-tests/test_xos_security.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 import pdb
 import mock
@@ -48,7 +48,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -87,7 +87,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -135,7 +135,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -181,7 +181,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
diff --git a/lib/xos-genx/xos-genx-tests/test_xos_validation.py b/lib/xos-genx/xos-genx-tests/test_xos_validation.py
index 69dafc5..f38f65b 100644
--- a/lib/xos-genx/xos-genx-tests/test_xos_validation.py
+++ b/lib/xos-genx/xos-genx-tests/test_xos_validation.py
@@ -15,7 +15,7 @@
 
 
 import unittest
-from xosgenx.generator import XOSGenerator
+from xosgenx.generator import XOSProcessor
 from helpers import FakeArgs, XProtoTestHelpers
 
 """The function below is for eliminating warnings arising due to the missing policy_output_validator,
@@ -42,7 +42,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         obj = FakeArgs()
         obj.isolation = 'container'
@@ -72,7 +72,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         obj = FakeArgs()
         obj.isolation = 'container'
@@ -103,7 +103,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         exec(output) # This loads the generated function, which should look like this:
 
@@ -133,7 +133,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -164,7 +164,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -184,7 +184,7 @@
 	args = FakeArgs()
         args.inputs = xproto
         args.target = self.target
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
         exec(output) # This loads the generated function, which should look like this:
 
         """
@@ -209,7 +209,7 @@
         args.inputs = xproto
         args.target = self.target
 
-        output = XOSGenerator.generate(args)
+        output = XOSProcessor.process(args)
 
         """
         def policy_output_enforcer(obj, ctx):