\r
import java.io.FileInputStream;\r
import java.io.IOException;\r
+import java.util.List;\r
import java.util.Properties;\r
import org.onap.ccsdk.sli.core.sli.ConfigurationException;\r
+import org.onap.ccsdk.sli.core.sli.SvcLogicJavaPlugin;\r
import org.onap.ccsdk.sli.core.sli.SvcLogicLoader;\r
+import org.onap.ccsdk.sli.core.sli.SvcLogicRecorder;\r
import org.onap.ccsdk.sli.core.sli.SvcLogicStore;\r
import org.onap.ccsdk.sli.core.sli.SvcLogicStoreFactory;\r
import org.onap.ccsdk.sli.core.sli.provider.base.HashMapResolver;\r
import org.onap.ccsdk.sli.core.sli.provider.base.SvcLogicResolver;\r
import org.onap.ccsdk.sli.core.sli.provider.base.SvcLogicServiceBase;\r
import org.onap.ccsdk.sli.core.sli.provider.base.SvcLogicServiceImplBase;\r
+import org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder;\r
+import org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils;\r
+import org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils;\r
+import org.onap.ccsdk.sli.plugins.prop.PropertiesNode;\r
+import org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode;\r
import org.slf4j.Logger;\r
import org.slf4j.LoggerFactory;\r
+import org.springframework.beans.factory.annotation.Autowired;\r
import org.springframework.context.annotation.Bean;\r
import org.springframework.context.annotation.Configuration;\r
\r
public class SvcLogicFactory {\r
private static final Logger log = LoggerFactory.getLogger(SvcLogicFactory.class);\r
\r
+ @Autowired\r
+ List<SvcLogicRecorder> recorders;\r
+\r
+ @Autowired\r
+ List<SvcLogicJavaPlugin> plugins;\r
+\r
@Bean\r
public SvcLogicStore getStore() throws Exception {\r
SvcLogicPropertiesProvider propProvider = new SvcLogicPropertiesProvider() {\r
\r
@Bean\r
public SvcLogicServiceBase createService() throws Exception {\r
- SvcLogicResolver resolver = new HashMapResolver();\r
+ HashMapResolver resolver = new HashMapResolver();\r
+ for (SvcLogicRecorder recorder : recorders) {\r
+ resolver.addSvcLogicRecorder(recorder.getClass().getName(), recorder);\r
+\r
+ }\r
+ for (SvcLogicJavaPlugin plugin : plugins) {\r
+ resolver.addSvcLogicSvcLogicJavaPlugin(plugin.getClass().getName(), plugin);\r
+\r
+ }\r
return new SvcLogicServiceImplBase(getStore(), resolver);\r
}\r
\r
+ @Bean\r
+ public Slf4jRecorder slf4jRecorderNode() {\r
+ return new Slf4jRecorder();\r
+ }\r
+\r
+ @Bean\r
+ public SliPluginUtils sliPluginUtil() {\r
+ return new SliPluginUtils();\r
+ }\r
+\r
+ @Bean\r
+ public SliStringUtils sliStringUtils() {\r
+ return new SliStringUtils();\r
+ }\r
+ \r
+ @Bean\r
+ public RestapiCallNode restapiCallNode() {\r
+ return new RestapiCallNode();\r
+ }\r
+ \r
+ @Bean\r
+ public PropertiesNode propertiesNode() {\r
+ return new PropertiesNode();\r
+ }\r
+\r
}\r