Author: cziegeler Date: Fri Jun 19 06:35:29 2015 New Revision: 1686363 URL: http://svn.apache.org/r1686363 Log: SLING-4823 : Register a service when the system is ready
Added: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java (with props) sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java (with props) Modified: sling/trunk/launchpad/api/pom.xml sling/trunk/launchpad/base/pom.xml sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java sling/trunk/launchpad/base/src/main/resources/sling.properties sling/trunk/launchpad/builder/src/main/provisioning/sling.txt Modified: sling/trunk/launchpad/api/pom.xml URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/api/pom.xml?rev=1686363&r1=1686362&r2=1686363&view=diff ============================================================================== --- sling/trunk/launchpad/api/pom.xml (original) +++ sling/trunk/launchpad/api/pom.xml Fri Jun 19 06:35:29 2015 @@ -41,11 +41,6 @@ <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> <extensions>true</extensions> - <configuration> - <instructions> - <Export-Package>org.apache.sling.launchpad.api;version=1.1.0</Export-Package> - </instructions> - </configuration> </plugin> </plugins> </build> Added: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java?rev=1686363&view=auto ============================================================================== --- sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java (added) +++ sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java Fri Jun 19 06:35:29 2015 @@ -0,0 +1,30 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.sling.launchpad.api; + + +/** + * The startup service is registered when the startup is finished. + * + * @since 1.2.0 + */ +public interface StartupService { + + StartupMode getStartupMode(); +} Propchange: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/StartupService.java ------------------------------------------------------------------------------ svn:keywords = author date id revision rev url Added: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java?rev=1686363&view=auto ============================================================================== --- sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java (added) +++ sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java Fri Jun 19 06:35:29 2015 @@ -0,0 +1,24 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +@Version("1.2.0") +package org.apache.sling.launchpad.api; + +import aQute.bnd.annotation.Version; + Propchange: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: sling/trunk/launchpad/api/src/main/java/org/apache/sling/launchpad/api/package-info.java ------------------------------------------------------------------------------ svn:keywords = author date id revision rev url Modified: sling/trunk/launchpad/base/pom.xml URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/pom.xml?rev=1686363&r1=1686362&r2=1686363&view=diff ============================================================================== --- sling/trunk/launchpad/base/pom.xml (original) +++ sling/trunk/launchpad/base/pom.xml Fri Jun 19 06:35:29 2015 @@ -288,7 +288,7 @@ <dependency> <groupId>org.apache.sling</groupId> <artifactId>org.apache.sling.launchpad.api</artifactId> - <version>1.1.0</version> + <version>1.1.1-SNAPSHOT</version> <scope>provided</scope> </dependency> <dependency> Modified: sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java?rev=1686363&r1=1686362&r2=1686363&view=diff ============================================================================== --- sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java (original) +++ sling/trunk/launchpad/base/src/main/java/org/apache/sling/launchpad/base/impl/DefaultStartupHandler.java Fri Jun 19 06:35:29 2015 @@ -31,6 +31,7 @@ import org.apache.felix.framework.Logger import org.apache.sling.launchpad.api.StartupHandler; import org.apache.sling.launchpad.api.StartupListener; import org.apache.sling.launchpad.api.StartupMode; +import org.apache.sling.launchpad.api.StartupService; import org.osgi.framework.Bundle; import org.osgi.framework.BundleContext; import org.osgi.framework.BundleEvent; @@ -38,6 +39,7 @@ import org.osgi.framework.BundleListener import org.osgi.framework.FrameworkEvent; import org.osgi.framework.FrameworkListener; import org.osgi.framework.ServiceReference; +import org.osgi.framework.ServiceRegistration; import org.osgi.service.startlevel.StartLevel; import org.osgi.util.tracker.ServiceTracker; import org.osgi.util.tracker.ServiceTrackerCustomizer; @@ -102,6 +104,9 @@ public class DefaultStartupHandler private volatile Object[] logService; + /** Registration of the startup service. */ + private volatile ServiceRegistration<StartupService> startupServiceReg; + /** * Constructor. * @param context Bundle context @@ -375,6 +380,16 @@ public class DefaultStartupHandler this.bundleContext.removeBundleListener(this); } this.bundleContext.removeFrameworkListener(this); + + // register startup service + this.startupServiceReg = this.bundleContext.registerService(StartupService.class, new StartupService() { + + @Override + public StartupMode getStartupMode() { + return startupMode; + } + + }, null); } /** Modified: sling/trunk/launchpad/base/src/main/resources/sling.properties URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/base/src/main/resources/sling.properties?rev=1686363&r1=1686362&r2=1686363&view=diff ============================================================================== --- sling/trunk/launchpad/base/src/main/resources/sling.properties (original) +++ sling/trunk/launchpad/base/src/main/resources/sling.properties Fri Jun 19 06:35:29 2015 @@ -168,7 +168,7 @@ org.osgi.framework.executionenvironment= org.osgi.framework.system.packages= \ ${osgi-core-packages}, \ ${osgi-compendium-services}, \ - org.apache.sling.launchpad.api;version=1.1.0, \ + org.apache.sling.launchpad.api;version=1.2.0, \ ${jre-${java.specification.version}} \ ${org.apache.sling.launcher.system.packages} Modified: sling/trunk/launchpad/builder/src/main/provisioning/sling.txt URL: http://svn.apache.org/viewvc/sling/trunk/launchpad/builder/src/main/provisioning/sling.txt?rev=1686363&r1=1686362&r2=1686363&view=diff ============================================================================== --- sling/trunk/launchpad/builder/src/main/provisioning/sling.txt (original) +++ sling/trunk/launchpad/builder/src/main/provisioning/sling.txt Fri Jun 19 06:35:29 2015 @@ -51,7 +51,7 @@ org.apache.sling/org.apache.sling.servlets.get/2.1.11-SNAPSHOT org.apache.sling/org.apache.sling.servlets.post/2.3.7-SNAPSHOT org.apache.sling/org.apache.sling.jcr.contentloader/2.1.11-SNAPSHOT - org.apache.sling/org.apache.sling.jcr.resource/2.5.0 + org.apache.sling/org.apache.sling.jcr.resource/2.5.1-SNAPSHOT org.apache.sling/org.apache.sling.bundleresource.impl/2.2.0 org.apache.sling/org.apache.sling.fsresource/1.1.4 org.apache.sling/org.apache.sling.launchpad.content/2.0.8