Adding entities and repositories for
[so.git] / so-etsi-nfvo / so-etsi-nfvo-ns-lcm / so-etsi-nfvo-ns-lcm-database-service / src / main / java / org / onap / so / etsi / nfvo / ns / lcm / database / service / DatabaseServiceProvider.java
index 420d916..254a369 100644 (file)
  */
 package org.onap.so.etsi.nfvo.ns.lcm.database.service;
 
+import java.util.List;
 import java.util.Optional;
 import org.onap.so.etsi.nfvo.ns.lcm.database.beans.NfvoJob;
+import org.onap.so.etsi.nfvo.ns.lcm.database.beans.NfvoNfInst;
 import org.onap.so.etsi.nfvo.ns.lcm.database.beans.NfvoNsInst;
+import org.onap.so.etsi.nfvo.ns.lcm.database.beans.NsLcmOpOcc;
+import org.onap.so.etsi.nfvo.ns.lcm.database.repository.NSLcmOpOccRepository;
 import org.onap.so.etsi.nfvo.ns.lcm.database.repository.NfvoJobRepository;
+import org.onap.so.etsi.nfvo.ns.lcm.database.repository.NfvoNfInstRepository;
 import org.onap.so.etsi.nfvo.ns.lcm.database.repository.NfvoNsInstRepository;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -42,11 +47,18 @@ public class DatabaseServiceProvider {
 
     private final NfvoNsInstRepository nfvoNsInstRepository;
 
+    private final NfvoNfInstRepository nfvoNfInstRepository;
+
+    private final NSLcmOpOccRepository nsLcmOpOccRepository;
+
     @Autowired
     public DatabaseServiceProvider(final NfvoJobRepository nfvoJobRepository,
-            final NfvoNsInstRepository nfvoNsInstRepository) {
+            final NfvoNsInstRepository nfvoNsInstRepository, final NfvoNfInstRepository nfvoNfInstRepository,
+            final NSLcmOpOccRepository nsLcmOpOccRepository) {
         this.nfvoJobRepository = nfvoJobRepository;
         this.nfvoNsInstRepository = nfvoNsInstRepository;
+        this.nfvoNfInstRepository = nfvoNfInstRepository;
+        this.nsLcmOpOccRepository = nsLcmOpOccRepository;
     }
 
     public boolean addJob(final NfvoJob job) {
@@ -84,9 +96,36 @@ public class DatabaseServiceProvider {
         return nfvoNsInstRepository.findByName(name);
     }
 
-    public Optional<NfvoNsInst> getNfvoNsInstByNsInstId(final String nsInstId) {
-        logger.info("Querying database for NfvoNsInst using nsInstId: {}", nsInstId);
-        return nfvoNsInstRepository.findByNsInstId(nsInstId);
+    public boolean saveNfvoNfInst(final NfvoNfInst nfvoNfInst) {
+        logger.info("Saving NfvoNfInst: {} to database", nfvoNfInst);
+        return nfvoNfInstRepository.save(nfvoNfInst) != null;
+    }
+
+    public Optional<NfvoNfInst> getNfvoNfInstByNfInstId(final String nfInstId) {
+        logger.info("Querying database for NfvoNfInst using nfInstId: {}", nfInstId);
+        return nfvoNfInstRepository.findByNfInstId(nfInstId);
+    }
+
+    public List<NfvoNfInst> getNfvoNfInstByNsInstId(final String nsInstId) {
+        logger.info("Querying database for NfvoNfInst using nsInstId: {}", nsInstId);
+        return nfvoNfInstRepository.findByNsInstNsInstId(nsInstId);
     }
 
+    public List<NfvoNfInst> getNfvoNfInstByNsInstIdAndNfName(final String nsInstId, final String name) {
+        logger.info("Querying database for NfvoNfInst using nsInstId: {} and name : {} ", nsInstId, name);
+        return nfvoNfInstRepository.findByNsInstNsInstIdAndName(nsInstId, name);
+    }
+
+    public boolean addNSLcmOpOcc(final NsLcmOpOcc nsLcmOpOcc) {
+        logger.info("Adding NSLcmOpOcc: {} to database", nsLcmOpOcc);
+        return nsLcmOpOccRepository.save(nsLcmOpOcc) != null;
+    }
+
+    public Optional<NsLcmOpOcc> getNsLcmOpOcc(final String id) {
+        logger.info("Querying database for NsLcmOpOcc using id: {}", id);
+        return nsLcmOpOccRepository.findById(id);
+    }
+
+
+
 }