harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Kleymenov" <kleyme...@gmail.com>
Subject Re: [general] Managing dependencies: Antlib for Maven 2.0, Ivy or Ant only (i.e. Harmony specific way)?
Date Thu, 12 Apr 2007 11:33:14 GMT
Hi Stepan,

The approach to an external dependencies sharing was suggested as an
additional feature of the new BT Infrastructure (BTI) for demonstration
purposes only. It acts as an example of a flexibility, modularity and
extensibility of a new Build and Testing Framework.

The new BTI was designed in such a way that every functional subpart of
the infrastructure is implemented in a different source file. In case of
external dependencies sharing means this source file is
scripts/download.xml. You can substitute it with your implementation.
In this case we can test your approach to implementation of this means.
Now there are several (10 and more) Test Suites integrated under
new BTI and some of them use external dependencies sharing feature of
the framework. So it can be a good real-usage test for you.

What's regarding current implementation suggested in new BTI: it was
made in an implementation independent manner. I.e. you can use different
libraries instead of current one. Even maven or something else. The main
idea of an approach is:

  1. User describes its dependencies in a specified format. The
     main piece of description data are: URL from
     where to get the resource, md5 to made the process more secure,
     and some switches describing how to operate on resource - extract,
     rename, filter and so on.

  2. Framework processes these descriptions and provides the properties
     with a specified format of the name (ext.resource-name.location)
     pointing to the described resource.

In other words it makes the correspondence between input data (URL) and
output data (Local Path to resource). And it is not important what
functionality makes such a correspondence. You can use even hardcoded table
listing the correspondences between "URL" and "Local Path to Resource".
Or, I can suggest using of hardcoded table of "MD5" -> "Path", i.e. MD5
values acting as an primary indexes of resource database :)
It's so cool I've no words :)

So I want to summarize my message with the following:
    - Current implementation provided with new BTI is raw, but can be
      substituted with much more mature (I even have the point for
    - It can be great to have your implementation made under new BTI.

Thank you,

View raw message