diff options
author | Brinda Santh <brindasanth@in.ibm.com> | 2018-09-05 01:22:04 -0400 |
---|---|---|
committer | Brinda Santh <brindasanth@in.ibm.com> | 2018-09-05 01:22:04 -0400 |
commit | 6f4d12b7cd5c64a5797a560325a54bb9ac1884ab (patch) | |
tree | 3597a323460ecb94fe389e60cf6c4e0342d1f12f /ms/controllerblueprints/modules/service/src/main | |
parent | 594b5e1c919089c110e6aa9b9d1c00b96a9e96f9 (diff) |
Controller Blueprints Microservice
Add Resource Dictionary reactive repository service for dictionary validation and automap functions.
Change-Id: I7cc6d7d976cfe9370f9a74cd8f2e4256de8e8995
Issue-ID: CCSDK-484
Signed-off-by: Brinda Santh <brindasanth@in.ibm.com>
Diffstat (limited to 'ms/controllerblueprints/modules/service/src/main')
2 files changed, 55 insertions, 1 deletions
diff --git a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryRepository.java b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryRepository.java index 279dcd1c..16031b6e 100644 --- a/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryRepository.java +++ b/ms/controllerblueprints/modules/service/src/main/java/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryRepository.java @@ -1,5 +1,6 @@ /*
* Copyright © 2017-2018 AT&T Intellectual Property.
+ * Modifications Copyright © 2018 IBM.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -62,7 +63,7 @@ public interface ResourceDictionaryRepository extends JpaRepository<ResourceDict *
* @param name
*/
- void deleteByName(String name);
+ ResourceDictionary deleteByName(String name);
}
diff --git a/ms/controllerblueprints/modules/service/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryReactRepository.kt b/ms/controllerblueprints/modules/service/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryReactRepository.kt new file mode 100644 index 00000000..92172a2e --- /dev/null +++ b/ms/controllerblueprints/modules/service/src/main/kotlin/org/onap/ccsdk/apps/controllerblueprints/service/repository/ResourceDictionaryReactRepository.kt @@ -0,0 +1,53 @@ +/* + * Copyright © 2018 IBM. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.onap.ccsdk.apps.controllerblueprints.service.repository + +import org.onap.ccsdk.apps.controllerblueprints.core.BluePrintException +import org.onap.ccsdk.apps.controllerblueprints.service.domain.ResourceDictionary +import org.springframework.stereotype.Service +import reactor.core.publisher.Flux +import reactor.core.publisher.Mono +import reactor.core.scheduler.Schedulers +/** + * ResourceDictionaryReactRepository. + * + * @author Brinda Santh + */ +@Service +open class ResourceDictionaryReactRepository(private val resourceDictionaryRepository: ResourceDictionaryRepository) { + + fun findByName(name: String): Mono<ResourceDictionary> { + return Mono.justOrEmpty(resourceDictionaryRepository.findByName(name)) + } + + fun findByNameIn(names: List<String>): Flux<ResourceDictionary> { + return Flux.fromIterable(resourceDictionaryRepository.findByNameIn(names)) + .subscribeOn(Schedulers.elastic()) + } + + fun findByTagsContainingIgnoreCase(tags: String): Flux<ResourceDictionary> { + return Flux.fromIterable(resourceDictionaryRepository.findByTagsContainingIgnoreCase(tags)) + .subscribeOn(Schedulers.elastic()) + } + + fun deleteByName(name: String): Mono<ResourceDictionary> { + return Mono.fromCallable { + resourceDictionaryRepository.deleteByName(name) + } + } + +}
\ No newline at end of file |