You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@clerezza.apache.org by re...@apache.org on 2011/06/28 15:01:09 UTC
svn commit: r1140577 - in /incubator/clerezza/trunk/parent:
platform.style.classic/src/main/java/org/apache/clerezza/platform/style/classic/
platform.typerendering.scalaserverpages/src/main/java/org/apache/clerezza/platform/typerendering/scalaserverpages/
Author: reto
Date: Tue Jun 28 13:01:09 2011
New Revision: 1140577
URL: http://svn.apache.org/viewvc?rev=1140577&view=rev
Log:
CLEREZZA-583: allowing registration of ssp with the context of the registering bundle
Modified:
incubator/clerezza/trunk/parent/platform.style.classic/src/main/java/org/apache/clerezza/platform/style/classic/Style.java
incubator/clerezza/trunk/parent/platform.typerendering.scalaserverpages/src/main/java/org/apache/clerezza/platform/typerendering/scalaserverpages/ScalaServerPagesService.java
Modified: incubator/clerezza/trunk/parent/platform.style.classic/src/main/java/org/apache/clerezza/platform/style/classic/Style.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/platform.style.classic/src/main/java/org/apache/clerezza/platform/style/classic/Style.java?rev=1140577&r1=1140576&r2=1140577&view=diff
==============================================================================
--- incubator/clerezza/trunk/parent/platform.style.classic/src/main/java/org/apache/clerezza/platform/style/classic/Style.java (original)
+++ incubator/clerezza/trunk/parent/platform.style.classic/src/main/java/org/apache/clerezza/platform/style/classic/Style.java Tue Jun 28 13:01:09 2011
@@ -31,6 +31,7 @@ import org.apache.clerezza.rdf.ontologie
import org.apache.clerezza.rdf.ontologies.PLATFORM;
import org.apache.clerezza.rdf.ontologies.RDF;
import org.apache.clerezza.rdf.ontologies.RDFS;
+import org.osgi.framework.BundleContext;
import org.osgi.framework.ServiceRegistration;
import org.osgi.service.component.ComponentContext;
@@ -53,21 +54,23 @@ public class Style {
* @param context
*/
protected void activate(ComponentContext context) {
+ BundleContext bundleContext = context.getBundleContext();
+
URL templateURL = getClass().getResource("globalmenu-naked.ssp");
serviceRegistrations.add(sspService.registerScalaServerPage(templateURL, RDFS.Resource, "menu",
- MediaType.APPLICATION_XHTML_XML_TYPE));
+ MediaType.APPLICATION_XHTML_XML_TYPE, bundleContext));
templateURL = getClass().getResource("rdf-list-template.ssp");
serviceRegistrations.add(sspService.registerScalaServerPage(templateURL, RDF.List, ".*naked",
- MediaType.APPLICATION_XHTML_XML_TYPE));
+ MediaType.APPLICATION_XHTML_XML_TYPE, bundleContext));
templateURL = getClass().getResource("headed-page-template.ssp");
serviceRegistrations.add(sspService.registerScalaServerPage(templateURL, PLATFORM.HeadedPage, "(?!.*naked).*",
- MediaType.APPLICATION_XHTML_XML_TYPE));
+ MediaType.APPLICATION_XHTML_XML_TYPE, bundleContext));
templateURL = getClass().getResource("headed-page-template.ssp");
serviceRegistrations.add(sspService.registerScalaServerPage(templateURL, HIERARCHY.Collection, "(?!.*naked).*",
- MediaType.APPLICATION_XHTML_XML_TYPE));
+ MediaType.APPLICATION_XHTML_XML_TYPE, bundleContext));
}
protected void deactivate(ComponentContext context) {
Modified: incubator/clerezza/trunk/parent/platform.typerendering.scalaserverpages/src/main/java/org/apache/clerezza/platform/typerendering/scalaserverpages/ScalaServerPagesService.java
URL: http://svn.apache.org/viewvc/incubator/clerezza/trunk/parent/platform.typerendering.scalaserverpages/src/main/java/org/apache/clerezza/platform/typerendering/scalaserverpages/ScalaServerPagesService.java?rev=1140577&r1=1140576&r2=1140577&view=diff
==============================================================================
--- incubator/clerezza/trunk/parent/platform.typerendering.scalaserverpages/src/main/java/org/apache/clerezza/platform/typerendering/scalaserverpages/ScalaServerPagesService.java (original)
+++ incubator/clerezza/trunk/parent/platform.typerendering.scalaserverpages/src/main/java/org/apache/clerezza/platform/typerendering/scalaserverpages/ScalaServerPagesService.java Tue Jun 28 13:01:09 2011
@@ -56,11 +56,38 @@ public class ScalaServerPagesService {
bundleContext = null;
}
+ /**
+ * Creates a Renderle-Service registered using the BundleContext of this
+ * service
+ *
+ * @param location
+ * @param rdfType
+ * @param modePattern
+ * @param mediaType
+ * @return
+ */
public ServiceRegistration registerScalaServerPage(URL location, UriRef rdfType,
String modePattern, MediaType mediaType) {
+ return registerScalaServerPage(location, rdfType, modePattern, mediaType, bundleContext);
+ }
+
+ /**
+ * Creates a renderlet service registered using the given bundle context. Using
+ * This method ensures that the passed BundleContext is used to determine the priority
+ * of the renderlets.
+ *
+ * @param location
+ * @param rdfType
+ * @param modePattern
+ * @param mediaType
+ * @param callerBundleContext
+ * @return
+ */
+ public ServiceRegistration registerScalaServerPage(URL location, UriRef rdfType,
+ String modePattern, MediaType mediaType, BundleContext callerBundleContext) {
TypeRenderlet sspTypeRenderlet = new SspTypeRenderlet(location, rdfType,
modePattern, mediaType, scalaCompilerService);
- return bundleContext.registerService(TypeRenderlet.class.getName(),
+ return callerBundleContext.registerService(TypeRenderlet.class.getName(),
sspTypeRenderlet, null);
}