← Back to team overview

slub.team team mailing list archive

[Merge] lp:~slub.team/goobi-production/bug-1043811 into lp:goobi-production

 

Henning Gerhardt has proposed merging lp:~slub.team/goobi-production/bug-1043811 into lp:goobi-production.

Requested reviews:
  Ralf Claussnitzer (ralf-claussnitzer)
Related bugs:
  Bug #1043811 in Goobi.Production: "Filter stays active until logout"
  https://bugs.launchpad.net/goobi-production/+bug/1043811

For more details, see:
https://code.launchpad.net/~slub.team/goobi-production/bug-1043811/+merge/123243
-- 
https://code.launchpad.net/~slub.team/goobi-production/bug-1043811/+merge/123243
Your team Saxon State Library Team is subscribed to branch lp:goobi-production.
=== modified file 'src-dubious/dubious/sub/goobi/helper/Page.java'
--- src-dubious/dubious/sub/goobi/helper/Page.java	2012-07-27 11:00:31 +0000
+++ src-dubious/dubious/sub/goobi/helper/Page.java	2012-09-07 10:13:21 +0000
@@ -62,7 +62,7 @@
 				totalResults = criteria.list().size();
 			}
 		} catch (HibernateException e) {
-			logger.error("Failed to get paginated results: " + e);
+			logger.error("Failed to get paginated results: ", e);
 		}
 	}
 

=== modified file 'src/org/goobi/production/flow/statistics/hibernate/FilterHelper.java'
--- src/org/goobi/production/flow/statistics/hibernate/FilterHelper.java	2012-06-21 13:56:54 +0000
+++ src/org/goobi/production/flow/statistics/hibernate/FilterHelper.java	2012-09-07 10:13:21 +0000
@@ -475,27 +475,11 @@
 		// restrictions apply, to avoid multiple analysis
 		// of the criteria it is only done here once and
 		// to set flags which are subsequently used
-		Boolean flagSteps = false;
-		Boolean flagProcesses = false;
-		@SuppressWarnings("unused")
-		Boolean flagSetCritProjects = false;
-
-		if (crit.getClassName() == Prozess.class.getName()) {
-			flagProcesses = true;
-		}
-
-		if (crit.getClassName() == Schritt.class.getName()) {
-			flagSteps = true;
-		}
-
-		// keeping a reference to the passed criteria
-		Criteria inCrit = crit;
-		@SuppressWarnings("unused")
-		Criteria critProject = null;
-		Criteria critProcess = null;
+		Boolean flagSteps = crit.getClassName().equals(Schritt.class.getName());
+		Boolean flagProcesses = crit.getClassName().equals(Prozess.class.getName());
 
 		// to collect and return feedback about erroneous use of filter expressions
-		String message = new String("");
+		String message = "";
 		
 		StrTokenizer tokenizer = new StrTokenizer(inFilter, ' ', '\"');
 
@@ -515,7 +499,6 @@
 			// happens if user has admin rights
 			if (conjProjects.toString().equals("()")) {
 				conjProjects = null;
-				flagSetCritProjects = true;
 			}
 		}
 
@@ -536,11 +519,9 @@
 		if (isTemplate != null) {
 			conjProcesses = Restrictions.conjunction();
 			if (!isTemplate) {
-				conjProcesses.add(Restrictions.eq("istTemplate", Boolean
-						.valueOf(false)));
+				conjProcesses.add(Restrictions.eq("istTemplate", false));
 			} else {
-				conjProcesses.add(Restrictions.eq("istTemplate", Boolean
-						.valueOf(true)));
+				conjProcesses.add(Restrictions.eq("istTemplate", true));
 			}
 		}
 
@@ -660,68 +641,44 @@
 		}
 
 		if (conjProcesses != null || flagSteps) {
-			if (!flagProcesses) {
-				critProcess = crit.createCriteria("prozess", "proc");
-
-				if (conjProcesses != null) {
-
-					critProcess.add(conjProcesses);
-				}
-			} else {
-				if (conjProcesses != null) {
-					inCrit.add(conjProcesses);
-				}
+			if (flagProcesses) {
+				crit.add(conjProcesses);
 			}
 		}
 
-		if (flagSteps) {
-			critProject = critProcess.createCriteria("projekt", "proj");
-			if (conjProjects != null) {
-				inCrit.add(conjProjects);
-			}
-		} else {
-			inCrit.createCriteria("projekt", "proj");
-			if (conjProjects != null) {
-				inCrit.add(conjProjects);
-			}
+		if (conjProjects != null) {
+			if (!flagSteps) {
+				crit.createCriteria("projekt", "proj");
+			}
+			crit.add(conjProjects);
 		}
 
 		if (conjSteps != null) {
 			if (!flagSteps) {
 				crit.createCriteria("schritte", "steps");
-				crit.add(conjSteps);
-			} else {
-
-				inCrit.add(conjSteps);
 			}
+			crit.add(conjSteps);
 		}
 
 		if (conjTemplates != null) {
-			if (flagSteps){
-				critProcess.createCriteria("vorlagen", "vorl");
-				critProcess.createAlias("vorl.eigenschaften", "vorleig");
-				critProcess.add(conjTemplates);
-			}else{
+			if (!flagSteps){
 				crit.createCriteria("vorlagen", "vorl");
 				crit.createAlias("vorl.eigenschaften", "vorleig");
-				inCrit.add(conjTemplates);
+				crit.add(conjTemplates);
 			}
 		}
 
 		if (conjWorkPiece != null) {
-			if (flagSteps){
-				critProcess.createCriteria("werkstuecke", "werk");
-				critProcess.createAlias("werk.eigenschaften", "werkeig");
-				critProcess.add(conjWorkPiece);
-			}else{
+			if (!flagSteps){
 				crit.createCriteria("werkstuecke", "werk");
 				crit.createAlias("werk.eigenschaften", "werkeig");
-				inCrit.add(conjWorkPiece);
+				crit.add(conjWorkPiece);
 			}
 		}
+
 		if (conjUsers != null) {
 			crit.createCriteria("benutzer", "user");
-			inCrit.add(conjUsers);
+			crit.add(conjUsers);
 		}
 
 		return message;


Follow ups