2 * Copyright © 2017-2018 AT&T Intellectual Property.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 package org.onap.ccsdk.apps.controllerblueprints.service.load
19 import com.att.eelf.configuration.EELFManager
20 import org.springframework.boot.context.event.ApplicationReadyEvent
21 import org.springframework.context.event.EventListener
22 import org.springframework.stereotype.Service
25 open class BluePrintDatabaseLoadService(private val bluePrintLoadConfiguration: BluePrintLoadConfiguration,
26 private val modelTypeLoadService: ModelTypeLoadService,
27 private val resourceDictionaryLoadService: ResourceDictionaryLoadService,
28 private val bluePrintCatalogLoadService: BluePrintCatalogLoadService) {
30 private val log = EELFManager.getInstance().getLogger(BluePrintDatabaseLoadService::class.java)
33 @EventListener(ApplicationReadyEvent::class)
35 if (bluePrintLoadConfiguration.loadInitialData) {
37 initResourceDictionary()
38 initBluePrintCatalog()
40 log.info("Initial data load is disabled")
44 open fun initModelTypes() {
45 log.info("model types load configuration(${bluePrintLoadConfiguration.loadModelType}) " +
46 "under paths(${bluePrintLoadConfiguration.loadModeTypePaths})")
48 if (bluePrintLoadConfiguration.loadModelType) {
49 val paths = bluePrintLoadConfiguration.loadModeTypePaths?.split(",")
51 modelTypeLoadService.loadPathsModelType(paths)
56 open fun initResourceDictionary() {
57 log.info("resource dictionary load configuration(${bluePrintLoadConfiguration.loadResourceDictionary}) " +
58 "under paths(${bluePrintLoadConfiguration.loadResourceDictionaryPaths})")
60 if (bluePrintLoadConfiguration.loadResourceDictionary) {
61 val paths = bluePrintLoadConfiguration.loadResourceDictionaryPaths?.split(",")
63 resourceDictionaryLoadService.loadPathsResourceDictionary(paths)
68 open fun initBluePrintCatalog() {
69 log.info("blueprint load configuration(${bluePrintLoadConfiguration.loadBluePrint}) " +
70 "under paths(${bluePrintLoadConfiguration.loadBluePrintPaths})")
72 if (bluePrintLoadConfiguration.loadBluePrint) {
73 val paths = bluePrintLoadConfiguration.loadBluePrintPaths?.split(",")
75 bluePrintCatalogLoadService.loadPathsBluePrintModelCatalog(paths)