taylor 2005/04/09 11:46:49 Modified: components/capability/src/test/org/apache/jetspeed/capabilities TestCapability.java components/capability/src/java/org/apache/jetspeed/capabilities/impl JetspeedCapabilities.java ClientImpl.java components/capability/src/java/META-INF capabilities-ojb.xml Log: http://issues.apache.org/jira/browse/JS2-230 support ordering of capabilitiy search added EVAL_ORDER column Revision Changes Path 1.5 +41 -5 jakarta-jetspeed-2/components/capability/src/test/org/apache/jetspeed/capabilities/TestCapability.java Index: TestCapability.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/components/capability/src/test/org/apache/jetspeed/capabilities/TestCapability.java,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- TestCapability.java 4 Jan 2005 16:35:05 -0000 1.4 +++ TestCapability.java 9 Apr 2005 18:46:49 -0000 1.5 @@ -63,37 +63,51 @@ public void testCapability() throws Exception { } - // TODO: FIXME: http://issues.apache.org/jira/browse/JS2-168 - public void XXXXtestCapability() throws Exception + public void xtestCapability() throws Exception { assertNotNull("capabilities component is null", capabilities); - + int lastOrder = 0; + Iterator caps = capabilities.getClients(); + while (caps.hasNext()) + { + Client client = (Client)caps.next(); + int evalOrder = client.getEvalOrder(); + if (lastOrder >= evalOrder) + { + assertTrue("Client result set is not ordered!", false); + } + lastOrder = evalOrder; + } + // Find specific client -- testing pattern matching String userAgent; System.out.println("Testing all supported Clients..."); - userAgent = "Opera/7.0"; System.out.println("Find pattern: " + userAgent); CapabilityMap cm = capabilities.getCapabilityMap(userAgent); assertNotNull("getCapabilityMap is null", cm); + assertTrue("Opera", cm.getClient().getName().equals("opera7")); capabilityMapReport(cm); userAgent = "Mozilla/4.0"; System.out.println("Find pattern: " + userAgent); cm = capabilities.getCapabilityMap(userAgent); assertNotNull("getCapabilityMap is null", cm); + assertTrue("Netscape/Mozilla4", cm.getClient().getName().equals("ns4")); capabilityMapReport(cm); userAgent = "MSIE 5.0"; System.out.println("Find pattern: " + userAgent); cm = capabilities.getCapabilityMap(userAgent); assertNotNull("getCapabilityMap is null", cm); + assertTrue("MSIE 5", cm.getClient().getName().equals("ie5")); capabilityMapReport(cm); userAgent = "Mozilla/5.0"; System.out.println("Find pattern: " + userAgent); cm = capabilities.getCapabilityMap(userAgent); assertNotNull("getCapabilityMap is null", cm); + assertTrue("Mozilla 5.0", cm.getClient().getName().equals("mozilla")); capabilityMapReport(cm); userAgent = "Lynx"; @@ -107,6 +121,28 @@ cm = capabilities.getCapabilityMap(userAgent); assertNotNull("getCapabilityMap is null", cm); capabilityMapReport(cm); + + userAgent = "Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-us) AppleWebKit/125.5.6 (KHTML, like Gecko) Safari/125.12"; + System.out.println("Find pattern: " + userAgent); + cm = capabilities.getCapabilityMap(userAgent); + assertNotNull("getCapabilityMap is null", cm); + assertTrue("found Safari", cm.getClient().getName().equals("safari")); + capabilityMapReport(cm); + + userAgent = "Mozilla/4.0 (compatible; MSIE 5.23; Mac_PowerPC)"; + System.out.println("Find pattern: " + userAgent); + cm = capabilities.getCapabilityMap(userAgent); + assertNotNull("getCapabilityMap is null", cm); + assertTrue("stinking IE for Mac", cm.getClient().getName().equals("iemac")); + capabilityMapReport(cm); + + userAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)"; + System.out.println("Find pattern: " + userAgent); + cm = capabilities.getCapabilityMap(userAgent); + assertNotNull("getCapabilityMap is null", cm); + assertTrue("IE 6 Windows", cm.getClient().getName().equals("ie6")); + capabilityMapReport(cm); + } 1.4 +5 -4 jakarta-jetspeed-2/components/capability/src/java/org/apache/jetspeed/capabilities/impl/JetspeedCapabilities.java Index: JetspeedCapabilities.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/components/capability/src/java/org/apache/jetspeed/capabilities/impl/JetspeedCapabilities.java,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- JetspeedCapabilities.java 4 Jan 2005 15:52:02 -0000 1.3 +++ JetspeedCapabilities.java 9 Apr 2005 18:46:49 -0000 1.4 @@ -32,6 +32,7 @@ import org.apache.jetspeed.capabilities.UnableToBuildCapabilityMapException; import org.apache.jetspeed.components.dao.InitablePersistenceBrokerDaoSupport; import org.apache.ojb.broker.query.Criteria; +import org.apache.ojb.broker.query.Query; import org.apache.ojb.broker.query.QueryByCriteria; import org.apache.ojb.broker.query.QueryFactory; @@ -304,9 +305,9 @@ { if (null == clients) { - - this.clients = getPersistenceBrokerTemplate().getCollectionByQuery( - QueryFactory.newQuery(clientClass, new Criteria())); + QueryByCriteria query = QueryFactory.newQuery(clientClass, new Criteria()); + query.addOrderByAscending("evalOrder"); + this.clients = getPersistenceBrokerTemplate().getCollectionByQuery(query); } return this.clients.iterator(); 1.3 +16 -1 jakarta-jetspeed-2/components/capability/src/java/org/apache/jetspeed/capabilities/impl/ClientImpl.java Index: ClientImpl.java =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/components/capability/src/java/org/apache/jetspeed/capabilities/impl/ClientImpl.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- ClientImpl.java 19 Mar 2005 12:47:13 -0000 1.2 +++ ClientImpl.java 9 Apr 2005 18:46:49 -0000 1.3 @@ -41,6 +41,7 @@ private int preferredMimeTypeId; private int clientId; + private int evalOrder = 0; public ClientImpl() { @@ -246,4 +247,18 @@ this.preferredMimeTypeId = mimeTypeId; } + /** + * @return Returns the evalOrder. + */ + public int getEvalOrder() + { + return evalOrder; + } + /** + * @param evalOrder The evalOrder to set. + */ + public void setEvalOrder(int evalOrder) + { + this.evalOrder = evalOrder; + } } 1.2 +6 -0 jakarta-jetspeed-2/components/capability/src/java/META-INF/capabilities-ojb.xml Index: capabilities-ojb.xml =================================================================== RCS file: /home/cvs/jakarta-jetspeed-2/components/capability/src/java/META-INF/capabilities-ojb.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- capabilities-ojb.xml 7 Nov 2004 18:44:44 -0000 1.1 +++ capabilities-ojb.xml 9 Apr 2005 18:46:49 -0000 1.2 @@ -95,6 +95,12 @@ primarykey="true" autoincrement="true" /> + + <field-descriptor + name="evalOrder" + column="EVAL_ORDER" + jdbc-type="INTEGER" + /> <field-descriptor name="name"
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]