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]

Reply via email to