VOL-172: Support configuration of  traffic descriptor profile for upstream BW allocation to ONU

 * As an operator, I should be able to configure traffic descriptor profiles for upstream BW configuration.
 * As an operator, I should be able to retrieve the configured traffic descriptor profiles.

Additional Notes:
 * xPON Handler and xPON Agent should be able to handle the traffic descriptor configuration.
 * This story does not have impact on adapters until the traffic descriptor is referenced by a TCONT
 * The traffic descriptor profiles should be saved to the database(in memory until config/restore feature is ready).
 * The impact to HA-proxy for load-balancing & distributing of workload is still TBD. As of now, it can be assumed that profiles are available to all VOLTHA instances.

VOL-173: Support configuration of TCONTs as per WT-385 and auto-allocation of alloc-ids

 * As an operator, I should be able to provision a TCONT for the ONU with an existing traffic descriptor profile
 * As an operator, I should be able to retrieve the provisioned TCONT
 * As an operator, I should be able to change the traffic descriptor profile for a TCONT

Additional Notes:

 * alloc-ids should be allocated for the TCONT
 * generic IAdapter interface to be provided that will be used by OLT and ONU adapters for TCONT/alloc-id/BW configuration
 * In the best interest of schedules/timing, in the first step(e.g. POC-3 & trial), assume the queueing model to be supported (to be detailed)  (i.e. no configuration of queueing model)
 * The concerned ONU should receive upstream grants upon provisioning of  TCONT for the ONU

VOL-174: Support configuration of GEMs as per WT-385 and auto-allocation of gemport-ids

 * As an operator, I should be able to provision a GEMPORT object for the ONU and assign to a UNI
 * As an operator, I should be able to retrieve the provisioned GEMPORT

Additional Notes:

 * gemport-ids should be auto-allocated for the GEMPORT object
 * generic IAdapter interface to be provided that will be used by OLT and ONU adapters for GEM port configuration
 * In the best interest of schedules/timing, in the first step(e.g. POC-3 & trial), assume the queueing model to be supported (to be detailed) (i.e. no configuration of queueing model)
 * The concerned OLT and ONU should be configured with the allocated gemport-ids

Change-Id: I451cd7c0eda57c7b9fa1d65d02c749ff2bf0db4b
diff --git a/ponsim/ponsim.py b/ponsim/ponsim.py
index 619beb1..219f1c5 100644
--- a/ponsim/ponsim.py
+++ b/ponsim/ponsim.py
@@ -477,13 +477,91 @@
         self.log = structlog.get_logger()
 
     def CreateInterface(self, request):
-        self.log.info("create-interface-request", interface_type = request.WhichOneof("interface_type"), data = request)
+        self.log.info("create-interface-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
         return
 
     def UpdateInterface(self, request):
-        self.log.info("update-interface-request", interface_type = request.WhichOneof("interface_type"), data = request)
+        self.log.info("update-interface-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
         return
 
     def RemoveInterface(self, request):
-        self.log.info("remove-interface-request", interface_type = request.WhichOneof("interface_type"), data = request)
+        self.log.info("remove-interface-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def CreateTcont(self, request, request2):
+        self.log.info("create-tcont-request",
+                      tcont_config_data=request,
+                      traffic_descriptor_profile_config_data=request2)
+        return
+
+    def UpdateTcont(self, request, request2):
+        self.log.info("update-tcont-request",
+                      tcont_config_data=request,
+                      traffic_descriptor_profile_config_data=request2)
+        return
+
+    def RemoveTcont(self, request, request2):
+        self.log.info("remove-tcont-request",
+                      tcont_config_data=request,
+                      traffic_descriptor_profile_config_data=request2)
+        return
+
+    def CreateGemport(self, request):
+        self.log.info("create-gemport-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def UpdateGemport(self, request):
+        self.log.info("update-gemport-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def RemoveGemport(self, request):
+        self.log.info("remove-gemport-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def CreateMulticastGemport(self, request):
+        self.log.info("create-multicast-gemport-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def UpdateMulticastGemport(self, request):
+        self.log.info("update-multicast-gemport-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def RemoveMulticastGemport(self, request):
+        self.log.info("remove-multicast-gemport-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def CreateMulticastDistributionSet(self, request):
+        self.log.info("create-multicast-distribution-set-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def UpdateMulticastDistributionSet(self, request):
+        self.log.info("update-multicast-distribution-set-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
+        return
+
+    def RemoveMulticastDistributionSet(self, request):
+        self.log.info("remove-multicast-distribution-set-request",
+                      interface_type=request.WhichOneof("interface_type"),
+                      data=request)
         return