Skip to content

Commit

Permalink
Create GradleJavaProjectType
Browse files Browse the repository at this point in the history
  • Loading branch information
adam-wyluda committed Aug 17, 2013
1 parent 3716360 commit 6f9759b
Show file tree
Hide file tree
Showing 2 changed files with 65 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
/*
* Copyright 2013 Red Hat, Inc. and/or its affiliates.
*
* Licensed under the Eclipse Public License version 1.0, available at
* http://www.eclipse.org/legal/epl-v10.html
*/
package org.jboss.forge.addon.gradle.projects;

import java.util.ArrayList;
import java.util.List;

import org.jboss.forge.addon.gradle.projects.facets.GradleDependencyFacet;
import org.jboss.forge.addon.gradle.projects.facets.GradleJavaSourceFacet;
import org.jboss.forge.addon.gradle.projects.facets.GradleMetadataFacet;
import org.jboss.forge.addon.gradle.projects.facets.GradlePackagingFacet;
import org.jboss.forge.addon.gradle.projects.facets.GradleResourceFacet;
import org.jboss.forge.addon.projects.ProjectFacet;
import org.jboss.forge.addon.projects.ProjectType;
import org.jboss.forge.addon.ui.wizard.UIWizardStep;

/**
* @author Adam Wyłuda
*/
public class GradleJavaProjectType implements ProjectType
{
@Override
public String getType()
{
return "Gradle - Java";
}

@Override
public Class<? extends UIWizardStep> getSetupFlow()
{
// TODO Setup flow for Gradle Java project
return null;
}

@Override
public Iterable<Class<? extends ProjectFacet>> getRequiredFacets()
{
List<Class<? extends ProjectFacet>> result = new ArrayList<Class<? extends ProjectFacet>>();
result.add(GradleFacetImpl.class);
result.add(GradleMetadataFacet.class);
result.add(GradlePackagingFacet.class);
result.add(GradleDependencyFacet.class);
result.add(GradleResourceFacet.class);
result.add(GradleJavaSourceFacet.class);
return result;
}

@Override
public String toString()
{
return "java";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import org.jboss.forge.addon.facets.constraints.RequiresFacet;
import org.jboss.forge.addon.gradle.projects.GradleFacet;
import org.jboss.forge.addon.gradle.projects.model.GradleModel;
import org.jboss.forge.addon.gradle.projects.model.GradlePluginType;
import org.jboss.forge.addon.gradle.projects.model.GradleSourceDirectory;
import org.jboss.forge.addon.gradle.projects.model.GradleSourceSet;
import org.jboss.forge.addon.parser.java.facets.JavaSourceFacet;
Expand Down Expand Up @@ -43,6 +44,13 @@ public boolean install()
{
folder.mkdirs();
}

GradleModel model = getFaceted().getFacet(GradleFacet.class).getModel();
if (!model.hasPlugin(GradlePluginType.JAVA.getClazz()))
{
model.applyPlugin(GradlePluginType.JAVA.getShortName());
getFaceted().getFacet(GradleFacet.class).setModel(model);
}
}
return isInstalled();
}
Expand Down

0 comments on commit 6f9759b

Please sign in to comment.