</plugins>
</build>
<dependencies>
- <!-- SLC Agent -->
+ <!-- Base -->
<dependency>
<groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.core</artifactId>
- <version>1.1.12-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.support.simple</artifactId>
- <version>1.1.12-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.support.ant</artifactId>
+ <artifactId>org.argeo.slc.dep.minimal</artifactId>
<version>1.1.12-SNAPSHOT</version>
+ <type>pom</type>
</dependency>
+
+ <!-- SLC Libs -->
<dependency>
<groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.support.jcr</artifactId>
+ <artifactId>org.argeo.slc.lib.repo</artifactId>
<version>1.1.12-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.support.equinox</artifactId>
+ <artifactId>org.argeo.slc.lib.jcr</artifactId>
<version>1.1.12-SNAPSHOT</version>
</dependency>
- <!-- SLC Agent Modules -->
+ <!-- Extensions -->
<dependency>
<groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.agent</artifactId>
- <version>1.1.12-SNAPSHOT</version>
- </dependency>
- <dependency>
- <groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.agent.jcr</artifactId>
+ <artifactId>org.argeo.slc.support.simple</artifactId>
<version>1.1.12-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.node.jackrabbit</artifactId>
+ <artifactId>org.argeo.slc.support.ant</artifactId>
<version>1.1.12-SNAPSHOT</version>
</dependency>
<!-- Core -->
<include>org.argeo.tp:org.aspectj.runtime</include>
<include>org.argeo.tp:org.aspectj.weaver</include>
+ <include>org.argeo.tp:net.sf.cglib</include>
<!-- Simple -->
<include>org.argeo.tp:org.tmatesoft.svn</include>
<include>org.argeo.tp:org.redline_rpm</include>
<artifactId>org.argeo.slc.support.osgi</artifactId>
<version>1.1.12-SNAPSHOT</version>
</dependency>
+ <dependency>
+ <groupId>org.argeo.slc</groupId>
+ <artifactId>org.argeo.slc.support.equinox</artifactId>
+ <version>1.1.12-SNAPSHOT</version>
+ </dependency>
<dependency>
<groupId>org.argeo.slc</groupId>
<artifactId>org.argeo.slc.agent</artifactId>
org.eclipse.ui.workbench
argeo.osgi.bundles=\
-${user.home}/.slc/modules;in=*/*,\
-/etc/slc-rcp/modules;in=*,\
+${user.home}/.slc/modules;in=**,\
+/etc/slc-rcp/modules;in=**,\
/usr/share/slc/lib;in=*.jar,\
/usr/share/osgi;in=*.jar,\
/usr/share/osgi/eclipse;in=*.jar,\
#!/bin/sh
+JAVA_CMD=/usr/lib/jvm/jre-1.6.0/bin/java
+JAVA_OPTS="-client -Xmx256m"
+
+SLC_HOME_DIR=${HOME}/.slc/
+if [ -f $SLC_HOME_DIR/settings.sh ];then
+ . $SLC_HOME_DIR/settings.sh
+fi
+
if [ -d /usr/lib64 ];
then
LIB_BASE=/usr/lib64
ECLIPSE_LAUNCHER=$LIB_BASE/eclipse/plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
INSTALL_DIR=/usr/share/osgi/rcp
-UI_DIR=~/.slc/rcp
-DATA_DIR=$UI_DIR/data
-CONF_DIR=$UI_DIR/conf
+SLC_HOME_DIR=~/.slc
+DATA_DIR=$SLC_HOME_DIR/data
+CONF_DIR=$SLC_HOME_DIR/conf
-mkdir -p $UI_DIR/modules
+mkdir -p $SLC_HOME_DIR/modules
if [ ! -f $CONF_DIR/config.ini ];
then
#!/bin/sh
-JAVA_CMD=/usr/lib/jvm/java-1.6.0/bin/java
+JAVA_CMD=/usr/lib/jvm/jre-1.6.0/bin/java
JAVA_OPTS="-client -Xmx256m"
SLC_HOME_DIR=${HOME}/.slc/
fi
OSGI_INSTALL_AREA=/usr/share/osgi/boot
-OSGI_FRAMEWORK=$OSGI_INSTALL_AREA/org.eclipse.osgi.jar
-OSGI_BOOT=$OSGI_INSTALL_AREA/org.argeo.osgi.boot.jar
-SLC_LAUNCHER=$OSGI_INSTALL_AREA/org.argeo.slc.launcher.jar
ARGEO_OSGI_BUNDLES="$SLC_HOME_DIR/modules;in=**;ex=**/.git/**;ex=**/.svn/**,/etc/slc-cl/modules;in=**;ex=**/.git/**;ex=**/.svn/**,/usr/share/osgi;in=*.jar"
+for i in "${OSGI_INSTALL_AREA}"/*.jar
+ do
+ CLASSPATH="$CLASSPATH:$i"
+ done
+
$JAVA_CMD $JAVA_OPTS \
- "-Dargeo.osgi.bundle=$ARGEO_OSGI_BUNDLES" \
- -cp $OSGI_FRAMEWORK:$OSGI_BOOT \
- -jar $SLC_LAUNCHER "$@"
+ "-Dargeo.osgi.bundles=$ARGEO_OSGI_BUNDLES" \
+ -cp "$CLASSPATH" \
+ org.argeo.slc.cli.SlcMain "$@"
\ No newline at end of file
<version>1.1.12-SNAPSHOT</version>
<type>pom</type>
</dependency>
- <dependency>
- <groupId>org.argeo.slc</groupId>
- <artifactId>org.argeo.slc.dep.backend</artifactId>
- <version>1.1.12-SNAPSHOT</version>
- <type>pom</type>
- <optional>true</optional>
- </dependency>
</dependencies>
</project>
\r
<!-- SERVICES -->\r
<service ref="modulesManager" interface="org.argeo.slc.execution.ExecutionModulesManager" />\r
+\r
+ <!-- LABEL -->\r
+ <beans:bean class="org.argeo.slc.osgi.deploy.OsgiModuleLabel">\r
+ <beans:property name="bundleContext" ref="bundleContext" />\r
+ </beans:bean>\r
</beans:beans>
\ No newline at end of file
</service>\r
\r
<service ref="mavenProxyService" interface="org.argeo.slc.repo.maven.proxy.MavenProxyService" />\r
+\r
+ <!-- LABEL -->\r
+ <beans:bean class="org.argeo.slc.osgi.deploy.OsgiModuleLabel">\r
+ <beans:property name="bundleContext" ref="bundleContext" />\r
+ </beans:bean>\r
</beans:beans>\r
\r
<!-- <reference id="mavenRepositorySystem" interface="org.sonatype.aether.RepositorySystem" -->\r
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.argeo.slc</groupId>
<relativePath>..</relativePath>
</parent>
<artifactId>org.argeo.slc.server.repo</artifactId>
- <name>SLC Repo Services</name>
+ <name>SLC Repo</name>
<build>
<plugins>
<plugin>
<module>runtime</module>
<module>modules</module>
<module>plugins</module>
- <module>dep</module>
<module>lib</module>
+ <module>dep</module>
<module>archetypes</module>
<module>dist</module>
<module>demo</module>
import org.argeo.osgi.boot.OsgiBoot;
import org.osgi.framework.BundleContext;
-import org.osgi.framework.BundleException;
import org.osgi.framework.ServiceReference;
import org.osgi.framework.launch.Framework;
import org.osgi.framework.launch.FrameworkFactory;
*/
protected static File findSlcDir(File currentDir) {
File slcDir = new File(currentDir, slcDirName);
+ // covers the use case of running from the home directory
if (slcDir.exists() && slcDir.isDirectory())
return slcDir;
File parentDir = currentDir.getParentFile();
<relativePath>..</relativePath>
</parent>
<artifactId>org.argeo.slc.repo</artifactId>
- <name>SLC Repository</name>
+ <name>SLC Repo Runtime</name>
<build>
<plugins>
<plugin>
--- /dev/null
+package org.argeo.slc.osgi.deploy;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.Constants;
+
+/** Logs the version of an OSGi bundle. */
+public class OsgiModuleLabel {
+ private final static Log log = LogFactory.getLog(OsgiModuleLabel.class);
+
+ private Bundle bundle;
+
+ public OsgiModuleLabel() {
+ }
+
+ /** Sets without logging. */
+ public OsgiModuleLabel(Bundle bundle) {
+ this.bundle = bundle;
+ }
+
+ /**
+ * Retrieved bundle from a bundle context and logs it. Typically to be set
+ * as a Spring bean.
+ */
+ public void setBundleContext(BundleContext bundleContext) {
+ this.bundle = bundleContext.getBundle();
+ log.info(msg());
+ }
+
+ public String msg() {
+ String name = bundle.getHeaders().get(Constants.BUNDLE_NAME).toString();
+ String symbolicName = bundle.getSymbolicName();
+ String version = bundle.getVersion().toString();
+ return name + " v" + version + " (" + symbolicName + ")";
+ }
+}