Csar subset query 57/37957/1
authorMurali-P <murali.p@huawei.com>
Fri, 23 Mar 2018 05:11:55 +0000 (10:41 +0530)
committerMurali-P <murali.p@huawei.com>
Fri, 23 Mar 2018 05:11:55 +0000 (10:41 +0530)
Merging issue fixed by Moshe

Issue-ID: VNFSDK-126

Change-Id: I441cd14e24867bf3d2a65bd3d1c1f35dbf9a5ffb
Signed-off-by: Murali-P <murali.p@huawei.com>
vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/db/impl/MarketplaceDaoImpl.java
vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/db/inf/IMarketplaceDao.java
vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/db/mapper/IMarketplaceMapper.java
vnfmarket-be/vnf-sdk-marketplace/src/main/java/org/onap/vnfsdk/marketplace/db/wrapper/BaseHandler.java
vnfmarket-be/vnf-sdk-marketplace/src/main/resources/mybatis/sql/MarketplaceMapper.xml
vnfmarket-be/vnf-sdk-marketplace/src/test/java/org/onap/vnfsdk/marketplace/resource/PackageResourceTest.java

index 1e15299..79b08af 100644 (file)
@@ -17,6 +17,7 @@
 package org.onap.vnfsdk.marketplace.db.impl;
 
 import java.util.List;
+import java.util.Map;
 
 import javax.persistence.PersistenceException;
 
@@ -77,6 +78,22 @@ public class MarketplaceDaoImpl implements IMarketplaceDao {
         return csars;
     }
 
+    @Override
+    public List<PackageData> getPackageDataSubset(Map<String, String> paramsMap) {
+        SqlSession session = sqlSessionFactory.openSession();
+        List<PackageData> csars = null;
+        try {
+            IMarketplaceMapper mapper = session.getMapper(IMarketplaceMapper.class);
+            csars = mapper.getPackageDataSubset(paramsMap);
+            session.commit();
+        } catch(PersistenceException e) {
+            LOGGER.error("Exception caught {}", e);
+        } finally {
+            session.close();
+        }
+        return csars;
+    }
+
     /**
      * saving the package data object to the DB using the mybatis.
      * <br/>
index 1f1d69f..cf6d7db 100644 (file)
@@ -17,6 +17,7 @@
 package org.onap.vnfsdk.marketplace.db.inf;
 
 import java.util.List;
+import java.util.Map;
 
 import org.onap.vnfsdk.marketplace.db.entity.PackageData;
 
@@ -49,6 +50,8 @@ public interface IMarketplaceDao {
 
     List<PackageData> getPackageData(String csarID);
 
+    List<PackageData> getPackageDataSubset(Map<String, String> paramsMap);
+
        void deletePackageData(String csarId);  
           
        void updatePackageData(PackageData oPackageData);
index b94d442..df7d5c0 100644 (file)
@@ -17,6 +17,7 @@
 package org.onap.vnfsdk.marketplace.db.mapper;
 
 import java.util.List;
+import java.util.Map;
 
 import org.onap.vnfsdk.marketplace.db.entity.PackageData;
 
@@ -49,6 +50,8 @@ public interface IMarketplaceMapper {
     
     List<PackageData> getPackageData(String csarId);
 
+    List<PackageData> getPackageDataSubset(Map<String, String> paramsMap);
+
        void deletePackageData(String csarId);
        
        void updatePackageData(PackageData oPackageData);
index 0c5c542..4e3e117 100644 (file)
@@ -86,7 +86,7 @@ public abstract class BaseHandler<T extends BaseData> {
       throws MarketplaceResourceException {
     logger.info("BaseHandler:start query data .info:" + MarketplaceDbUtil.objectToString(queryParam));
     IMarketplaceDao dao = new MarketplaceDaoImpl();
-    List<PackageData> datas = dao.getAllPackageData();
+    List<PackageData> datas = dao.getPackageDataSubset(queryParam);
     logger.info("BaseHandler: query data end .info:" + MarketplaceDbUtil.objectToString(datas));
     return datas;
   }
index aeaa4a4..7d76b99 100644 (file)
        WHERE 
        CSARID=#{csarId}
     </select>
-       
+
+    <select id="getPackageDataSubset" resultType="org.onap.vnfsdk.marketplace.db.entity.PackageData" parameterType="java.util.Map">
+        SELECT * FROM CSAR_PACKAGE_TABLE
+        <where>
+            <if test="name != null">
+                NAME like #{name}
+            </if>
+            <if test="version != null">
+                AND VERSION like #{version}
+            </if>
+            <if test="deletionPending != null">
+                AND DELETIONPENDING like #{deletionPending}
+            </if>
+            <if test="type != null">
+                AND TYPE like #{type}
+            </if>
+            <if test="provider != null">
+                AND PROVIDER like #{provider}
+            </if>
+        </where>
+    </select>
+
        <insert id="savePackageData" parameterType="org.onap.vnfsdk.marketplace.db.entity.PackageData">
         INSERT INTO
         CSAR_PACKAGE_TABLE
index d1562f8..de3ba45 100644 (file)
@@ -30,6 +30,7 @@ import java.io.InputStream;
 import java.text.DecimalFormat;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipOutputStream;
 
@@ -153,7 +154,7 @@ public class PackageResourceTest {
         new MockUp<MarketplaceDaoImpl>() {
 
             @Mock
-            public List<PackageData> getAllPackageData() {
+            public List<PackageData> getPackageDataSubset(Map<String, String> queryParam) {
                 return new ArrayList<PackageData>();
             }
         };