Author: bdekruijff at gmail.com Date: Fri Nov 12 00:06:49 2010 New Revision: 415
Log: AMDATU-141 Split off cassandra storage from tenant service Added: trunk/amdatu-core/cassandra-tenantstore/ (props changed) trunk/amdatu-core/cassandra-tenantstore/pom.xml trunk/amdatu-core/cassandra-tenantstore/src/ trunk/amdatu-core/cassandra-tenantstore/src/main/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/osgi/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/osgi/Activator.java trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/TenantColumnFamilyProvider.java trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/TenantStorageProviderCassandraImpl.java trunk/amdatu-core/cassandra-tenantstore/src/test/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/TenantColumnFamilyProviderTest.java trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/TenantStorageProviderCassandraImplTest.java Removed: trunk/amdatu-core/tenant/src/main/java/org/amdatu/core/tenant/dao/ Modified: trunk/amdatu-core/pom.xml trunk/amdatu-core/tenant/src/main/java/org/amdatu/core/tenant/osgi/Activator.java trunk/amdatu-release/pom.xml trunk/src/main/resources/conf/felix-config.properties Added: trunk/amdatu-core/cassandra-tenantstore/pom.xml ============================================================================== --- (empty file) +++ trunk/amdatu-core/cassandra-tenantstore/pom.xml Fri Nov 12 00:06:49 2010 @@ -0,0 +1,60 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.amdatu</groupId> + <artifactId>org.amdatu.core</artifactId> + <version>0.0.6-SNAPSHOT</version> + </parent> + <groupId>org.amdatu.core.cassandra</groupId> + <artifactId>tenantstore</artifactId> + <packaging>bundle</packaging> + <name>Amdatu Core - Tenant Cassandra Store</name> + <description>Provides an implementation of the Tenant store</description> + + <dependencies> + <dependency> + <groupId>org.amdatu.core</groupId> + <artifactId>tenant</artifactId> + <version>${platform.version}</version> + <scope>provided</scope> + <type>bundle</type> + </dependency> + <dependency> + <groupId>org.amdatu.core.cassandra</groupId> + <artifactId>application</artifactId> + <version>${platform.version}</version> + <scope>provided</scope> + <type>bundle</type> + </dependency> + <dependency> + <groupId>org.amdatu.core.cassandra</groupId> + <artifactId>persistencemanager</artifactId> + <scope>provided</scope> + <type>bundle</type> + </dependency> + <dependency> + <groupId>org.amdatu.core.cassandra</groupId> + <artifactId>listener</artifactId> + <scope>provided</scope> + <type>bundle</type> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.felix</groupId> + <artifactId>maven-bundle-plugin</artifactId> + <configuration> + <instructions> + <Bundle-Activator>org.amdatu.core.cassandra.tenantstore.osgi.Activator</Bundle-Activator> + <Bundle-SymbolicName>org.amdatu.core.cassandra.tenantstore</Bundle-SymbolicName> + </instructions> + </configuration> + </plugin> + + </plugins> + </build> +</project> Added: trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/osgi/Activator.java ============================================================================== --- (empty file) +++ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/osgi/Activator.java Fri Nov 12 00:06:49 2010 @@ -0,0 +1,68 @@ +/* +/* + Copyright (C) 2010 Amdatu.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package org.amdatu.core.cassandra.tenantstore.osgi; + +import org.amdatu.core.cassandra.application.CassandraDaemonService; +import org.amdatu.core.cassandra.listener.ColumnFamilyAvailable; +import org.amdatu.core.cassandra.listener.ColumnFamilyProvider; +import org.amdatu.core.cassandra.persistencemanager.CassandraPersistenceManager; +import org.amdatu.core.cassandra.tenantstore.service.TenantColumnFamilyProvider; +import org.amdatu.core.cassandra.tenantstore.service.TenantStorageProviderCassandraImpl; +import org.amdatu.core.tenant.TenantStorageProvider; +import org.apache.felix.dm.DependencyActivatorBase; +import org.apache.felix.dm.DependencyManager; +import org.osgi.framework.BundleContext; + +/** + * This class represents the OSGi activator for the Cassandra tenantstore service + */ +public class Activator extends DependencyActivatorBase { + + @Override + public void init(BundleContext context, DependencyManager manager) throws Exception { + // Create and register the Tenant ColumnFamilyProvider + manager.add( + createComponent() + .setImplementation(TenantColumnFamilyProvider.class) + .setInterface(ColumnFamilyProvider.class.getName(), null) + .add(createServiceDependency().setService(CassandraDaemonService.class).setRequired(true))); + + // The filter for the Tenant ColumnFamily being available + String tenantFilter = TenantColumnFamilyProvider.TENANT_AVAILABLE_FILTER; + String keyspaceFilter = + "(" + CassandraPersistenceManager.KEYSPACE_AWARE_KEY + "=" + + CassandraPersistenceManager.DEFAULT_KEYSPACE + ")"; + + // Create and register the Cassandra Tenant Storage + manager.add( + createComponent() + .setImplementation(TenantStorageProviderCassandraImpl.class) + .setInterface(TenantStorageProvider.class.getName(), null) + .add( + createServiceDependency().setService(CassandraPersistenceManager.class, keyspaceFilter) + .setRequired(true)) + .add( + createServiceDependency().setService(ColumnFamilyAvailable.class, tenantFilter).setRequired( + true))); + + } + + @Override + public void destroy(BundleContext context, DependencyManager manager) throws Exception { + } +} Added: trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/TenantColumnFamilyProvider.java ============================================================================== --- (empty file) +++ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/TenantColumnFamilyProvider.java Fri Nov 12 00:06:49 2010 @@ -0,0 +1,51 @@ +/* + Copyright (C) 2010 Amdatu.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package org.amdatu.core.cassandra.tenantstore.service; + +import org.amdatu.core.cassandra.listener.ColumnFamilyAvailable; +import org.amdatu.core.cassandra.listener.ColumnFamilyDefinition; +import org.amdatu.core.cassandra.listener.ColumnFamilyDefinition.ColumnType; +import org.amdatu.core.cassandra.listener.ColumnFamilyDefinition.CompareType; +import org.amdatu.core.cassandra.listener.ColumnFamilyProvider; +import org.amdatu.core.cassandra.persistencemanager.CassandraPersistenceManager; + +/** + * This class provides the ColumnFamily 'Tenant' for the default keyspace. + * @author ivol + */ +public class TenantColumnFamilyProvider implements ColumnFamilyProvider { + /** + * Name of the Tenant ColumnFamily. + */ + public final static String CF_TENANT = "Tenant"; + + /** + * Filter name to use when defining ColumnFamilyAvailable service dependencies for this particular + * ColumnFamily + */ + public final static String TENANT_AVAILABLE_FILTER = "(" + ColumnFamilyAvailable.FILTER_NAME + "=" + CF_TENANT + ")"; + + public ColumnFamilyDefinition[] getColumnFamilies() { + return new ColumnFamilyDefinition[]{ + new ColumnFamilyDefinition( + CF_TENANT, + new String[]{CassandraPersistenceManager.DEFAULT_KEYSPACE}, + ColumnType.SUPER, + CompareType.BYTESTYPE, + CompareType.BYTESTYPE)}; + } +} Added: trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/TenantStorageProviderCassandraImpl.java ============================================================================== --- (empty file) +++ trunk/amdatu-core/cassandra-tenantstore/src/main/java/org/amdatu/core/cassandra/tenantstore/service/TenantStorageProviderCassandraImpl.java Fri Nov 12 00:06:49 2010 @@ -0,0 +1,96 @@ +/* + Copyright (C) 2010 Amdatu.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package org.amdatu.core.cassandra.tenantstore.service; + +import static org.amdatu.core.cassandra.tenantstore.service.TenantColumnFamilyProvider.CF_TENANT; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.amdatu.core.cassandra.persistencemanager.CassandraException; +import org.amdatu.core.cassandra.persistencemanager.CassandraPersistenceManager; +import org.amdatu.core.tenant.TenantEntity; +import org.amdatu.core.tenant.TenantStorageException; +import org.amdatu.core.tenant.TenantStorageProvider; + +public class TenantStorageProviderCassandraImpl implements TenantStorageProvider { + // Name of the supercolumns + private static final String SC_BASIC = "Basic"; + private static final String SC_PROPERTIES = "Properties"; + + // Name of the columns + private static final String C_NAME = "name"; + + // Services injected by the Felix dependency manager + private volatile CassandraPersistenceManager m_pm; + + public List<TenantEntity> getAll() throws TenantStorageException { + try { + List<TenantEntity> tenants = new ArrayList<TenantEntity>(); + List<String> rowKeys = m_pm.getRowKeys(CF_TENANT); + if (rowKeys != null) { + for (String rowKey : rowKeys) { + TenantEntity tenant = getById(rowKey); + tenants.add(tenant); + } + } + return tenants; + } + catch (CassandraException e) { + throw new TenantStorageException(e); + } + } + + public TenantEntity getById(String rowKey) throws TenantStorageException { + try { + if (!m_pm.exists(CF_TENANT, rowKey)) { + return null; + } + Map<String, Map<String, String>> values = m_pm.getSuperStringValues(CF_TENANT, rowKey); + Map<String, String> basic = values.get(SC_BASIC); + Map<String, String> properties = values.get(SC_PROPERTIES); + String name = basic.get(C_NAME); + return new TenantEntity(rowKey, name, properties); + } + catch (CassandraException e) { + throw new TenantStorageException(e); + } + } + + public void store(TenantEntity tenant) throws TenantStorageException { + try { + String id = tenant.getId(); + m_pm.setStringValue(CF_TENANT, id, SC_BASIC, C_NAME, tenant.getName()); + for (String key : tenant.getProperties().keySet()) { + m_pm.setStringValue(CF_TENANT, id, SC_PROPERTIES, key, tenant.getProperties().get(key)); + } + } + catch (CassandraException e) { + throw new TenantStorageException(e); + } + } + + public void delete(TenantEntity tenant) throws TenantStorageException { + try { + m_pm.deleteRow(CF_TENANT, tenant.getId()); + } + catch (CassandraException e) { + throw new TenantStorageException(e); + } + } +} Added: trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/TenantColumnFamilyProviderTest.java ============================================================================== --- (empty file) +++ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/TenantColumnFamilyProviderTest.java Fri Nov 12 00:06:49 2010 @@ -0,0 +1,33 @@ +/* + Copyright (C) 2010 Amdatu.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package org.amdatu.core.cassandra.tenantstore.service; + +import org.amdatu.core.cassandra.listener.ColumnFamilyDefinition; +import org.junit.Assert; +import org.junit.Test; + + +public class TenantColumnFamilyProviderTest { + + @Test + public void testWeReturnOneDefinition(){ + TenantColumnFamilyProvider tcfp = new TenantColumnFamilyProvider(); + ColumnFamilyDefinition[] cfds = tcfp.getColumnFamilies(); + Assert.assertEquals(1, cfds.length); + + } +} Added: trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/TenantStorageProviderCassandraImplTest.java ============================================================================== --- (empty file) +++ trunk/amdatu-core/cassandra-tenantstore/src/test/java/org/amdatu/core/cassandra/tenantstore/service/TenantStorageProviderCassandraImplTest.java Fri Nov 12 00:06:49 2010 @@ -0,0 +1,31 @@ +/* + Copyright (C) 2010 Amdatu.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package org.amdatu.core.cassandra.tenantstore.service; + +import org.amdatu.core.tenant.TenantStorageProvider; +import org.junit.Assert; +import org.junit.Test; + +public class TenantStorageProviderCassandraImplTest { + + // TODO we need a CassandraPersistenceManager mock to do serious testing + @Test + public void dummyTest() { + TenantStorageProvider tsp = new TenantStorageProviderCassandraImpl(); + Assert.assertNotNull(tsp); + } +} Modified: trunk/amdatu-core/pom.xml ============================================================================== --- trunk/amdatu-core/pom.xml (original) +++ trunk/amdatu-core/pom.xml Fri Nov 12 00:06:49 2010 @@ -57,6 +57,7 @@ <module>cassandra-application</module> <module>cassandra-listener</module> <module>cassandra-persistencemanager</module> + <module>cassandra-tenantstore</module> <module>cassandra-useradminstore</module> <module>config-templates</module> <module>config-filebased</module> Modified: trunk/amdatu-core/tenant/src/main/java/org/amdatu/core/tenant/osgi/Activator.java ============================================================================== --- trunk/amdatu-core/tenant/src/main/java/org/amdatu/core/tenant/osgi/Activator.java (original) +++ trunk/amdatu-core/tenant/src/main/java/org/amdatu/core/tenant/osgi/Activator.java Fri Nov 12 00:06:49 2010 @@ -17,14 +17,8 @@ */ package org.amdatu.core.tenant.osgi; -import org.amdatu.core.cassandra.application.CassandraDaemonService; -import org.amdatu.core.cassandra.listener.ColumnFamilyAvailable; -import org.amdatu.core.cassandra.listener.ColumnFamilyProvider; -import org.amdatu.core.cassandra.persistencemanager.CassandraPersistenceManager; import org.amdatu.core.tenant.TenantManagementService; import org.amdatu.core.tenant.TenantStorageProvider; -import org.amdatu.core.tenant.dao.TenantColumnFamilyProvider; -import org.amdatu.core.tenant.dao.TenantStorageProviderCassandraImpl; import org.amdatu.core.tenant.service.TenantManagementServiceImpl; import org.apache.felix.dm.DependencyActivatorBase; import org.apache.felix.dm.DependencyManager; @@ -39,27 +33,6 @@ public class Activator extends DependencyActivatorBase { @Override public void init(BundleContext context, DependencyManager manager) throws Exception { - // Create and register the Tenant ColumnFamilyProvider - manager.add( - createComponent() - .setImplementation(TenantColumnFamilyProvider.class) - .setInterface(ColumnFamilyProvider.class.getName(), null) - .add(createServiceDependency().setService(CassandraDaemonService.class).setRequired(true))); - - // The filter for the Tenant ColumnFamily being available - String tenantFilter = TenantColumnFamilyProvider.TENANT_AVAILABLE_FILTER; - String keyspaceFilter = - "(" + CassandraPersistenceManager.KEYSPACE_AWARE_KEY + "=" - + CassandraPersistenceManager.DEFAULT_KEYSPACE + ")"; - - // Create and register the Cassandra Tenant Storage - manager.add( - createComponent() - .setImplementation(TenantStorageProviderCassandraImpl.class) - .setInterface(TenantStorageProvider.class.getName(), null) - .add(createServiceDependency().setService(CassandraPersistenceManager.class, keyspaceFilter).setRequired(true)) - .add(createServiceDependency().setService(ColumnFamilyAvailable.class, tenantFilter).setRequired(true))); - // Create and register the Tenant management service manager.add( Modified: trunk/amdatu-release/pom.xml ============================================================================== --- trunk/amdatu-release/pom.xml (original) +++ trunk/amdatu-release/pom.xml Fri Nov 12 00:06:49 2010 @@ -57,6 +57,13 @@ <type>bundle</type> </dependency> <dependency> + <groupId>org.amdatu.core.cassandra</groupId> + <artifactId>tenantstore</artifactId> + <version>${platform.version}</version> + <scope>runtime</scope> + <type>bundle</type> + </dependency> + <dependency> <groupId>org.amdatu.core.config</groupId> <artifactId>filebased</artifactId> <version>${platform.version}</version> Modified: trunk/src/main/resources/conf/felix-config.properties ============================================================================== --- trunk/src/main/resources/conf/felix-config.properties (original) +++ trunk/src/main/resources/conf/felix-config.properties Fri Nov 12 00:06:49 2010 @@ -76,10 +76,50 @@ # to install and start when the framework starts. The ending numerical # component is the target start level. Any number of these properties # may be specified for different start levels. -felix.auto.start.1=reference:file:amdatu-system/org.apache.felix.configadmin-1.2.4.jar reference:file:amdatu-system/org.apache.felix.dependencymanager-3.0.0-SNAPSHOT.jar reference:file:amdatu-system/org.apache.felix.eventadmin-1.2.2.jar reference:file:amdatu-system/org.apache.felix.fileinstall-3.0.0.jar reference:file:amdatu-system/org.apache.felix.log-1.0.0.jar reference:file:amdatu-system/org.apache.felix.main-2.0.5.jar reference:file:amdatu-system/org.apache.felix.metatype-1.0.4.jar reference:file:amdatu-system/org.apache.felix.shell.tui-1.4.1.jar reference:file:amdatu-system/org.apache.felix.shell-1.4.2.jar reference:file:amdatu-system/org.apache.felix.webconsole-3.1.2.jar reference:file:amdatu-system/org.apache.sling.commons.mime-2.1.4.jar reference:file:amdatu-system/org.apache.sling.commons.osgi-2.0.6.jar reference:file:amdatu-system/org.osgi.compendium-1.0.0.jar reference:file:amdatu-system/org.osgi.core-1.0.0.jar reference:file:amdatu-system/pax-useradmin-service-0.0.1-SNAPSHOT.jar reference:file:amdatu-system/org.apache.felix.http.jetty-${org.apache.felix.http.version}.jar reference:file:amdatu-system/org.apache.felix.http.whiteboard-${org.apache.felix.http.version}.jar reference:file:amdatu-system/pax-swissbox-core-${pax.swissbox.version}.jar reference:file:amdatu-system/ops4j-base-lang-1.2.2.jar reference:file:amdatu-system/org.apache.felix.scr-1.6.0.jar -felix.auto.start.2=reference:file:amdatu-core/org.amdatu.core.config.filebased-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.cassandra.application-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.cassandra.listener-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.cassandra.persistencemanager-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.loghandler-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.tenant-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.config.templates-${platform.version}.jar reference:file:amdatu-core/org.amdatu.core.cassandra.useradminstore-${platform.version}.jar reference:file:amdatu-application/org.amdatu.web.rest.jaxrs-${platform.version}.jar reference:file:amdatu-application/org.amdatu.web.rest.wink-${platform.version}.jar -felix.auto.start.10=reference:file:amdatu-application/org.amdatu.opensocial.shindig-${platform.version}.jar reference:file:amdatu-application/org.amdatu.opensocial.profile-${platform.version}.jar reference:file:amdatu-application/org.amdatu.authorization.login.service-${platform.version}.jar reference:file:amdatu-application/org.amdatu.web.httpcontext-${platform.version}.jar reference:file:amdatu-application/org.amdatu.semanticweb.sesame-${platform.version}.jar reference:file:amdatu-application/org.amdatu.opensocial.dashboard-${platform.version}.jar reference:file:amdatu-application/org.amdatu.opensocial.gadgetmanagement-${platform.version}.jar reference:file:amdatu-application/org.amdatu.web.jsp-${platform.version}.jar reference:file:amdatu-application/org.amdatu.semanticweb.sparqlendpoint-${platform.version}.jar reference:file:amdatu-application/org.amdatu.authorization.login.gadget-${platform.version}.jar -felix.auto.start.20=reference:file:amdatu-examples/org.amdatu.example.friends.gadget-${platform.version}.jar reference:file:amdatu-examples/org.amdatu.example.course.gadget-${platform.version}.jar reference:file:amdatu-examples/org.amdatu.example.course.service-${platform.version}.jar +felix.auto.start.1=reference:file:amdatu-system/org.apache.felix.configadmin-1.2.4.jar \ + reference:file:amdatu-system/org.apache.felix.dependencymanager-3.0.0-SNAPSHOT.jar \ + reference:file:amdatu-system/org.apache.felix.eventadmin-1.2.2.jar \ + reference:file:amdatu-system/org.apache.felix.fileinstall-3.0.0.jar \ + reference:file:amdatu-system/org.apache.felix.log-1.0.0.jar \ + reference:file:amdatu-system/org.apache.felix.main-2.0.5.jar \ + reference:file:amdatu-system/org.apache.felix.metatype-1.0.4.jar \ + reference:file:amdatu-system/org.apache.felix.shell.tui-1.4.1.jar \ + reference:file:amdatu-system/org.apache.felix.shell-1.4.2.jar \ + reference:file:amdatu-system/org.apache.felix.webconsole-3.1.2.jar \ + reference:file:amdatu-system/org.apache.sling.commons.mime-2.1.4.jar \ + reference:file:amdatu-system/org.apache.sling.commons.osgi-2.0.6.jar \ + reference:file:amdatu-system/org.osgi.compendium-1.0.0.jar \ + reference:file:amdatu-system/org.osgi.core-1.0.0.jar \ + reference:file:amdatu-system/pax-useradmin-service-0.0.1-SNAPSHOT.jar \ + reference:file:amdatu-system/org.apache.felix.http.jetty-${org.apache.felix.http.version}.jar \ + reference:file:amdatu-system/org.apache.felix.http.whiteboard-${org.apache.felix.http.version}.jar \ + reference:file:amdatu-system/pax-swissbox-core-${pax.swissbox.version}.jar \ + reference:file:amdatu-system/ops4j-base-lang-1.2.2.jar \ + reference:file:amdatu-system/org.apache.felix.scr-1.6.0.jar +felix.auto.start.2=reference:file:amdatu-core/org.amdatu.core.config.filebased-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.cassandra.application-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.cassandra.listener-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.cassandra.persistencemanager-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.loghandler-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.tenant-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.config.templates-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.cassandra.tenantstore-${platform.version}.jar \ + reference:file:amdatu-core/org.amdatu.core.cassandra.useradminstore-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.web.rest.jaxrs-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.web.rest.wink-${platform.version}.jar +felix.auto.start.10=reference:file:amdatu-application/org.amdatu.opensocial.shindig-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.opensocial.profile-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.authorization.login.service-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.web.httpcontext-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.semanticweb.sesame-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.opensocial.dashboard-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.opensocial.gadgetmanagement-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.web.jsp-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.semanticweb.sparqlendpoint-${platform.version}.jar \ + reference:file:amdatu-application/org.amdatu.authorization.login.gadget-${platform.version}.jar +felix.auto.start.20=reference:file:amdatu-examples/org.amdatu.example.friends.gadget-${platform.version}.jar \ + reference:file:amdatu-examples/org.amdatu.example.course.gadget-${platform.version}.jar \ + reference:file:amdatu-examples/org.amdatu.example.course.service-${platform.version}.jar # Sets the initial start level of the framework upon startup. org.osgi.framework.startlevel.beginning=30
