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>