Skip to content

Commit

Permalink
Extracted out new modules: Inject, JPA and Render.
Browse files Browse the repository at this point in the history
  • Loading branch information
nmihajlovski committed Apr 20, 2016
1 parent a797f82 commit 56139cd
Show file tree
Hide file tree
Showing 110 changed files with 521 additions and 144 deletions.
3 changes: 3 additions & 0 deletions pom.xml
Expand Up @@ -82,6 +82,9 @@
<module>rapidoid-commons</module> <module>rapidoid-commons</module>
<module>rapidoid-test-commons</module> <module>rapidoid-test-commons</module>
<module>rapidoid-buffer</module> <module>rapidoid-buffer</module>
<module>rapidoid-jpa</module>
<module>rapidoid-inject</module>
<module>rapidoid-render</module>
<module>rapidoid-net</module> <module>rapidoid-net</module>
<module>rapidoid-http-fast</module> <module>rapidoid-http-fast</module>
<module>rapidoid-http-client</module> <module>rapidoid-http-client</module>
Expand Down
6 changes: 0 additions & 6 deletions rapidoid-commons/pom.xml
Expand Up @@ -59,12 +59,6 @@
<version>${validation-api.version}</version> <version>${validation-api.version}</version>
<optional>true</optional> <optional>true</optional>
</dependency> </dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
<optional>true</optional>
</dependency>
<dependency> <dependency>
<groupId>javax.inject</groupId> <groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId> <artifactId>javax.inject</artifactId>
Expand Down
3 changes: 1 addition & 2 deletions rapidoid-commons/src/main/java/org/rapidoid/ctx/Ctxs.java
Expand Up @@ -4,7 +4,6 @@
import org.rapidoid.annotation.Authors; import org.rapidoid.annotation.Authors;
import org.rapidoid.annotation.Since; import org.rapidoid.annotation.Since;
import org.rapidoid.commons.Coll; import org.rapidoid.commons.Coll;
import org.rapidoid.jpa.JPAPersisterProvider;
import org.rapidoid.log.Log; import org.rapidoid.log.Log;
import org.rapidoid.u.U; import org.rapidoid.u.U;


Expand Down Expand Up @@ -34,7 +33,7 @@ public class Ctxs extends RapidoidThing {


private static final ThreadLocal<Ctx> CTXS = new ThreadLocal<Ctx>(); private static final ThreadLocal<Ctx> CTXS = new ThreadLocal<Ctx>();


private static volatile PersisterProvider persisterProvider = new JPAPersisterProvider(); private static volatile PersisterProvider persisterProvider;


private Ctxs() { private Ctxs() {
} }
Expand Down
4 changes: 4 additions & 0 deletions rapidoid-commons/src/main/java/org/rapidoid/util/Msc.java
Expand Up @@ -737,6 +737,10 @@ public static boolean hasJPA() {
return Cls.exists("javax.persistence.Entity"); return Cls.exists("javax.persistence.Entity");
} }


public static boolean hasRapidoidJPA() {
return Cls.exists("org.rapidoid.jpa.JPA");
}

public static boolean hasInject() { public static boolean hasInject() {
return Cls.exists("javax.inject.Inject"); return Cls.exists("javax.inject.Inject");
} }
Expand Down
8 changes: 5 additions & 3 deletions rapidoid-commons/src/main/resources/rapidoid-classes.txt
Expand Up @@ -355,6 +355,7 @@ org.rapidoid.insight.PercentMeasure
org.rapidoid.insight.StatsMeasure org.rapidoid.insight.StatsMeasure
org.rapidoid.integrate.Integrate org.rapidoid.integrate.Integrate
org.rapidoid.integrate.MustacheViewRenderer org.rapidoid.integrate.MustacheViewRenderer
org.rapidoid.integrate.SpringIntegrator
org.rapidoid.ioc.BeanProvider org.rapidoid.ioc.BeanProvider
org.rapidoid.ioc.ClassMetadata org.rapidoid.ioc.ClassMetadata
org.rapidoid.ioc.IoC org.rapidoid.ioc.IoC
Expand All @@ -363,6 +364,7 @@ org.rapidoid.ioc.IoCContextChanges
org.rapidoid.ioc.IoCContextImpl org.rapidoid.ioc.IoCContextImpl
org.rapidoid.ioc.IoCContextWrapper org.rapidoid.ioc.IoCContextWrapper
org.rapidoid.ioc.IoCState org.rapidoid.ioc.IoCState
org.rapidoid.ioc.OptionalJPAUtil
org.rapidoid.io.CustomizableClassLoader org.rapidoid.io.CustomizableClassLoader
org.rapidoid.io.IO org.rapidoid.io.IO
org.rapidoid.io.Res org.rapidoid.io.Res
Expand Down Expand Up @@ -469,6 +471,9 @@ org.rapidoid.pool.SynchronizedArrayPool
org.rapidoid.pool.SynchronizedPool org.rapidoid.pool.SynchronizedPool
org.rapidoid.pool.ThreadSafeArrayPool org.rapidoid.pool.ThreadSafeArrayPool
org.rapidoid.RapidoidThing org.rapidoid.RapidoidThing
org.rapidoid.reload.ClassReloader
org.rapidoid.reload.OptionalJPAUtil
org.rapidoid.reload.Reload
org.rapidoid.render.Getter org.rapidoid.render.Getter
org.rapidoid.render.RapidoidTemplate org.rapidoid.render.RapidoidTemplate
org.rapidoid.render.Render org.rapidoid.render.Render
Expand Down Expand Up @@ -523,7 +528,6 @@ org.rapidoid.sql.NoConnectionPool
org.rapidoid.test.TestCommons org.rapidoid.test.TestCommons
org.rapidoid.util.AbstractMapImpl org.rapidoid.util.AbstractMapImpl
org.rapidoid.util.Bufs org.rapidoid.util.Bufs
org.rapidoid.util.ClassReloader
org.rapidoid.util.CommonWords org.rapidoid.util.CommonWords
org.rapidoid.util.Constants org.rapidoid.util.Constants
org.rapidoid.util.D org.rapidoid.util.D
Expand All @@ -532,15 +536,13 @@ org.rapidoid.util.MapEntry
org.rapidoid.util.Msc org.rapidoid.util.Msc
org.rapidoid.util.NullOutputStream org.rapidoid.util.NullOutputStream
org.rapidoid.util.RapidoidProcess org.rapidoid.util.RapidoidProcess
org.rapidoid.util.Reload
org.rapidoid.util.Resetable org.rapidoid.util.Resetable
org.rapidoid.util.Role org.rapidoid.util.Role
org.rapidoid.util.RuntimeInfo org.rapidoid.util.RuntimeInfo
org.rapidoid.util.SimpleHashTable org.rapidoid.util.SimpleHashTable
org.rapidoid.util.SimpleList org.rapidoid.util.SimpleList
org.rapidoid.util.SimpleMap org.rapidoid.util.SimpleMap
org.rapidoid.util.SimplePersisterProvider org.rapidoid.util.SimplePersisterProvider
org.rapidoid.util.SpringIntegrator
org.rapidoid.util.SuccessException org.rapidoid.util.SuccessException
org.rapidoid.util.Usage org.rapidoid.util.Usage
org.rapidoid.u.U org.rapidoid.u.U
Expand Down
12 changes: 0 additions & 12 deletions rapidoid-commons/src/test/java/org/rapidoid/cls/ClsTest.java
Expand Up @@ -4,10 +4,6 @@
import org.rapidoid.annotation.*; import org.rapidoid.annotation.*;
import org.rapidoid.commons.Dates; import org.rapidoid.commons.Dates;
import org.rapidoid.http.HttpVerb; import org.rapidoid.http.HttpVerb;
import org.rapidoid.ioc.Logger;
import org.rapidoid.ioc.db.Database;
import org.rapidoid.ioc.db.Table;
import org.rapidoid.ioc.db.Transactor;
import org.rapidoid.test.AbstractCommonsTest; import org.rapidoid.test.AbstractCommonsTest;
import org.rapidoid.test.TestCommons; import org.rapidoid.test.TestCommons;
import org.rapidoid.u.U; import org.rapidoid.u.U;
Expand Down Expand Up @@ -44,10 +40,6 @@ public class ClsTest extends AbstractCommonsTest {
@Test @Test
public void testIsBeanType() { public void testIsBeanType() {
isTrue(Cls.isBeanType(Foo.class)); isTrue(Cls.isBeanType(Foo.class));
isTrue(Cls.isBeanType(Logger.class));
isTrue(Cls.isBeanType(Database.class));
isTrue(Cls.isBeanType(Table.class));
isTrue(Cls.isBeanType(Transactor.class));


isFalse(Cls.isBeanType(Object.class)); isFalse(Cls.isBeanType(Object.class));
isFalse(Cls.isBeanType(HttpVerb.class)); isFalse(Cls.isBeanType(HttpVerb.class));
Expand All @@ -60,10 +52,6 @@ public void testIsBeanType() {
@Test @Test
public void testIsRapidoidClass() { public void testIsRapidoidClass() {
isFalse(Cls.isRapidoidClass(Foo.class)); isFalse(Cls.isRapidoidClass(Foo.class));
isFalse(Cls.isRapidoidClass(Logger.class));
isFalse(Cls.isRapidoidClass(Database.class));
isFalse(Cls.isRapidoidClass(Table.class));
isFalse(Cls.isRapidoidClass(Transactor.class));
isFalse(Cls.isRapidoidClass(Object.class)); isFalse(Cls.isRapidoidClass(Object.class));
isFalse(Cls.isRapidoidClass(Runnable.class)); isFalse(Cls.isRapidoidClass(Runnable.class));
isFalse(Cls.isRapidoidClass(ArrayList.class)); isFalse(Cls.isRapidoidClass(ArrayList.class));
Expand Down
Expand Up @@ -25,7 +25,6 @@
import org.rapidoid.config.Conf; import org.rapidoid.config.Conf;
import org.rapidoid.data.JSON; import org.rapidoid.data.JSON;
import org.rapidoid.io.Res; import org.rapidoid.io.Res;
import org.rapidoid.ioc.IoC;
import org.rapidoid.log.Log; import org.rapidoid.log.Log;
import org.rapidoid.log.LogLevel; import org.rapidoid.log.LogLevel;


Expand All @@ -37,7 +36,6 @@ public void openContext() {
Conf.reset(); Conf.reset();
Conf.setPath(getTestName()); Conf.setPath(getTestName());
Log.setLogLevel(LogLevel.INFO); Log.setLogLevel(LogLevel.INFO);
IoC.defaultContext().reset();
Env.profiles().clear(); Env.profiles().clear();
Env.profiles().add("default"); Env.profiles().add("default");
} }
Expand All @@ -46,21 +44,4 @@ protected void verify(String name, Object actual) {
super.verifyCase(name, JSON.prettify(actual), name); super.verifyCase(name, JSON.prettify(actual), name);
} }


protected void verifyIoC() {
verify("ioc", IoC.defaultContext().info());
}

protected void verifyIoC(String name) {
verify(name, IoC.defaultContext().info());
}

protected void noIocBean(Class<?> clazz) {
try {
IoC.singleton(clazz);
fail("Expected IoC exception for class: " + clazz);
} catch (RuntimeException e) {
// ok
}
}

} }
15 changes: 15 additions & 0 deletions rapidoid-http-fast/pom.xml
Expand Up @@ -17,6 +17,21 @@
<artifactId>rapidoid-net</artifactId> <artifactId>rapidoid-net</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid-render</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid-jpa</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid-inject</artifactId>
<version>${project.version}</version>
</dependency>
<dependency> <dependency>
<groupId>org.apache.httpcomponents</groupId> <groupId>org.apache.httpcomponents</groupId>
<artifactId>httpasyncclient</artifactId> <artifactId>httpasyncclient</artifactId>
Expand Down
Expand Up @@ -10,6 +10,7 @@
import org.rapidoid.config.Conf; import org.rapidoid.config.Conf;
import org.rapidoid.config.Config; import org.rapidoid.config.Config;
import org.rapidoid.config.RapidoidInitializer; import org.rapidoid.config.RapidoidInitializer;
import org.rapidoid.ctx.Ctxs;
import org.rapidoid.data.JSON; import org.rapidoid.data.JSON;
import org.rapidoid.http.*; import org.rapidoid.http.*;
import org.rapidoid.http.customize.Customization; import org.rapidoid.http.customize.Customization;
Expand All @@ -22,15 +23,16 @@
import org.rapidoid.ioc.IoCContext; import org.rapidoid.ioc.IoCContext;
import org.rapidoid.job.Jobs; import org.rapidoid.job.Jobs;
import org.rapidoid.jpa.JPA; import org.rapidoid.jpa.JPA;
import org.rapidoid.jpa.JPAPersisterProvider;
import org.rapidoid.lambda.NParamLambda; import org.rapidoid.lambda.NParamLambda;
import org.rapidoid.log.Log; import org.rapidoid.log.Log;
import org.rapidoid.net.Server; import org.rapidoid.net.Server;
import org.rapidoid.reload.Reload;
import org.rapidoid.scan.ClasspathUtil; import org.rapidoid.scan.ClasspathUtil;
import org.rapidoid.security.Roles; import org.rapidoid.security.Roles;
import org.rapidoid.u.U; import org.rapidoid.u.U;
import org.rapidoid.util.Constants; import org.rapidoid.util.Constants;
import org.rapidoid.util.Msc; import org.rapidoid.util.Msc;
import org.rapidoid.util.Reload;


import java.lang.annotation.Annotation; import java.lang.annotation.Annotation;
import java.lang.reflect.Method; import java.lang.reflect.Method;
Expand Down Expand Up @@ -75,6 +77,10 @@ public void run() {
JSON.warmup(); JSON.warmup();
} }
}); });

if (Ctxs.getPersisterProvider() == null) {
Ctxs.setPersisterProvider(new JPAPersisterProvider());
}
} }


private static volatile String mainClassName; private static volatile String mainClassName;
Expand Down
50 changes: 50 additions & 0 deletions rapidoid-inject/pom.xml
@@ -0,0 +1,50 @@
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid</artifactId>
<version>5.1.0-SNAPSHOT</version>
</parent>

<artifactId>rapidoid-inject</artifactId>
<packaging>jar</packaging>
<description>Rapidoid Inject</description>

<dependencies>

<dependency>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid-commons</artifactId>
<version>${project.version}</version>
</dependency>

<!-- OPTIONAL -->

<dependency>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid-jpa</artifactId>
<version>${project.version}</version>
<optional>true</optional>
</dependency>

<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
<optional>true</optional>
</dependency>

<!-- TEST -->

<dependency>
<groupId>org.rapidoid</groupId>
<artifactId>rapidoid-test-commons</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>

</dependencies>

</project>
Expand Up @@ -2,7 +2,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down
Expand Up @@ -11,7 +11,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down
Expand Up @@ -8,7 +8,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down
Expand Up @@ -9,7 +9,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down
Expand Up @@ -8,7 +8,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down
Expand Up @@ -8,16 +8,12 @@
import org.rapidoid.commons.Env; import org.rapidoid.commons.Env;
import org.rapidoid.config.Conf; import org.rapidoid.config.Conf;
import org.rapidoid.config.Config; import org.rapidoid.config.Config;
import org.rapidoid.jpa.SharedContextAwareEntityManagerProxy;
import org.rapidoid.jpa.SharedEntityManagerFactoryProxy;
import org.rapidoid.lambda.Lmbd; import org.rapidoid.lambda.Lmbd;
import org.rapidoid.lambda.Mapper; import org.rapidoid.lambda.Mapper;
import org.rapidoid.log.Log; import org.rapidoid.log.Log;
import org.rapidoid.u.U; import org.rapidoid.u.U;
import org.rapidoid.util.Msc; import org.rapidoid.util.Msc;


import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.util.Iterator; import java.util.Iterator;
Expand All @@ -27,7 +23,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down Expand Up @@ -272,16 +268,18 @@ private boolean isClass(Object obj) {


private Object provideSpecialInstance(Class<?> type, String name) { private Object provideSpecialInstance(Class<?> type, String name) {


String cls = type.getName();

if (type.equals(IoCContext.class)) { if (type.equals(IoCContext.class)) {
return U.or(wrapper, this); return U.or(wrapper, this);
} }


if (type.equals(EntityManagerFactory.class)) { if (cls.equals("javax.persistence.EntityManager") && Msc.hasRapidoidJPA()) {
return SharedEntityManagerFactoryProxy.INSTANCE; return OptionalJPAUtil.getSharedContextAwareEntityManagerProxy();
} }


if (type.equals(EntityManager.class)) { if (cls.equals("javax.persistence.EntityManagerFactory") && Msc.hasRapidoidJPA()) {
return SharedContextAwareEntityManagerProxy.INSTANCE; return OptionalJPAUtil.getSharedEntityManagerFactoryProxy();
} }


return null; return null;
Expand Down
Expand Up @@ -10,7 +10,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down
Expand Up @@ -13,7 +13,7 @@


/* /*
* #%L * #%L
* rapidoid-commons * rapidoid-inject
* %% * %%
* Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors * Copyright (C) 2014 - 2016 Nikolche Mihajlovski and contributors
* %% * %%
Expand Down

0 comments on commit 56139cd

Please sign in to comment.