Author: reto
Date: Tue Dec 28 15:37:43 2010
New Revision: 1053370

URL: http://svn.apache.org/viewvc?rev=1053370&view=rev
Log:
CLEREZZA-205: support for configuring logging

Added:
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/
      - copied from r1039536, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/logging/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/logging/LoggingManager.java
      - copied, changed from r1039536, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/greeting/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/greeting/new-greeting.xhtml
      - copied, changed from r1030117, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/staticweb/new-greeting.xhtml
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/logging/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/logging/config-page-naked.ssp
      - copied, changed from r1039536, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp
Removed:
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/skeleton/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/skeleton/greeting-list-naked.ssp
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/skeleton/staticweb/
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/ontologies/src/main/resources/org/apache/clerezza/skeleton/ontologies/greetings.ttl
Modified:
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/pom.xml
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/ontologies/pom.xml
    
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/pom.xml

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/pom.xml?rev=1053370&r1=1039536&r2=1053370&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/pom.xml
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/pom.xml
 Tue Dec 28 15:37:43 2010
@@ -1,23 +1,23 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?><project 
xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
        <modelVersion>4.0.0</modelVersion>
        <parent>
-               <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
-               <artifactId>parent</artifactId>
+               <groupId>org.apache.clerezza</groupId>
+               
<artifactId>org.apache.clerezza.platform.logging.parent</artifactId>
                <version>0.1-incubating-SNAPSHOT</version>
        </parent>
-       <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
-       <artifactId>core</artifactId>
+       <groupId>org.apache.clerezza</groupId>
+       <artifactId>org.apache.clerezza.platform.logging.core</artifactId>
        <version>0.1-incubating-SNAPSHOT</version>
        <packaging>bundle</packaging>
-       <name>Clerezza - Skeleton Core</name>
+       <name>Clerezza - Platform Logging Core</name>
        <description>
-               Skeleton Core
+               Configure logging for the Clerezza Platform Core
        </description>
 
        <dependencies>
                <dependency>
-                       
<groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
-                       <artifactId>ontologies</artifactId>
+                       <groupId>org.apache.clerezza</groupId>
+                       
<artifactId>org.apache.clerezza.platform.logging.ontologies</artifactId>
                </dependency>
                <dependency>
                        <groupId>org.apache.clerezza</groupId>
@@ -33,6 +33,10 @@
                </dependency>
                <dependency>
                        <groupId>org.apache.clerezza</groupId>
+                       
<artifactId>org.apache.clerezza.platform.dashboard.core</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.clerezza</groupId>
                        
<artifactId>org.apache.clerezza.platform.graphprovider.content</artifactId>
                </dependency>
                <dependency>

Copied: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/logging/LoggingManager.java
 (from r1039536, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java)
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/logging/LoggingManager.java?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/logging/LoggingManager.java&p1=incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java&r1=1039536&r2=1053370&rev=1053370&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/java/org/apache/clerezza/skeleton/GreetingManager.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/java/org/apache/clerezza/platform/logging/LoggingManager.java
 Tue Dec 28 15:37:43 2010
@@ -17,10 +17,18 @@
  * under the License.
  */
 
-package org.apache.clerezza.skeleton;
+package org.apache.clerezza.platform.logging;
 
+import java.io.IOException;
+import java.io.StringReader;
+import java.io.StringWriter;
 import java.net.URISyntaxException;
-import java.util.concurrent.locks.Lock;
+import java.util.Dictionary;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.Set;
 import javax.ws.rs.FormParam;
 import javax.ws.rs.GET;
 import javax.ws.rs.POST;
@@ -31,81 +39,125 @@ import javax.ws.rs.core.Response;
 import javax.ws.rs.core.UriInfo;
 import org.apache.clerezza.jaxrs.utils.RedirectUtil;
 import org.apache.clerezza.jaxrs.utils.TrailingSlash;
+import org.apache.clerezza.platform.dashboard.GlobalMenuItem;
+import org.apache.clerezza.platform.dashboard.GlobalMenuItemsProvider;
+import org.apache.clerezza.platform.logging.ontologies.LOGGING;
 import org.apache.clerezza.platform.graphprovider.content.ContentGraphProvider;
 import org.apache.clerezza.platform.typerendering.RenderletManager;
 import 
org.apache.clerezza.platform.typerendering.scalaserverpages.ScalaServerPagesRenderlet;
 import org.apache.clerezza.rdf.core.BNode;
-import org.apache.clerezza.rdf.core.MGraph;
 import org.apache.clerezza.rdf.core.UriRef;
-import org.apache.clerezza.rdf.core.access.LockableMGraph;
-import org.apache.clerezza.rdf.core.impl.PlainLiteralImpl;
 import org.apache.clerezza.rdf.core.impl.SimpleMGraph;
-import org.apache.clerezza.rdf.core.impl.TripleImpl;
+import org.apache.clerezza.rdf.ontologies.PLATFORM;
 import org.apache.clerezza.rdf.ontologies.RDF;
 import org.apache.clerezza.rdf.utils.GraphNode;
-import org.apache.clerezza.skeleton.ontologies.GREETINGS;
-import org.apache.clerezza.web.fileserver.FileServer;
 import org.apache.felix.scr.annotations.Component;
 import org.apache.felix.scr.annotations.Property;
 import org.apache.felix.scr.annotations.Reference;
 import org.apache.felix.scr.annotations.Service;
+import org.apache.felix.scr.annotations.Services;
+import org.osgi.framework.Bundle;
+import org.osgi.service.cm.Configuration;
+import org.osgi.service.cm.ConfigurationAdmin;
 import org.osgi.service.component.ComponentContext;
 
 
 
 @Component
-...@service(value=Object.class)
+...@services({
+       @Service(value=Object.class),
+       @Service(value=GlobalMenuItemsProvider.class)
+})
 @Property(name="javax.ws.rs", boolValue=true)
-...@path("/greeting/manager")
-public class GreetingManager extends FileServer {
+...@path("admin/logging")
+public class LoggingManager implements GlobalMenuItemsProvider {
 
        @Reference
        private RenderletManager renderletManager;
 
        @Reference
-       private ContentGraphProvider cgProvider;
+       private ConfigurationAdmin configurationAdmin;
 
-       public void activate(ComponentContext context) throws 
URISyntaxException {
+       private String paxLoggingLocation = null;
+       public void activate(ComponentContext context) throws 
URISyntaxException, IOException {
                
renderletManager.registerRenderlet(ScalaServerPagesRenderlet.class.getName(),
                                new UriRef(getClass().getResource(
-                               "greeting-naked.ssp").toURI().toString()),
-                               GREETINGS.Greeting, "naked",
+                               "config-page-naked.ssp").toURI().toString()),
+                               LOGGING.LoggingConfigPage, "naked",
                                MediaType.APPLICATION_XHTML_XML_TYPE, true);
-               configure(context.getBundleContext());
+               
+               for (Bundle bundle : context.getBundleContext().getBundles()) {
+                       if 
(bundle.getSymbolicName().equals("org.ops4j.pax.logging.pax-logging-service")) {
+                               paxLoggingLocation = bundle.getLocation();
+                               break;
+                       }
+               }
+               
        }
 
-       @GET
-       public Response entry(@Context UriInfo uriInfo) {
-               TrailingSlash.enforceNotPresent(uriInfo);
-               return 
RedirectUtil.createSeeOtherResponse("manager/new-greeting.xhtml", uriInfo);
+       private void setProperties(Dictionary props) throws IOException {
+               Configuration config = getServiceConfig();
+               config.update(props);
+       }
+
+       /*private void setProperties(Hashtable properties) {
+               setProperties
+       }*/
+
+       private Configuration getServiceConfig() throws IOException {
+               Configuration config = 
configurationAdmin.getConfiguration("org.ops4j.pax.logging", 
paxLoggingLocation);
+               return config;
        }
 
        @GET
-       @Path("test")
-       public GraphNode testGreeting() {
-               MGraph resultMGraph = new SimpleMGraph();
+       public GraphNode entry(@Context UriInfo uriInfo) throws IOException {
+               TrailingSlash.enforcePresent(uriInfo);
+               SimpleMGraph resultMGraph = new SimpleMGraph();
                GraphNode result = new GraphNode(new BNode(), resultMGraph);
-               result.addProperty(RDF.type, GREETINGS.Greeting);
-               result.addProperty(GREETINGS.words, 
-                               new PlainLiteralImpl("Merhaba!"));
+               result.addPropertyValue(LOGGING.loggingConfig, 
getPropertiesAsString());
+               result.addProperty(RDF.type, PLATFORM.HeadedPage);
+               result.addProperty(RDF.type, LOGGING.LoggingConfigPage);
                return result;
        }
 
-       @POST
-       @Path("new-greeting")
-       public String createNewGreeting(@FormParam("uri") UriRef uri,
-                       @FormParam("words") String words) {
-               LockableMGraph contentGraph = cgProvider.getContentGraph();
-               Lock l = contentGraph.getLock().writeLock();
-               l.lock();
-               try {
-                       contentGraph.add(new TripleImpl(uri, RDF.type, 
GREETINGS.Greeting));
-                       contentGraph.add(new TripleImpl(uri, GREETINGS.words,
-                                       new PlainLiteralImpl(words)));
-               } finally {
-                       l.unlock();
+       private String getPropertiesAsString() throws IOException {
+               Configuration config = getServiceConfig();
+               Properties properties = new Properties();
+               Dictionary propertyDictionary = config.getProperties();
+               Enumeration<String> keys = propertyDictionary.keys();
+               while (keys.hasMoreElements()) {
+                       String key = keys.nextElement();
+                       properties.put(key, propertyDictionary.get(key));
                }
-               return "created";
+               StringWriter stringWriter = new StringWriter();
+               properties.store(stringWriter, "properties of the pax-logging 
service");
+               return stringWriter.toString();
+       }
+
+
+       @POST
+       @Path("setConfiguration")
+       public Response setConfiguration(@Context UriInfo uriInfo,
+                       @FormParam("configuration") String configuration) 
throws IOException {
+               Properties properties = new Properties();
+               properties.load(new StringReader(configuration));
+               setProperties(properties);
+               return RedirectUtil.createSeeOtherResponse("./", uriInfo);
        }
 
+       @Override
+    public Set<GlobalMenuItem> getMenuItems() {
+        Set<GlobalMenuItem> items = new HashSet<GlobalMenuItem>();
+
+        items.add(new GlobalMenuItem("/admin/logging", "Logging", "Logging", 3,
+                "Administration"));
+
+
+        return items;
+
+
+    }
+
+
+
 }
\ No newline at end of file

Copied: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/greeting/new-greeting.xhtml
 (from r1030117, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/staticweb/new-greeting.xhtml)
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/greeting/new-greeting.xhtml?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/greeting/new-greeting.xhtml&p1=incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/staticweb/new-greeting.xhtml&r1=1030117&r2=1053370&rev=1053370&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/staticweb/new-greeting.xhtml
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/CLEREZZA-INF/web-resources/greeting/new-greeting.xhtml
 Tue Dec 28 15:37:43 2010
@@ -7,7 +7,7 @@
     <body>
                <div class="tx-content">
                        <h1>Create new Greeting</h1>
-                       <form method="post" action="new-greeting">
+                       <form method="post" action="manager/new-greeting">
                                Uri: <input type="text" name="uri"/><br/>
                                Words: <input type="text" name="words"/><br/>
                                <input type="submit"/>

Copied: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/logging/config-page-naked.ssp
 (from r1039536, 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp)
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/logging/config-page-naked.ssp?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/logging/config-page-naked.ssp&p1=incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp&r1=1039536&r2=1053370&rev=1053370&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/maven-archetypes/java-ssp-ttl/core/src/main/resources/org/apache/clerezza/skeleton/greeting-naked.ssp
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/core/src/main/resources/org/apache/clerezza/platform/logging/config-page-naked.ssp
 Tue Dec 28 15:37:43 2010
@@ -1,6 +1,11 @@
-def greet(s: Any) = new UriRef("http://clerezza.apache.org/skeleton/greeting#"; 
+ s)
+def logging(s: Any) = new 
UriRef("http://clerezza.apache.org/2010/12/03/logging#"; + s)
+
+<div id="tx-content">
+       <h3>Logging Configuration:</h3>
+       <form action="setConfiguration" method="POST">
+       <textarea name="configuration" style="width: 80%; height: 
20em">{res/logging("loggingConfig")*}</textarea>
+       <br/>
+       <input type="submit" value="Save" />
+       </form>
 
-<div class="tx-content">
-       <h3>Today we greet you as follows:</h3>
-       <strong>{res/greet("words")*}</strong>
 </div>
\ No newline at end of file

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/ontologies/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/ontologies/pom.xml?rev=1053370&r1=1039536&r2=1053370&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/ontologies/pom.xml
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/ontologies/pom.xml
 Tue Dec 28 15:37:43 2010
@@ -1,15 +1,15 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?><project 
xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
        <modelVersion>4.0.0</modelVersion>
        <parent>
-               <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
-               <artifactId>parent</artifactId>
+               <groupId>org.apache.clerezza</groupId>
+               
<artifactId>org.apache.clerezza.platform.logging.parent</artifactId>
                <version>0.1-incubating-SNAPSHOT</version>
        </parent>
-       <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
-       <artifactId>ontologies</artifactId>
+       <groupId>org.apache.clerezza</groupId>
+       <artifactId>org.apache.clerezza.platform.logging.ontologies</artifactId>
        <version>0.1-incubating-SNAPSHOT</version>
        <packaging>bundle</packaging>
-       <name>Clerezza - Skeleton Ontologies</name>
+       <name>Clerezza - Platform Logging Ontologies</name>
        <description>
                Skeleton Ontologies
        </description>

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/pom.xml
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/pom.xml?rev=1053370&r1=1039536&r2=1053370&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/pom.xml
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.platform.logging/pom.xml
 Tue Dec 28 15:37:43 2010
@@ -5,33 +5,23 @@
                <artifactId>org.apache.clerezza.parent</artifactId>
                <version>0.2-incubating-SNAPSHOT</version>
        </parent>
-       <groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
-       <artifactId>parent</artifactId>
+       <groupId>org.apache.clerezza</groupId>
+       <artifactId>org.apache.clerezza.platform.logging.parent</artifactId>
        <packaging>pom</packaging>
        <version>0.1-incubating-SNAPSHOT</version>
-       <name>Clerezza - Skeleton for a project using Java, ScalaServerPages 
and Turtle</name>
+       <name>Clerezza - Platform Logging</name>
        <modules>
                <module>ontologies</module>
                <module>core</module>
+               <module>initializer</module>
        </modules>
        <dependencyManagement>
                <dependencies>
                        <dependency>
-                               
<groupId>org.apache.clerezza.java-ssp-ttl-skeleton</groupId>
+                               
<groupId>org.apache.clerezza.platform.logging</groupId>
                                <artifactId>ontologies</artifactId>
                                <version>0.1-incubating-SNAPSHOT</version>
                        </dependency>
                </dependencies>
        </dependencyManagement>
-       <!-- <build>
-               <pluginManagement>
-                       <plugins>
-                               <plugin>
-                                       
<groupId>org.apache.maven.archetype</groupId>
-                                       
<artifactId>archetype-packaging:maven-plugin</artifactId>
-                                       <version>2.0-alpha-5</version>
-                               </plugin>
-                       </plugins>
-               </pluginManagement>
-       </build> -->
 </project>


Reply via email to