package org.easysoa.runtime.maven; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.List; import org.easysoa.runtime.api.AbstractDeployable; /** * Maven artifact * * @author mkalam-alami * */ public class MavenDeployable extends AbstractDeployable<MavenID> { public MavenDeployable(MavenID id, InputStream is, InputStream pomIs) throws IOException { super(id, is); // Fetch dependencies by exploring POM MavenDeployableDescriptorProvider mavenPOMDescriptorProvider = new MavenDeployableDescriptorProvider(new InputStreamReader(pomIs)); List<MavenDeployableDescriptor> deployableDescriptors = mavenPOMDescriptorProvider.getDeployableDescriptors(); this.dependencies = deployableDescriptors.get(0).getDependencies(); pomIs.close(); } @Override public String getFileName() { return id.getArtifactId() + "-" + id.getVersion() + ".jar"; // TODO POM projects? } }