[Registry-dev] svn commit r9389 - in trunk/registry/modules/core/src: main/java/org/wso2/registry main/java/org/wso2/registry/jdbc main/java/org/wso2/registry/jdbc/dao test/java/org/wso2/registry/secure

svn at wso2.org svn at wso2.org
Thu Nov 1 15:36:21 PDT 2007


Author: chathura
Date: Thu Nov  1 15:36:19 2007
New Revision: 9389

Modified:
   trunk/registry/modules/core/src/main/java/org/wso2/registry/LogEntry.java
   trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/DatabaseConstants.java
   trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/JDBCRegistry.java
   trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/CommentsDAO.java
   trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/RatingsDAO.java
   trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/VersionedArtifactDAO.java
   trunk/registry/modules/core/src/test/java/org/wso2/registry/secure/SecureRegistryTest.java
Log:

Improved the log generating code.



Modified: trunk/registry/modules/core/src/main/java/org/wso2/registry/LogEntry.java
==============================================================================
--- trunk/registry/modules/core/src/main/java/org/wso2/registry/LogEntry.java	(original)
+++ trunk/registry/modules/core/src/main/java/org/wso2/registry/LogEntry.java	Thu Nov  1 15:36:19 2007
@@ -27,6 +27,7 @@
    public static final int UPDATE = 1;
    public static final int COMMENT = 2;
    public static final int TAG = 3;
+   public static final int RATING = 4;
 
     /**
      * Path of the resource on which the action is performed.

Modified: trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/DatabaseConstants.java
==============================================================================
--- trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/DatabaseConstants.java	(original)
+++ trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/DatabaseConstants.java	Thu Nov  1 15:36:19 2007
@@ -65,6 +65,8 @@
 
     // Field names of Ratings table
     public static final String RATING_ID_FIELD = "R_ID";
+    public static final String RATED_TIME_FIELD = "RATED_TIME";
+    public static final String RATING_FIELD = "RATING";
 
     // user ID field common for most tables
     public static final String USER_ID_FIELD = "USER_ID";

Modified: trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/JDBCRegistry.java
==============================================================================
--- trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/JDBCRegistry.java	(original)
+++ trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/JDBCRegistry.java	Thu Nov  1 15:36:19 2007
@@ -762,11 +762,14 @@
         try {
             List artifactLogs = new VersionedArtifactDAO().getLogs(resourcePath,userName,from,to,
                     conn);
-            logEntryList.addAll(artifactLogs);
+            //logEntryList.addAll(artifactLogs);
 
             List commentLogs = commentsDAO.getLogs(resourcePath, userName, from, to, conn);
             logEntryList.addAll(commentLogs);
 
+            List ratingLogs = ratingsDAO.getLogs(resourcePath, userName, from, to, conn);
+            logEntryList.addAll(ratingLogs);
+
         } catch (Exception e) {
             log.info("error when getting logs from version table");
             throw new RegistryException(e.getMessage());

Modified: trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/CommentsDAO.java
==============================================================================
--- trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/CommentsDAO.java	(original)
+++ trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/CommentsDAO.java	Thu Nov  1 15:36:19 2007
@@ -34,7 +34,7 @@
             throws SQLException {
 
         String sql = "INSERT INTO COMMENTS (AID, USER_ID, COMMENT_TEXT, COMMENTED_TIME) " +
-                        "VALUES (?, ?, ?, ?)";
+                "VALUES (?, ?, ?, ?)";
 
         long now = System.currentTimeMillis();
 
@@ -96,7 +96,7 @@
             return comment;
         }
 
-        return null;        
+        return null;
     }
 
     public long[] getCommentIDs(String resourcePath, Connection conn) throws SQLException {
@@ -129,53 +129,22 @@
         long aid = -1;
         aid = artifactDAO.getArtifactID(resourcePath, conn);
 
-        String sql = "SELECT A.PATH, C.USER_ID, C.COMMENTED_TIME FROM ARTIFATCS A, COMMENTS C";
-
-        boolean criteriaStarted = false;
+        String sql = "SELECT A.PATH, C.USER_ID, C.COMMENTED_TIME, C.COMMENT_TEXT FROM ARTIFACTS A, COMMENTS C WHERE A.AID=C.AID";
 
         if (aid != -1) {
-            if (criteriaStarted) {
-                sql += " AND AID=?";
-            } else {
-                criteriaStarted = true;
-                sql += " WHERE AID=?";
-            }
+            sql = sql + " AND C.AID=?";
         }
 
         if (userName != null) {
-            if (criteriaStarted) {
-                sql += " AND USER_ID=?";
-            } else {
-                criteriaStarted = true;
-                sql += " WHERE USER_ID=?";
-            }
-        }
-
-        if (from != null) {
-            if (criteriaStarted) {
-                sql += " AND COMMENTED_TIME<?";
-            } else {
-                criteriaStarted = true;
-                sql += " WHERE USER_ID<?";
-            }
+            sql = sql + "  AND C.USER_ID=?";
         }
 
         if (from != null) {
-            if (criteriaStarted) {
-                sql += " AND COMMENTED_TIME>?";
-            } else {
-                criteriaStarted = true;
-                sql += " WHERE USER_ID>?";
-            }
+            sql = sql + " AND C.COMMENTED_TIME>?";
         }
 
         if (to != null) {
-            if (criteriaStarted) {
-                sql += " AND COMMENTED_TIME<?";
-            } else {
-                criteriaStarted = true;
-                sql += " WHERE USER_ID<?";
-            }
+            sql = sql + " AND C.COMMENTED_TIME<?";
         }
 
         PreparedStatement s = conn.prepareStatement(sql);

Modified: trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/RatingsDAO.java
==============================================================================
--- trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/RatingsDAO.java	(original)
+++ trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/RatingsDAO.java	Thu Nov  1 15:36:19 2007
@@ -20,6 +20,7 @@
 package org.wso2.registry.jdbc.dao;
 
 import org.wso2.registry.jdbc.DatabaseConstants;
+import org.wso2.registry.LogEntry;
 
 import java.sql.*;
 import java.util.List;
@@ -143,4 +144,73 @@
 
         return userNames;
     }
+
+    public List getLogs(String resourcePath, String userName,
+                        java.util.Date from, java.util.Date to, Connection conn)
+            throws SQLException {
+
+        ArtifactDAO artifactDAO = new ArtifactDAO();
+
+        long aid = -1;
+        aid = artifactDAO.getArtifactID(resourcePath, conn);
+
+        String sql = "SELECT A.PATH, R.USER_ID, R.RATED_TIME, R.RATING FROM ARTIFACTS A, RATINGS R WHERE A.AID=R.AID";
+
+        if (aid != -1) {
+            sql = sql + " AND R.AID=?";
+        }
+
+        if (userName != null) {
+            sql = sql + "  AND R.USER_ID=?";
+        }
+
+        if (from != null) {
+            sql = sql + " AND R.RATED_TIME>?";
+        }
+
+        if (to != null) {
+            sql = sql + " AND R.RATED_TIME<?";
+        }
+
+        PreparedStatement s = conn.prepareStatement(sql);
+
+        int paramNumber = 1;
+
+        if (aid != -1) {
+            s.setLong(paramNumber, aid);
+            paramNumber++;
+        }
+
+        if (userName != null) {
+            s.setString(paramNumber, userName);
+            paramNumber++;
+        }
+
+        if (from != null) {
+            s.setTimestamp(paramNumber, new Timestamp(from.getTime()));
+            paramNumber++;
+        }
+
+        if (to != null) {
+            s.setTimestamp(paramNumber, new Timestamp(to.getTime()));
+            paramNumber++;
+        }
+
+        ResultSet results = s.executeQuery();
+
+        List resultList = new ArrayList();
+        while (results.next()) {
+            LogEntry logEntry = new LogEntry();
+            logEntry.setResourcePath(results.getString(DatabaseConstants.PATH_FIELD));
+            logEntry.setUserName(results.getString(DatabaseConstants.USER_ID_FIELD));
+            logEntry.setDate(new Date(results.getTimestamp(DatabaseConstants.RATED_TIME_FIELD).getTime()));
+            logEntry.setAction(LogEntry.RATING);
+            int rating = results.getInt(DatabaseConstants.RATING_FIELD);
+            logEntry.setActionData(new Integer(rating).toString());
+
+            resultList.add(logEntry);
+        }
+
+        return resultList;
+    }
 }

Modified: trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/VersionedArtifactDAO.java
==============================================================================
--- trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/VersionedArtifactDAO.java	(original)
+++ trunk/registry/modules/core/src/main/java/org/wso2/registry/jdbc/dao/VersionedArtifactDAO.java	Thu Nov  1 15:36:19 2007
@@ -960,6 +960,8 @@
                 whereStatment = " WHERE UPDATED_TIME < ?";
             }
         }
+        SQL = SQL + whereStatment;
+        
         PreparedStatement ps = conn.prepareStatement(SQL);
         int count = 1;
         if (aid != 0) {
@@ -983,9 +985,9 @@
         while (result.next()) {
             LogEntry logEntry = new LogEntry();
             logEntry.setAction(LogEntry.UPDATE);
-            logEntry.setDate(result.getTime(0));
-            logEntry.setUserName(result.getString(1));
-            aid = result.getLong(2);
+            logEntry.setDate(result.getTime("UPDATED_TIME"));
+            logEntry.setUserName(result.getString("AUTHOR"));
+            aid = result.getLong("AID");
             logEntry.setResourcePath(getArtifactPath(aid, conn));
             logevents.add(logEntry);
         }

Modified: trunk/registry/modules/core/src/test/java/org/wso2/registry/secure/SecureRegistryTest.java
==============================================================================
--- trunk/registry/modules/core/src/test/java/org/wso2/registry/secure/SecureRegistryTest.java	(original)
+++ trunk/registry/modules/core/src/test/java/org/wso2/registry/secure/SecureRegistryTest.java	Thu Nov  1 15:36:19 2007
@@ -90,44 +90,44 @@
                 new SecureRegistry(RegistryConstants.ADMIN_USER, "admin", registry, realm);
         RegistryUserManager adminUserManager =
                 new RegistryUserManager(realm, RegistryConstants.ADMIN_USER);
-        
+
         String r1Content = "R1";
         Artifact r1 = new Artifact();
         r1.setContent(r1Content.getBytes());
-        
+
         try {
             adminRegistry.put("/r1", r1);
         } catch (RegistryException e) {
             fail("Valid put scenario failed.");
         }
-        
+
         adminUserManager.addRole("registryTeam");
         adminUserManager.authorizeRole("registryTeam", "/r1", ActionConstants.GET);
-        
+
         adminUserManager.addUser("chathurax", "cce");
-        adminUserManager.addUserToRole("chathura", "registryTeam");
-        
+        adminUserManager.addUserToRole("chathurax", "registryTeam");
+
         adminUserManager.addUser("upulx", "u");
-        
+
         SecureRegistry chathuraRegistry =
-                new SecureRegistry("chathura", "cce", registry, realm);
-        
+                new SecureRegistry("chathurax", "cce", registry, realm);
+
         try {
             chathuraRegistry.get("/r1");
         } catch (AuthorizationFailedException e) {
             fail("Could not get authorized resource.");
         }
-        
+
         SecureRegistry upulRegistry =
-                new SecureRegistry("upul", "u", registry, realm);
-        
+                new SecureRegistry("upulx", "u", registry, realm);
+
         boolean failed = false;
         try {
             upulRegistry.get("/r1");
         } catch (AuthorizationFailedException e) {
             failed = true;
         }
-        
+
         assertTrue("Allowed to get unauthorized resource.", failed);
     }
 



More information about the Registry-dev mailing list