Skip to content

Commit

Permalink
Spring Security Plugin Isolated
Browse files Browse the repository at this point in the history
Upgrade to 1.3.3

Spring version update
  • Loading branch information
Tejas authored and TejasM committed Aug 8, 2013
1 parent fee5ea0 commit 7b39223
Show file tree
Hide file tree
Showing 10 changed files with 924 additions and 555 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,4 @@ bin/
.gitignore.swp
docs/reference/src/main/docbook/en-US/version_info.xml
.idea
.forge_settings
252 changes: 129 additions & 123 deletions pom.xml
Original file line number Diff line number Diff line change
@@ -1,127 +1,133 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-spring</artifactId>
<version>1.0.1-SNAPSHOT</version>
<properties>
<forge.test.version>1.2.0.Final</forge.test.version>
<metawidget.version>2.4</metawidget.version>
<mvel.version>2.1.Beta7</mvel.version>
<forge.api.version>1.2.0.Final</forge.api.version>
</properties>
<dependencyManagement>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-spring</artifactId>
<version>1.0.1-SNAPSHOT</version>
<properties>
<forge.test.version>1.3.3.Final</forge.test.version>
<metawidget.version>2.4</metawidget.version>
<mvel.version>2.1.Beta7</mvel.version>
<forge.api.version>1.3.3.Final</forge.api.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.1.0.Final</version>
<scope>provided</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.1.0.Final</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-shell-api</artifactId>
<version>${forge.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.seam.render</groupId>
<artifactId>seam-render</artifactId>
<version>1.0.0.Alpha6</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mvel</groupId>
<artifactId>mvel2</artifactId>
<version>${mvel.version}</version>
</dependency>
<dependency>
<groupId>org.metawidget.modules</groupId>
<artifactId>metawidget-all</artifactId>
<version>${metawidget.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.metawidget.modules.static.spring</groupId>
<artifactId>metawidget-static-spring</artifactId>
<version>${metawidget.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.java.dev.inflector</groupId>
<artifactId>inflector</artifactId>
<version>0.7.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-api</artifactId>
<version>${forge.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-javaee-api</artifactId>
<version>${forge.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-faces</artifactId>
<version>${forge.api.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-plugins</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-javaee-impl</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-test-harness</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-shell</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.shrinkwrap.descriptors</groupId>
<artifactId>shrinkwrap-descriptors-impl</artifactId>
<version>1.1.0-beta-1</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-shell-api</artifactId>
<version>${forge.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.seam.render</groupId>
<artifactId>seam-render</artifactId>
<version>1.0.0.Alpha6</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mvel</groupId>
<artifactId>mvel2</artifactId>
<version>${mvel.version}</version>
</dependency>
<dependency>
<groupId>org.metawidget.modules</groupId>
<artifactId>metawidget-all</artifactId>
<version>${metawidget.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.metawidget.modules.static.spring</groupId>
<artifactId>metawidget-static-spring</artifactId>
<version>${metawidget.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.java.dev.inflector</groupId>
<artifactId>inflector</artifactId>
<version>0.7.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-api</artifactId>
<version>${forge.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-javaee-api</artifactId>
<version>${forge.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-faces</artifactId>
<version>${forge.api.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-scaffold-plugins</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-javaee-impl</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-test-harness</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-shell</artifactId>
<version>${forge.test.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<repositories>
<repository>
<id>JBOSS_NEXUS</id>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</repository>
</repositories>
<build>
<finalName>plugin-spring-mvc</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
<repositories>
<repository>
<id>JBOSS_NEXUS</id>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</repository>
</repositories>
<build>
<finalName>plugin-spring-mvc</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,6 @@ public interface SpringFacet extends Facet
*/

FileResource<?> getMVCContextFile(String targetDir);

/**
* Get the servlet XML context file for the specified targetDir of the application.
*/

FileResource<?> getSecurityContextFile(String targetDir);

/**
* Get this application's currently configured servlet mappings from the web.xml
Expand Down Expand Up @@ -113,6 +107,4 @@ public interface SpringFacet extends Facet
*/

Resource<?> getResourceForWebPath(String path);

boolean installSecurity();
}
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,9 @@ public class SpringFacetImpl extends BaseFacet implements SpringFacet

private ServletMappingHelper servletMappingHelper = new ServletMappingHelper();

private static final String SPRING_VERSION = "3.1.1.RELEASE";
private static final String SPRING_VERSION = "3.2.3.RELEASE";
private static final String SPRING_DISPATCHER_SERVLET = "org.springframework.web.servlet.DispatcherServlet";

private static final Dependency SPRING_ASM = DependencyBuilder.create("org.springframework:spring-asm:${spring.version}");

private static final Dependency SPRING_BEANS = DependencyBuilder.create("org.springframework:spring-beans:${spring.version}");

private static final Dependency SPRING_CONTEXT = DependencyBuilder.create("org.springframework:spring-context:${spring.version}");
Expand All @@ -75,12 +73,6 @@ public class SpringFacetImpl extends BaseFacet implements SpringFacet
private static final Dependency SPRING_WEB_MVC = DependencyBuilder.create("org.springframework:spring-webmvc:${spring.version}");

private static final Dependency JAVA_VALIDATION = DependencyBuilder.create("javax.validation:validation-api");

private static final Dependency SPRING_SECURITY = DependencyBuilder.create("org.springframework.security:spring-security-core:${spring.version}");

private static final Dependency SPRING_SECURITY_CONFIG = DependencyBuilder.create("org.springframework.security:spring-security-config:${spring.version}");

private static final Dependency SPRING_SECURITY_WEB = DependencyBuilder.create("org.springframework.security:spring-security-web:${spring.version}");

@Inject
public SpringFacetImpl(final DependencyInstaller installer)
Expand Down Expand Up @@ -141,43 +133,10 @@ public boolean install()

return true;
}

@Override
public boolean installSecurity()
{
for (Dependency requirement : getRequiredSecurityDependencies())
{
if (!this.installer.isInstalled(project, requirement))
{
DependencyFacet deps = project.getFacet(DependencyFacet.class);

if (!deps.hasDirectManagedDependency(JAVAEE6))
{
this.installer.installManaged(project, JAVAEE6);
}

if (requirement.getGroupId().equals("org.springframework"))
{
deps.setProperty("spring.version", SPRING_VERSION);
}

if (!requirement.equals(JAVAEE6))
{
deps.addDirectDependency(requirement);
}
}
}

return true;
}

private List<Dependency> getRequiredSecurityDependencies() {
return Arrays.asList(SPRING_SECURITY, SPRING_SECURITY_CONFIG, SPRING_SECURITY_WEB);
}

protected List<Dependency> getRequiredDependencies()
{
return Arrays.asList(SPRING_ASM, SPRING_BEANS, SPRING_CONTEXT, SPRING_CONTEXT_SUPPORT,
return Arrays.asList(SPRING_BEANS, SPRING_CONTEXT, SPRING_CONTEXT_SUPPORT,
SPRING_CORE, SPRING_EXPRESSION, SPRING_ORM, SPRING_TX, SPRING_WEB, SPRING_WEB_MVC, JAVA_VALIDATION);
}

Expand Down Expand Up @@ -226,35 +185,6 @@ public FileResource<?> getMVCContextFile(String targetDir)
return web.getWebResource(filename);
}
}

@Override
public FileResource<?> getSecurityContextFile(String targetDir)
{
WebResourceFacet web = project.getFacet(WebResourceFacet.class);

if (targetDir.equals("/") || targetDir.isEmpty())
{
MetadataFacet meta = project.getFacet(MetadataFacet.class);

return web.getWebResource("WEB-INF/" + meta.getProjectName().replace(' ', '-').toLowerCase() + "-security-context.xml");
}
else
{
while (targetDir.startsWith("/"))
{
targetDir = targetDir.substring(1);
}

while (targetDir.endsWith("/"))
{
targetDir = targetDir.substring(0, targetDir.length()-1);
}

String filename = "WEB-INF/" + targetDir.replace('/', '-').toLowerCase() + "-security-context.xml";

return web.getWebResource(filename);
}
}

@Override
public List<String> getSpringServletMappings()
Expand Down
Loading

0 comments on commit 7b39223

Please sign in to comment.