Author: djencks
Date: Tue Jan 25 13:30:16 2005
New Revision: 126427

URL: http://svn.apache.org/viewcvs?view=rev&rev=126427
Log:
If a dependency is missing, let us know immediately, not when a class can't be 
loaded
Modified:
   
geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java

Modified: 
geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java
Url: 
http://svn.apache.org/viewcvs/geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java?view=diff&rev=126427&p1=geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java&r1=126426&p2=geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java&r2=126427
==============================================================================
--- 
geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java
    (original)
+++ 
geronimo/trunk/modules/service-builder/src/java/org/apache/geronimo/deployment/service/ServiceConfigBuilder.java
    Tue Jan 25 13:30:16 2005
@@ -53,6 +53,7 @@
 import org.apache.geronimo.kernel.Kernel;
 import org.apache.geronimo.kernel.config.ConfigurationModuleType;
 import org.apache.geronimo.kernel.repository.Repository;
+import org.apache.geronimo.kernel.repository.MissingDependencyException;
 import org.apache.xmlbeans.XmlException;
 
 /**
@@ -153,7 +154,7 @@
     public static void addIncludes(DeploymentContext context, DependencyType[] 
includes, Repository repository) throws DeploymentException {
         for (int i = 0; i < includes.length; i++) {
             DependencyType include = includes[i];
-            URI uri = getDependencyURI(include);
+            URI uri = getDependencyURI(include, repository);
             String name = uri.toString();
             int idx = name.lastIndexOf('/');
             if (idx != -1) {
@@ -176,7 +177,7 @@
 
     public static void addDependencies(DeploymentContext context, 
DependencyType[] deps, Repository repository) throws DeploymentException {
         for (int i = 0; i < deps.length; i++) {
-            URI dependencyURI = getDependencyURI(deps[i]);
+            URI dependencyURI = getDependencyURI(deps[i], repository);
             context.addDependency(dependencyURI);
 
             URL url;
@@ -264,7 +265,7 @@
         return gBeanData;
     }
 
-    private static URI getDependencyURI(DependencyType dep) throws 
DeploymentException {
+    private static URI getDependencyURI(DependencyType dep, Repository 
repository) throws DeploymentException {
         URI uri;
         if (dep.isSetUri()) {
             try {
@@ -280,6 +281,9 @@
             } catch (URISyntaxException e) {
                 throw new DeploymentException("Unable to construct URI for 
groupId=" + dep.getGroupId() + ", artifactId=" + dep.getArtifactId() + ", 
version=" + dep.getVersion(), e);
             }
+        }
+        if (!repository.hasURI(uri)) {
+            throw new DeploymentException(new MissingDependencyException("uri 
" + uri + " not found in repository"));
         }
         return uri;
     }

Reply via email to