some db code rewriting
[mir.git] / source / mircoders / servlet / ServletModuleUploadedMedia.java
index a1729e2..0f42987 100755 (executable)
 
 package mircoders.servlet;
 
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-import javax.servlet.ServletContext;
-import javax.servlet.ServletOutputStream;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
 import mir.config.MirPropertiesConfiguration;
 import mir.entity.Entity;
 import mir.entity.adapter.EntityAdapter;
-import mir.entity.adapter.EntityAdapterModel;
-import mir.entity.adapter.EntityIteratorAdapter;
+import mir.entity.adapter.EntityAdapterEngine;
 import mir.log.LoggerWrapper;
 import mir.media.MediaHandler;
 import mir.servlet.ServletModule;
@@ -55,25 +41,24 @@ import mir.servlet.ServletModuleExc;
 import mir.servlet.ServletModuleFailure;
 import mir.servlet.ServletModuleUserExc;
 import mir.session.UploadedFile;
-import mir.util.CachingRewindableIterator;
-import mir.util.ExceptionFunctions;
-import mir.util.HTTPParsedRequest;
-import mir.util.HTTPRequestParser;
-import mir.util.JDBCStringRoutines;
-import mir.util.SQLQueryBuilder;
-import mir.util.URLBuilder;
+import mir.util.*;
 import mircoders.entity.EntityComment;
 import mircoders.entity.EntityContent;
 import mircoders.entity.EntityUploadedMedia;
-import mircoders.global.MirGlobal;
 import mircoders.media.MediaHelper;
 import mircoders.media.MediaUploadProcessor;
 import mircoders.media.UnsupportedMediaTypeExc;
 import mircoders.storage.DatabaseComment;
 import mircoders.storage.DatabaseContent;
-
 import org.apache.commons.fileupload.FileItem;
 
+import javax.servlet.ServletContext;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.InputStream;
+import java.util.*;
+
 /**
  *
  * <p>Title: </p>
@@ -100,6 +85,7 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
 
   public void insert(HttpServletRequest aRequest, HttpServletResponse aResponse)
           throws ServletModuleExc, ServletModuleUserExc {
+
     try {
       HTTPParsedRequest parsedRequest = new HTTPParsedRequest(aRequest,
           configuration.getString("Mir.DefaultEncoding"),
@@ -136,7 +122,7 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
       if (articleid!=null) {
         EntityContent entContent = (EntityContent) DatabaseContent.getInstance().selectById(articleid);
 
-        i=mediaList.iterator();
+        i = mediaList.iterator();
 
         while (i.hasNext()) {
           String id = ((EntityUploadedMedia) i.next()).getId();
@@ -171,7 +157,7 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
 
       logAdminUsage(aRequest, "", mediaList.size() + " objects added");
 
-      returnUploadedMediaList(aRequest, aResponse, mediaList, 1, mediaList.size(), mediaList.size(), "", null, null);
+      returnUploadedMediaList(aRequest, aResponse, mediaList, 1, mediaList.size(), "", null, null);
     }
     catch (Throwable t) {
       Throwable cause = ExceptionFunctions.traceCauseException(t);
@@ -218,7 +204,7 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
   }
 
   public void returnUploadedMediaList(HttpServletRequest aRequest, HttpServletResponse aResponse,
-                                      Object aList, int aFrom, int aTo, int aCount,
+                                      Object aList, int aFrom, int aTo,
                                       String aThisUrl, String aNextUrl, String aPreviousUrl) throws ServletModuleExc {
 
     try {
@@ -239,7 +225,6 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
 
 
       responseData.put("from", Integer.toString(aFrom));
-      responseData.put("count", Integer.toString(aCount));
       responseData.put("to", Integer.toString(aTo));
 
       responseData.put("medialist", aList);
@@ -257,23 +242,13 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
 
     HTTPRequestParser requestParser = new HTTPRequestParser(aRequest);
     URLBuilder urlBuilder = new URLBuilder();
-    EntityAdapterModel model;
     String nextPageUrl = null;
     String previousPageUrl = null;
     String thisUrl = null;
 
-    int count;
-
     try {
-      model = MirGlobal.localizer().dataModel().adapterModel();
-
-      Object mediaList =
-          new CachingRewindableIterator(
-          new EntityIteratorAdapter(aWhereClause, anOrderByClause, nrEntitiesPerListPage,
-                   model, definition, nrEntitiesPerListPage, anOffset)
-          );
-
-      count = mainModule.getSize(aWhereClause);
+      List list =
+         EntityAdapterEngine.retrieveAdapterList(model, definition, aWhereClause, anOrderByClause, nrEntitiesPerListPage, anOffset);
 
       urlBuilder.setValue("module", moduleName);
       urlBuilder.setValue("do", "list");
@@ -293,7 +268,7 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
       urlBuilder.setValue("offset", anOffset);
       thisUrl = urlBuilder.getQuery();
 
-      if (count >= anOffset + nrEntitiesPerListPage) {
+      if (list.size() >= nrEntitiesPerListPage) {
         urlBuilder.setValue("offset", anOffset + nrEntitiesPerListPage);
         nextPageUrl = urlBuilder.getQuery();
       }
@@ -303,8 +278,8 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
         previousPageUrl = urlBuilder.getQuery();
       }
 
-      returnUploadedMediaList(aRequest, aResponse, mediaList,
-              anOffset+1, anOffset+nrEntitiesPerListPage, count, thisUrl,
+      returnUploadedMediaList(aRequest, aResponse, list,
+              anOffset+1, anOffset+nrEntitiesPerListPage, thisUrl,
               nextPageUrl, previousPageUrl);
     }
     catch (Throwable e) {
@@ -481,12 +456,6 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
     getThumbnail(aRequest, aResponse);
   }
 
-  /**
-   *
-   * @param aRequest
-   * @param aResponse
-   * @throws ServletModuleExc
-   */
   public void getThumbnail(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc {
     String id = aRequest.getParameter("id");
 
@@ -528,16 +497,14 @@ public abstract class ServletModuleUploadedMedia extends ServletModule {
 
   protected void addExtraData(Map aTarget) throws ServletModuleExc, ServletModuleFailure {
     try {
-      aTarget.put("mediafolders",
-                  new EntityIteratorAdapter("", "", 20, MirGlobal.localizer().dataModel().adapterModel(), "mediaFolder"));
+      aTarget.put("mediafolders", EntityAdapterEngine.retrieveAdapterList(model, "mediaFolder", "", "", -1, 0));
     }
     catch (Throwable t) {
       throw new ServletModuleFailure(t);
     }
   }
 
-  public void showarticles(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc
-  {
+  public void showarticles(HttpServletRequest aRequest, HttpServletResponse aResponse) throws ServletModuleExc {
     String idParam = aRequest.getParameter("id");
     if (idParam!=null && !idParam.equals("")) {
       try {