Fix for Bug 144, Bug 147, 148 - improved codec
[controller.git] / opendaylight / md-sal / sal-binding-broker / src / main / java / org / opendaylight / controller / sal / binding / impl / connect / dom / ConnectorActivator.java
index c96835bd9422c30688235f3d8ae400458a158792..f69e664ee8c764d3eb8be718ed88932ff1474f50 100644 (file)
@@ -3,7 +3,11 @@ package org.opendaylight.controller.sal.binding.impl.connect.dom;
 import java.util.Collection;
 import java.util.Collections;
 
+import javassist.ClassPool;
+
 import org.opendaylight.controller.sal.binding.api.data.DataProviderService;
+import org.opendaylight.controller.sal.binding.dom.serializer.impl.RuntimeGeneratedMappingServiceImpl;
+import org.opendaylight.controller.sal.binding.dom.serializer.impl.TransformerGenerator;
 import org.opendaylight.controller.sal.core.api.Broker;
 import org.opendaylight.controller.sal.core.api.Provider;
 import org.opendaylight.controller.sal.core.api.Broker.ProviderSession;
@@ -38,10 +42,13 @@ public class ConnectorActivator implements Provider, ServiceTrackerCustomizer<Br
     @Override
     public void onSessionInitiated(ProviderSession session) {
 
-        MappingServiceImpl mappingImpl = new MappingServiceImpl();
-        mappingImpl.setSchemaService(session.getService(SchemaService.class));
+        RuntimeGeneratedMappingServiceImpl mappingImpl = new RuntimeGeneratedMappingServiceImpl();
+        mappingImpl.setPool(new ClassPool());
+        SchemaService schemaService = (session.getService(SchemaService.class));
+        ClassPool pool = new ClassPool();
+        mappingImpl.setBinding(new TransformerGenerator(pool));
         mappingImpl.start();
-
+        schemaService.registerSchemaServiceListener(mappingImpl);
         mappingService = mappingImpl;
         dataConnector = new BindingIndependentDataServiceConnector();
         dataConnector.setBaDataService(baDataService);