Author: jdumay
Date: Wed Feb 18 03:56:23 2009
New Revision: 745373
URL: http://svn.apache.org/viewvc?rev=745373&view=rev
Log:
fix failing tests
Added:
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/InvalidOperationException.java
Modified:
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryManager.java
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/GroupRepositoryManager.java
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java
Added:
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/InvalidOperationException.java
URL:
http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/InvalidOperationException.java?rev=745373&view=auto
==============================================================================
---
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/InvalidOperationException.java
(added)
+++
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository-api/src/main/java/org/apache/archiva/repository/api/InvalidOperationException.java
Wed Feb 18 03:56:23 2009
@@ -0,0 +1,41 @@
+package org.apache.archiva.repository.api;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/**
+ * InvalidOperationException
+ */
+public class InvalidOperationException extends RepositoryManagerException
+{
+ public InvalidOperationException(String message)
+ {
+ super(message);
+ }
+
+ public InvalidOperationException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+ public InvalidOperationException(Throwable cause)
+ {
+ super(cause.getMessage(), cause);
+ }
+}
Modified:
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryManager.java
URL:
http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryManager.java?rev=745373&r1=745372&r2=745373&view=diff
==============================================================================
---
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryManager.java
(original)
+++
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/DefaultRepositoryManager.java
Wed Feb 18 03:56:23 2009
@@ -137,8 +137,7 @@
}
return result;
}
- return Collections.EMPTY_LIST;
}
- return null;
+ return Collections.EMPTY_LIST;
}
}
Modified:
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/GroupRepositoryManager.java
URL:
http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/GroupRepositoryManager.java?rev=745373&r1=745372&r2=745373&view=diff
==============================================================================
---
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/GroupRepositoryManager.java
(original)
+++
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-base/archiva-repository/src/main/java/org/apache/archiva/repository/GroupRepositoryManager.java
Wed Feb 18 03:56:23 2009
@@ -25,9 +25,9 @@
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
+import org.apache.archiva.repository.api.InvalidOperationException;
import org.apache.archiva.repository.api.MutableResourceContext;
import org.apache.archiva.repository.api.RepositoryManager;
-import org.apache.archiva.repository.api.RepositoryManagerException;
import org.apache.archiva.repository.api.RepositoryManagerWeight;
import org.apache.archiva.repository.api.ResourceContext;
import org.apache.archiva.repository.api.Status;
@@ -82,7 +82,7 @@
public boolean write(ResourceContext context, InputStream is)
{
- throw new RepositoryManagerException("Repository Groups are not
writable: " + context.getRepositoryId());
+ throw new InvalidOperationException("Repository Groups are not
writable: " + context.getRepositoryId());
}
public List<Status> stat(ResourceContext context)
Modified:
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java
URL:
http://svn.apache.org/viewvc/archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java?rev=745373&r1=745372&r2=745373&view=diff
==============================================================================
---
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java
(original)
+++
archiva/branches/archiva-with-new-repoapi/archiva-modules/archiva-web/archiva-repository-servlet/src/main/java/org/apache/archiva/web/servlet/RepositoryServlet.java
Wed Feb 18 03:56:23 2009
@@ -35,6 +35,7 @@
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import org.apache.archiva.repository.api.InvalidOperationException;
import org.apache.archiva.repository.api.ResourceType;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -123,14 +124,21 @@
}
private void handleRequest(final HttpServletRequest req, final
HttpServletResponse resp)
- throws IOException
+ throws IOException, ServletException
{
log.debug("Request started");
HttpRepositoryContext context = new HttpRepositoryContext(req, resp);
log.debug("Running PreRepositoryInterceptors");
executePreRepositoryInterceptors(context);
log.debug("Executing Repository Manager");
- runRepositoryManager(context, req, resp);
+ try
+ {
+ runRepositoryManager(context, req, resp);
+ }
+ catch (InvalidOperationException e)
+ {
+ resp.sendError(HttpServletResponse.SC_METHOD_NOT_ALLOWED,
e.getMessage());
+ }
log.debug("Running PostRepositoryInterceptors");
executePostRepositoryInterceptors(context);
log.debug("Request Completed");
@@ -207,7 +215,10 @@
if (withBody)
{
- repositoryManager.read(context, resp.getOutputStream());
+ if (!repositoryManager.read(context,
resp.getOutputStream()))
+ {
+ resp.sendError(HttpServletResponse.SC_NOT_FOUND);
+ }
}
}
}