X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=source%2Fmircoders%2Fservlet%2FServletModuleUsers.java;h=4d29ed4f771ecb38bed49e64b523abce94793112;hb=6b6b6215ebe066b81f1fa6b0c71a532ca7b4fc3f;hp=ae3f66f8909073ab5f72e8c5363e0232f05f97f3;hpb=e44404fac09c8da04b5ef7874160cb91f8fc98a9;p=mir.git diff --git a/source/mircoders/servlet/ServletModuleUsers.java b/source/mircoders/servlet/ServletModuleUsers.java index ae3f66f8..4d29ed4f 100755 --- a/source/mircoders/servlet/ServletModuleUsers.java +++ b/source/mircoders/servlet/ServletModuleUsers.java @@ -30,23 +30,13 @@ package mircoders.servlet; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Locale; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - +import mir.entity.adapter.EntityAdapterEngine; import mir.entity.adapter.EntityAdapterModel; -import mir.entity.adapter.EntityIteratorAdapter; import mir.log.LoggerWrapper; import mir.servlet.ServletModule; import mir.servlet.ServletModuleExc; import mir.servlet.ServletModuleFailure; import mir.servlet.ServletModuleUserExc; -import mir.util.CachingRewindableIterator; import mir.util.HTTPRequestParser; import mir.util.URLBuilder; import mircoders.entity.EntityUsers; @@ -54,6 +44,10 @@ import mircoders.global.MirGlobal; import mircoders.module.ModuleUsers; import mircoders.storage.DatabaseUsers; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.*; + /** * * @@ -248,23 +242,16 @@ public class ServletModuleUsers extends ServletModule int anOffset) throws ServletModuleExc { URLBuilder urlBuilder = new URLBuilder(); - int count; try { Map responseData = ServletHelper.makeGenerationData(aRequest, aResponse, new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)}); - model = MirGlobal.localizer().dataModel().adapterModel(); - Object userList = - new CachingRewindableIterator( - new EntityIteratorAdapter( "", "login", nrEntitiesPerListPage, - MirGlobal.localizer().dataModel().adapterModel(), "user", nrEntitiesPerListPage, anOffset) - ); + List list = + EntityAdapterEngine.retrieveAdapterList(model, definition, "", "login", nrEntitiesPerListPage, anOffset); responseData.put("nexturl", null); responseData.put("prevurl", null); - count=mainModule.getSize(""); - urlBuilder.setValue("module", "Users"); urlBuilder.setValue("do", "list"); @@ -272,7 +259,7 @@ public class ServletModuleUsers extends ServletModule responseData.put("offset" , new Integer(anOffset).toString()); responseData.put("thisurl" , urlBuilder.getQuery()); - if (count>=anOffset+nrEntitiesPerListPage) { + if (list.size()>=nrEntitiesPerListPage) { urlBuilder.setValue("offset", (anOffset + nrEntitiesPerListPage)); responseData.put("nexturl" , urlBuilder.getQuery()); } @@ -282,14 +269,13 @@ public class ServletModuleUsers extends ServletModule responseData.put("prevurl" , urlBuilder.getQuery()); } - responseData.put("users", userList); + responseData.put("users", list); responseData.put("mayDeleteUsers", new Boolean(MirGlobal.accessControl().user().mayDeleteUsers(ServletHelper.getUser(aRequest)))); responseData.put("mayAddUsers", new Boolean(MirGlobal.accessControl().user().mayAddUsers(ServletHelper.getUser(aRequest)))); responseData.put("mayEditUsers", new Boolean(MirGlobal.accessControl().user().mayEditUsers(ServletHelper.getUser(aRequest)))); responseData.put("from" , Integer.toString(anOffset+1)); - responseData.put("count", Integer.toString(count)); - responseData.put("to", Integer.toString(Math.min(anOffset+nrEntitiesPerListPage, count))); + responseData.put("to", Integer.toString(anOffset+list.size())); responseData.put("offset" , Integer.toString(anOffset)); ServletHelper.generateResponse(aResponse.getWriter(), responseData, listGenerator); @@ -305,7 +291,7 @@ public class ServletModuleUsers extends ServletModule HTTPRequestParser requestParser = new HTTPRequestParser(aRequest); Map responseData = ServletHelper.makeGenerationData(aRequest, aResponse, new Locale[] { getLocale(aRequest), getFallbackLocale(aRequest)}); EntityAdapterModel model = MirGlobal.localizer().dataModel().adapterModel(); - Map user; + Object user; URLBuilder urlBuilder = new URLBuilder(); urlBuilder.setValue("module", "Users"); @@ -323,13 +309,13 @@ public class ServletModuleUsers extends ServletModule else { List fields = DatabaseUsers.getInstance().getFieldNames(); responseData.put("new", Boolean.TRUE); - user = new HashMap(); + Map emptyUser = new HashMap(); Iterator i = fields.iterator(); while (i.hasNext()) { - user.put(i.next(), null); + emptyUser.put(i.next(), null); } - MirGlobal.localizer().adminInterface().initializeArticle(user); + user = emptyUser; } responseData.put("user", user); responseData.put("passwordonly", new Boolean(anOnlyPassword));