The SCA Assembly Model Spec v1.1 states the following in section 11.2.1.

11.2.1 SCA Artifact Resolution
3458 When a contribution contains a reference to an artifact from a
namespace that is declared in an import
3459 statement of the contribution, if the SCA artifact resolution mechanism
is used to resolve the artifact, the
3460 SCA runtime MUST resolve artifacts in the following order:

3461 1. from the locations identified by the import statement(s) for the
namespace. Locations MUST NOT
3462 be searched recursively in order to locate artifacts (i.e. only a
one-level search is performed).

3463 2. from the contents of the contribution itself. [ASM12023]

Currently, the ModelResolver does not consider the location attribute while
resolving the artifacts.

I believe we need to replace the existing method in our
org.apache.tuscany.sca.contribution.resolver.ModelResolver
code...

<T> T resolveModel(Class<T> modelClass, T unresolved, ProcessorContext
context);

with...

<T> T resolveModel(Class<T> modelClass, T unresolved, String
contributionLocaiton, ProcessorContext context);

to make this work as specified in the specs.

Please let me know, if there are any concerns over this approach. Thanks.

-- 
Thanks & Regards,
Ramkumar Ramalingam

Reply via email to