[jboss-svn-commits] JBL Code SVN: r32773 - in labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services: src/main/java and 15 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 6 17:27:25 EDT 2010


Author: diegoll
Date: 2010-05-06 17:27:24 -0400 (Thu, 06 May 2010)
New Revision: 32773

Added:
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/AssetsService.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/AssetsServiceImpl.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/LegacyProducer.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/RepositoryStartupService.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/annotations/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/annotations/Development.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/producers/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/producers/JCRRepositoryConfiguratorProducer.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/resources/META-INF/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/resources/META-INF/beans.xml
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceArquillianTest.java
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceTest.java
Modified:
   labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/pom.xml
Log:
Initial cdi example usage

Modified: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/pom.xml
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/pom.xml	2010-05-06 20:56:42 UTC (rev 32772)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/pom.xml	2010-05-06 21:27:24 UTC (rev 32773)
@@ -2,20 +2,60 @@
   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>
-      <artifactId>drools</artifactId>
-      <groupId>org.drools</groupId>
-      <version>5.1.0.SNAPSHOT</version>
-   </parent>
+    <artifactId>drools</artifactId>
+    <groupId>org.drools</groupId>
+    <version>5.1.0.SNAPSHOT</version>
+  </parent>
   <artifactId>drools-repository-services</artifactId>
   <packaging>jar</packaging>
   <name>Drools :: Repository Services</name>
 
   <dependencies>
     <dependency>
+      <groupId>org.drools</groupId>
+      <artifactId>drools-ide-common</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.drools</groupId>
+      <artifactId>drools-repository</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>javax.enterprise</groupId>
+      <artifactId>cdi-api</artifactId>
+      <version>1.0</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.inject</groupId>
+      <artifactId>javax.inject</artifactId>
+      <version>1</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.annotation</groupId>
+      <artifactId>jsr250-api</artifactId>
+      <version>1.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.jboss.arquillian</groupId>
+      <artifactId>arquillian-junit</artifactId>
+      <version>1.0.0-SNAPSHOT</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.jboss.arquillian.container</groupId>
+      <artifactId>arquillian-weld-embedded</artifactId>
+      <version>1.0.0-SNAPSHOT</version>
+    </dependency>
+    <dependency>
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>4.7</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>org.jboss.weld</groupId>
+      <artifactId>weld-se</artifactId>
+      <version>1.0.1-Final</version>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
 </project>

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/AssetsService.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/AssetsService.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/AssetsService.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,9 @@
+package org.drools.repository.services;
+
+import org.drools.repository.AssetItem;
+
+public interface AssetsService {
+
+	public AssetItem loadAsset(String uuid);
+
+}

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/AssetsServiceImpl.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/AssetsServiceImpl.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/AssetsServiceImpl.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,16 @@
+package org.drools.repository.services.internal;
+
+import org.drools.repository.AssetItem;
+import org.drools.repository.RulesRepository;
+import org.drools.repository.services.AssetsService;
+
+public class AssetsServiceImpl implements AssetsService {
+
+	private RulesRepository ruleRepository;
+
+	public AssetItem loadAsset(String uuid) {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+}

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/LegacyProducer.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/LegacyProducer.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/LegacyProducer.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,16 @@
+package org.drools.repository.services.internal;
+
+import javax.enterprise.inject.Produces;
+import javax.inject.Singleton;
+
+import org.drools.repository.JCRRepositoryConfigurator;
+import org.drools.repository.JackrabbitRepositoryConfigurator;
+
+public class LegacyProducer {
+
+	@Produces
+	@Singleton
+	public JCRRepositoryConfigurator getJCRRepositoryConfigurator() {
+		return new JackrabbitRepositoryConfigurator();
+	}
+}

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/RepositoryStartupService.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/RepositoryStartupService.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/RepositoryStartupService.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,39 @@
+package org.drools.repository.services.internal;
+/*
+ * Copyright 2005 JBoss Inc
+ *
+ * Licensed 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.
+ */
+
+import javax.inject.Inject;
+import javax.inject.Named;
+import javax.inject.Singleton;
+
+import org.drools.repository.JCRRepositoryConfigurator;
+
+
+ at Singleton
+ at Named("repositoryConfiguration")
+public class RepositoryStartupService {
+
+	private JCRRepositoryConfigurator configurator;
+
+	@Inject
+	public RepositoryStartupService(JCRRepositoryConfigurator configurator) {
+		this.configurator = configurator;
+	}
+
+	public JCRRepositoryConfigurator getConfigurator() {
+		return this.configurator;
+	}
+}
\ No newline at end of file

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/annotations/Development.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/annotations/Development.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/annotations/Development.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,19 @@
+package org.drools.repository.services.internal.annotations;
+
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.enterprise.inject.Alternative;
+import javax.enterprise.inject.Stereotype;
+
+ at Alternative @Stereotype
+ at Target( { TYPE, METHOD, FIELD })
+ at Retention(RUNTIME)
+public @interface Development {
+
+}

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/producers/JCRRepositoryConfiguratorProducer.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/producers/JCRRepositoryConfiguratorProducer.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/java/org/drools/repository/services/internal/producers/JCRRepositoryConfiguratorProducer.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,19 @@
+package org.drools.repository.services.internal.producers;
+
+import javax.enterprise.inject.Produces;
+
+import org.drools.repository.JCRRepositoryConfigurator;
+import org.drools.repository.JackrabbitRepositoryConfigurator;
+import org.drools.repository.services.internal.annotations.Development;
+
+public class JCRRepositoryConfiguratorProducer {
+
+	static
+	@Produces
+//	@JackRabbit
+	@Development
+	JCRRepositoryConfigurator produceJackrabbitRepositoryConfigurator() {
+		return new JackrabbitRepositoryConfigurator();
+	}
+
+}

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/resources/META-INF/beans.xml
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/resources/META-INF/beans.xml	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/main/resources/META-INF/beans.xml	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+   The contents of this file is permitted to be empty.
+   The schema definition is provided for your convenience.
+-->
+<beans xmlns="http://java.sun.com/xml/ns/javaee"
+   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+   xsi:schemaLocation="
+      http://java.sun.com/xml/ns/javaee 
+      http://java.sun.com/xml/ns/javaee/beans_1_0.xsd">
+      <alternatives>
+        <stereotype>org.drools.repository.services.internal.annotations.Development</stereotype>
+      </alternatives>
+</beans>

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceArquillianTest.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceArquillianTest.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceArquillianTest.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,50 @@
+package org.drools.repository.services.tests;
+
+import static org.junit.Assert.assertNotNull;
+
+import javax.enterprise.inject.spi.BeanManager;
+import javax.inject.Inject;
+
+import org.drools.repository.services.internal.RepositoryStartupService;
+import org.drools.repository.services.internal.annotations.Development;
+import org.drools.repository.services.internal.producers.JCRRepositoryConfiguratorProducer;
+import org.jboss.arquillian.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.ArchivePaths;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.spec.JavaArchive;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+ at RunWith(Arquillian.class)
+public class RepositoryStartupServiceArquillianTest {
+
+	@Deployment
+	public static JavaArchive createTestArchive() {
+		return ShrinkWrap.create("test.jar", JavaArchive.class)
+			.addClasses(RepositoryStartupService.class, 
+					JCRRepositoryConfiguratorProducer.class,
+					Development.class)
+		    .addManifestResource(RepositoryStartupServiceArquillianTest.class.getResource("/META-INF/beans.xml"), 
+		    		ArchivePaths.create("beans.xml"));
+	}
+
+	@Inject
+	RepositoryStartupService repositoryStartupService;
+	
+	@Inject
+	BeanManager beanManager;
+
+	/*
+	 * @Inject GreetingManager greetingManager;
+	 * 
+	 * 
+	 * @Inject BeanManager beanManager;
+	 */
+
+	@Test
+	public void basicInjectionTest() {
+		assertNotNull(beanManager);
+		assertNotNull(repositoryStartupService.getConfigurator());
+	}
+}

Added: labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceTest.java
===================================================================
--- labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceTest.java	                        (rev 0)
+++ labs/jbossrules/branches/drools_repo_services_diega_baunax/drools-repository-services/src/test/java/org/drools/repository/services/tests/RepositoryStartupServiceTest.java	2010-05-06 21:27:24 UTC (rev 32773)
@@ -0,0 +1,26 @@
+package org.drools.repository.services.tests;
+
+import junit.framework.Assert;
+
+import org.drools.repository.services.internal.RepositoryStartupService;
+import org.jboss.weld.environment.se.Weld;
+import org.jboss.weld.environment.se.WeldContainer;
+import org.junit.Before;
+import org.junit.Test;
+
+public class RepositoryStartupServiceTest {
+
+	private WeldContainer weld;
+
+	@Before
+	public void setUp() throws Exception {
+		weld = new Weld().initialize();
+	}
+
+	@Test
+	public void testGetConfigurator() {
+		RepositoryStartupService repositoryStartupService = weld.instance().select(RepositoryStartupService.class).get();
+		Assert.assertNotNull(repositoryStartupService);
+		Assert.assertNotNull(repositoryStartupService.getConfigurator());
+	}
+}



More information about the jboss-svn-commits mailing list