You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by hi...@apache.org on 2012/04/12 19:36:50 UTC
svn commit: r1325396 - in /ant/ivy/core/trunk: doc/osgi/
doc/samples/eclipse-plugin/ src/java/org/apache/ivy/ant/
src/java/org/apache/ivy/osgi/core/ src/java/org/apache/ivy/osgi/repo/
test/java/org/apache/ivy/osgi/obr/
Author: hibou
Date: Thu Apr 12 17:36:50 2012
New Revision: 1325396
URL: http://svn.apache.org/viewvc?rev=1325396&view=rev
Log:
Fix the example about managing an Eclipse plugin dependencies with Ivy
Modified:
ant/ivy/core/trunk/doc/osgi/eclipse-plugin.html
ant/ivy/core/trunk/doc/samples/eclipse-plugin/ivy.xml
ant/ivy/core/trunk/src/java/org/apache/ivy/ant/ConvertManifestTask.java
ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/OSGiManifestParser.java
ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptor.java
ant/ivy/core/trunk/test/java/org/apache/ivy/osgi/obr/OBRResolverTest.java
Modified: ant/ivy/core/trunk/doc/osgi/eclipse-plugin.html
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/doc/osgi/eclipse-plugin.html?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/doc/osgi/eclipse-plugin.html (original)
+++ ant/ivy/core/trunk/doc/osgi/eclipse-plugin.html Thu Apr 12 17:36:50 2012
@@ -39,6 +39,7 @@ In few steps, we will setup a build to c
<ol>
<li>download this <a href="../samples/eclipse-plugin/ivy.xml">ivy.xml<a>, this <a href="../samples/eclipse-plugin/ivysettings.xml">ivysettings.xml</a>, this <a href="../samples/eclipse-plugin/ivysettings.properties">ivysettings.properties</a>, this <a href="../samples/eclipse-plugin/build.xml">build.xml</a>, and put them into your plugin folder;</li>
<li>in the ivysettings.properties, specify the location of the plugins folder of your Eclipse target;</li>
+<li>in the ivy.xml, change the symbolic name declared in the extends element;</li>
<li><i>(optional)</i> by default the build.xml is expecting the sources to be in the <tt>src</tt> folder. You may want to edit it if it is not the case</li>
<li><i>(optional)</i> if Ivy is not in Ant's classpath, get the jar of <a href="../download.html">Apache Ivy</a> and edit the build.xml accordingly (see the comments at the begining of the file)</li>
</ol>
Modified: ant/ivy/core/trunk/doc/samples/eclipse-plugin/ivy.xml
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/doc/samples/eclipse-plugin/ivy.xml?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/doc/samples/eclipse-plugin/ivy.xml (original)
+++ ant/ivy/core/trunk/doc/samples/eclipse-plugin/ivy.xml Thu Apr 12 17:36:50 2012
@@ -18,8 +18,8 @@
under the License.
-->
<ivy-module version="2.2" xmlns:o="http://ant.apache.org/ivy/osgi">
- <info organisation="" module="myplugin">
- <extends organisation="" module="myplugin" revision="1.0.0.qualifier" location="META-INF/MANIFEST.MF" />
+ <info organisation="bundle" module="myplugin">
+ <extends organisation="bundle" module="com.acme.myplugin" revision="1.0.0.qualifier" location="META-INF/MANIFEST.MF" />
</info>
<configurations>
<conf name="compile" extends="default,embedded" description="Dependencies for the compilation" />
Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/ant/ConvertManifestTask.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/ant/ConvertManifestTask.java?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/ant/ConvertManifestTask.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/ant/ConvertManifestTask.java Thu Apr 12 17:36:50 2012
@@ -30,6 +30,7 @@ import org.apache.ivy.osgi.core.BundleIn
import org.apache.ivy.osgi.core.BundleInfoAdapter;
import org.apache.ivy.osgi.core.ExecutionEnvironmentProfileProvider;
import org.apache.ivy.osgi.core.ManifestParser;
+import org.apache.ivy.osgi.core.OSGiManifestParser;
import org.apache.ivy.plugins.parser.xml.XmlModuleDescriptorWriter;
import org.apache.tools.ant.BuildException;
@@ -83,7 +84,8 @@ public class ConvertManifestTask extends
} catch (ParseException e) {
throw new BuildException("Incorrect manifest file '" + manifest + "'", e);
}
- ModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(null, bundleInfo, profileProvider);
+ ModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(
+ OSGiManifestParser.getInstance(), null, bundleInfo, profileProvider);
try {
XmlModuleDescriptorWriter.write(md, ivyFile);
Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java Thu Apr 12 17:36:50 2012
@@ -43,6 +43,7 @@ import org.apache.ivy.osgi.util.Version;
import org.apache.ivy.osgi.util.VersionRange;
import org.apache.ivy.plugins.matcher.ExactOrRegexpPatternMatcher;
import org.apache.ivy.plugins.matcher.PatternMatcher;
+import org.apache.ivy.plugins.parser.ModuleDescriptorParser;
public class BundleInfoAdapter {
@@ -72,12 +73,13 @@ public class BundleInfoAdapter {
* uri to help build the absolute url if the bundle info has a relative uri.
* @param bundle
* @param profileProvider
+ * @param parser
* @return
* @throws ProfileNotFoundException
*/
- public static DefaultModuleDescriptor toModuleDescriptor(URI baseUri, BundleInfo bundle,
+ public static DefaultModuleDescriptor toModuleDescriptor(ModuleDescriptorParser parser, URI baseUri, BundleInfo bundle,
ExecutionEnvironmentProfileProvider profileProvider) throws ProfileNotFoundException {
- DefaultModuleDescriptor md = new DefaultModuleDescriptor(null, null);
+ DefaultModuleDescriptor md = new DefaultModuleDescriptor(parser, null);
md.addExtraAttributeNamespace("o", Ivy.getIvyHomeURL() + "osgi");
ModuleRevisionId mrid = asMrid(BundleInfo.BUNDLE_TYPE, bundle.getSymbolicName(), bundle.getVersion());
md.setResolvedPublicationDate(new Date());
Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/OSGiManifestParser.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/OSGiManifestParser.java?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/OSGiManifestParser.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/OSGiManifestParser.java Thu Apr 12 17:36:50 2012
@@ -68,7 +68,7 @@ public class OSGiManifestParser implemen
} catch (URISyntaxException e) {
throw new RuntimeException("Unsupported repository, resources names are not uris", e);
}
- return BundleInfoAdapter.toModuleDescriptor(null, bundleInfo, profileProvider);
+ return BundleInfoAdapter.toModuleDescriptor(this, null, bundleInfo, profileProvider);
}
public void toIvyFile(InputStream is, Resource res, File destFile, ModuleDescriptor md)
Modified: ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptor.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptor.java?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptor.java (original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/repo/RepoDescriptor.java Thu Apr 12 17:36:50 2012
@@ -30,6 +30,7 @@ import org.apache.ivy.osgi.core.BundleCa
import org.apache.ivy.osgi.core.BundleInfo;
import org.apache.ivy.osgi.core.BundleInfoAdapter;
import org.apache.ivy.osgi.core.ExecutionEnvironmentProfileProvider;
+import org.apache.ivy.osgi.core.OSGiManifestParser;
import org.apache.ivy.util.Message;
public class RepoDescriptor {
@@ -96,8 +97,8 @@ public class RepoDescriptor {
}
public void addBundle(BundleInfo bundleInfo) {
- DefaultModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(baseUri, bundleInfo,
- profileProvider);
+ DefaultModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(
+ OSGiManifestParser.getInstance(), baseUri, bundleInfo, profileProvider);
add(BundleInfo.BUNDLE_TYPE, bundleInfo.getSymbolicName(), md);
Iterator itCapability = bundleInfo.getCapabilities().iterator();
while (itCapability.hasNext()) {
Modified: ant/ivy/core/trunk/test/java/org/apache/ivy/osgi/obr/OBRResolverTest.java
URL: http://svn.apache.org/viewvc/ant/ivy/core/trunk/test/java/org/apache/ivy/osgi/obr/OBRResolverTest.java?rev=1325396&r1=1325395&r2=1325396&view=diff
==============================================================================
--- ant/ivy/core/trunk/test/java/org/apache/ivy/osgi/obr/OBRResolverTest.java (original)
+++ ant/ivy/core/trunk/test/java/org/apache/ivy/osgi/obr/OBRResolverTest.java Thu Apr 12 17:36:50 2012
@@ -48,6 +48,7 @@ import org.apache.ivy.core.settings.IvyS
import org.apache.ivy.osgi.core.BundleInfo;
import org.apache.ivy.osgi.core.BundleInfoAdapter;
import org.apache.ivy.osgi.core.ManifestParser;
+import org.apache.ivy.osgi.core.OSGiManifestParser;
import org.apache.ivy.osgi.repo.AbstractOSGiResolver.RequirementStrategy;
import org.apache.ivy.plugins.resolver.DependencyResolver;
import org.apache.ivy.plugins.resolver.DualResolver;
@@ -282,7 +283,8 @@ public class OBRResolverTest extends Tes
+ jarName));
BundleInfo bundleInfo = ManifestParser.parseManifest(in.getManifest());
bundleInfo.setUri(new File("test/test-repo/bundlerepo/" + jarName).toURI());
- DefaultModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(null, bundleInfo, null);
+ DefaultModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(
+ OSGiManifestParser.getInstance(), null, bundleInfo, null);
ResolveReport resolveReport = ivy.resolve(md,
new ResolveOptions().setConfs(new String[] {conf}).setOutputReport(false));
assertFalse("resolve failed " + resolveReport.getAllProblemMessages(),
@@ -313,7 +315,8 @@ public class OBRResolverTest extends Tes
+ jarName));
BundleInfo bundleInfo = ManifestParser.parseManifest(in.getManifest());
bundleInfo.setUri(new File("test/test-repo/bundlerepo/" + jarName).toURI());
- DefaultModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(null, bundleInfo, null);
+ DefaultModuleDescriptor md = BundleInfoAdapter.toModuleDescriptor(
+ OSGiManifestParser.getInstance(), null, bundleInfo, null);
ResolveReport resolveReport = ivy.resolve(md,
new ResolveOptions().setConfs(new String[] {conf}).setOutputReport(false));
assertTrue(resolveReport.hasError());