Update of /var/cvs/contributions/CMSContainer/cmsc/contentrepository/src/java/com/finalist/cmsc/repository/forms In directory james.mmbase.org:/tmp/cvs-serv15256/cmsc/contentrepository/src/java/com/finalist/cmsc/repository/forms
Modified Files: HighFrequencyImgAction.java Log Message: CMSC-1126 using Assets in content See also: http://cvs.mmbase.org/viewcvs/contributions/CMSContainer/cmsc/contentrepository/src/java/com/finalist/cmsc/repository/forms See also: http://www.mmbase.org/jira/browse/CMSC-1126 Index: HighFrequencyImgAction.java =================================================================== RCS file: /var/cvs/contributions/CMSContainer/cmsc/contentrepository/src/java/com/finalist/cmsc/repository/forms/HighFrequencyImgAction.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -b -r1.1 -r1.2 --- HighFrequencyImgAction.java 4 Dec 2008 08:35:57 -0000 1.1 +++ HighFrequencyImgAction.java 4 Dec 2008 09:00:22 -0000 1.2 @@ -51,6 +51,7 @@ private static final String CREATION = "creation"; private static final String CONTENTELEMENT = "contentelement"; private static final String SOURCE = "source"; + private static final String DESTINATION = "destination"; private static final String IMAGEREL = "imagerel"; private static final String NUMBER = "number"; private static final String IMAGENUMBER = "imageNumber"; @@ -68,6 +69,7 @@ Query query = cloud.createAggregatedQuery(); Step imageStep; NodeManager imgManager = cloud.getNodeManager(IMAGES); + NodeManager channelManager = cloud.getNodeManager(CONTENTCHANNEL); // search in one contentchannel if (existChannelConstraint) { @@ -75,7 +77,6 @@ if (CURRENTCHANNEL.equals(channelid)) { channelid = (String) request.getSession().getAttribute(CREATION); } - NodeManager channelManager = cloud.getNodeManager(CONTENTCHANNEL); query.addStep(channelManager); RelationStep creationrelStep = query.addRelationStep(imgManager, CREATIONREL, SOURCE); imageStep = creationrelStep.getNext(); @@ -93,12 +94,12 @@ .getField(NUMBER), AggregatedField.AGGREGATION_TYPE_COUNT); countField.setAlias(COUNTALIAS); - NodeList middleResults = query.getList(); + NodeList usedImgResults = query.getList(); List<Map<Object, Object>> results = new ArrayList<Map<Object, Object>>(); - for (int i = 0; i < middleResults.size(); i++) { + for (int i = 0; i < usedImgResults.size(); i++) { Map<Object, Object> result = new HashMap<Object, Object>(); - Node n = middleResults.getNode(i); + Node n = usedImgResults.getNode(i); result.put(IMAGENUMBER, n.getValue(NUMBER)); result.put(COUNT, n.getIntValue(COUNTALIAS)); results.add(result); @@ -109,10 +110,17 @@ Collections.sort(results, comparator); Collections.reverse(results); - //TODO:this imgResult contains all images,it can be changed to the conditional image list - NodeQuery query1 = imgManager.createQuery(); - query1.getNodeStep(); - NodeList imgResult = query1.getList(); + NodeQuery nodeQuery = cloud.createNodeQuery(); + imageStep = nodeQuery.addStep(imgManager); + nodeQuery.setNodeStep(imageStep); + //search in one contentchannel + if(existChannelConstraint){ + nodeQuery.addRelationStep(channelManager,CREATIONREL,DESTINATION); + Queries.addConstraints(nodeQuery, channelManager.getName() + ".number=" + channelid); + request.setAttribute("channelid", channelid); + } + + NodeList imgResult = nodeQuery.getList(); List<Node> newresult = new ArrayList<Node>(); int x = 0; _______________________________________________ Cvs mailing list Cvs@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/cvs