[jboss-svn-commits] JBL Code SVN: r23676 - in labs/jbossrules/trunk/drools-atom: src/main/java/org/drools/atom and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Nov 3 08:27:50 EST 2008


Author: jervisliu
Date: 2008-11-03 08:27:49 -0500 (Mon, 03 Nov 2008)
New Revision: 23676

Modified:
   labs/jbossrules/trunk/drools-atom/pom.xml
   labs/jbossrules/trunk/drools-atom/src/main/java/org/drools/atom/AtomRulesRepository.java
   labs/jbossrules/trunk/drools-atom/src/test/java/org/drools/atom/ClientServerAtomRulesRepositoryTest.java
Log:
return meta data for atompub interface.

Modified: labs/jbossrules/trunk/drools-atom/pom.xml
===================================================================
--- labs/jbossrules/trunk/drools-atom/pom.xml	2008-11-03 10:27:50 UTC (rev 23675)
+++ labs/jbossrules/trunk/drools-atom/pom.xml	2008-11-03 13:27:49 UTC (rev 23676)
@@ -59,7 +59,7 @@
       <artifactId>geronimo-servlet_2.5_spec</artifactId>
       <version>1.2</version>
     </dependency>
-	
+
     <dependency>
       <groupId>org.apache.cxf</groupId>
       <artifactId>cxf-rt-frontend-jaxrs</artifactId>

Modified: labs/jbossrules/trunk/drools-atom/src/main/java/org/drools/atom/AtomRulesRepository.java
===================================================================
--- labs/jbossrules/trunk/drools-atom/src/main/java/org/drools/atom/AtomRulesRepository.java	2008-11-03 10:27:50 UTC (rev 23675)
+++ labs/jbossrules/trunk/drools-atom/src/main/java/org/drools/atom/AtomRulesRepository.java	2008-11-03 13:27:49 UTC (rev 23676)
@@ -17,11 +17,13 @@
 import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.Response;
 import javax.ws.rs.core.UriInfo;
+import javax.xml.namespace.QName;
 
 import org.apache.abdera.Abdera;
 import org.apache.abdera.factory.Factory;
 import org.apache.abdera.model.Content;
 import org.apache.abdera.model.Entry;
+import org.apache.abdera.model.ExtensibleElement;
 import org.apache.abdera.model.Feed;
 import org.drools.repository.AssetItem;
 import org.drools.repository.PackageItem;
@@ -357,6 +359,55 @@
         e.addLink(uri.toString());
         e.setUpdated(asset.getLastModified().getTime());
         
+        //meta data
+/*        StringProperty property = e.addExtension(MetaDataExtensionFactory.PROPERTY);
+        property.setValue("false");*/
+        String NS = "http://overlord.jboss.org/drools/1.0";
+        QName METADATA = new QName(NS, "metadata");
+        
+        ExtensibleElement extension = e.addExtension(METADATA);
+        //extension.declareNS(NS, "drools");
+        QName PROPERTY = new QName(NS, "property");
+        ExtensibleElement childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "archived");
+        childExtension.setText(asset.isArchived()?"true":"false");
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "checkinComment");
+        childExtension.setText(asset.getCheckinComment());        
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "categorySummary");
+        childExtension.setText(asset.getCategorySummary());  
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "coverage");
+        childExtension.setText(asset.getCoverage()); 
+               
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "creator");
+        childExtension.setText(asset.getCreator()); 
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "format");
+        childExtension.setText(asset.getFormat()); 
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "lastContributor");
+        childExtension.setText(asset.getLastContributor());         
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "packageName");
+        childExtension.setText(asset.getPackageName());         
+        
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "publisher");
+        childExtension.setText(asset.getPublisher()); 
+                
+        childExtension = extension.addExtension(PROPERTY);
+        childExtension.setAttributeValue("name", "stateDescription");
+        childExtension.setText(asset.getStateDescription());         
+        
         if (!asset.isBinary()) {
 			e.setContentElement(factory.newContent());
 			e.getContentElement().setContentType(Content.Type.TEXT);

Modified: labs/jbossrules/trunk/drools-atom/src/test/java/org/drools/atom/ClientServerAtomRulesRepositoryTest.java
===================================================================
--- labs/jbossrules/trunk/drools-atom/src/test/java/org/drools/atom/ClientServerAtomRulesRepositoryTest.java	2008-11-03 10:27:50 UTC (rev 23675)
+++ labs/jbossrules/trunk/drools-atom/src/test/java/org/drools/atom/ClientServerAtomRulesRepositoryTest.java	2008-11-03 13:27:49 UTC (rev 23676)
@@ -139,6 +139,8 @@
             assertTrue(response.indexOf("testAsset1</title>") > 0);
             assertTrue(response.indexOf("testAsset1Desc1</summary>") > 0);
             assertTrue(response.indexOf("a new test rule for testAsset1</content>") > 0);
+            assertTrue(response.indexOf("</metadata>") > 0);
+
         } finally {
             get.releaseConnection();
         }




More information about the jboss-svn-commits mailing list