Author: xavier
Date: Fri Nov 30 15:00:20 2007
New Revision: 600005

URL: http://svn.apache.org/viewvc?rev=600005&view=rev
Log:
- review responsibilities between resolver and cache manager, making cache 
management slightly more flexible (IVY-399)
- introduce lock strategy, used by CacheManager, not yet fully implemented nor 
tested (IVY-654)

Added:
    
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ArtifactResourceResolver.java
   (with props)
    
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ResourceDownloader.java
   (with props)

Added: 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ArtifactResourceResolver.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ArtifactResourceResolver.java?rev=600005&view=auto
==============================================================================
--- 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ArtifactResourceResolver.java
 (added)
+++ 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ArtifactResourceResolver.java
 Fri Nov 30 15:00:20 2007
@@ -0,0 +1,29 @@
+/*
+ *  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.
+ *
+ */
+package org.apache.ivy.plugins.repository;
+
+import org.apache.ivy.core.module.descriptor.Artifact;
+import org.apache.ivy.plugins.resolver.util.ResolvedResource;
+
+/**
+ * An [EMAIL PROTECTED] ArtifactResourceResolver} is responsible for the 
resolution of an artifact into a
+ * [EMAIL PROTECTED] ResolvedResource}.
+ */
+public interface ArtifactResourceResolver {
+    public ResolvedResource resolve(Artifact artifact);
+}

Propchange: 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ArtifactResourceResolver.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ResourceDownloader.java
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ResourceDownloader.java?rev=600005&view=auto
==============================================================================
--- 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ResourceDownloader.java
 (added)
+++ 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ResourceDownloader.java
 Fri Nov 30 15:00:20 2007
@@ -0,0 +1,38 @@
+/*
+ *  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.
+ *
+ */
+package org.apache.ivy.plugins.repository;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.apache.ivy.core.module.descriptor.Artifact;
+
+/**
+ * A [EMAIL PROTECTED] ResourceDownloader} is able to download a Resource to a 
File.
+ * <p>
+ * Depending on the implementation, the downloader may also choose to download 
checksums
+ * automatically and check the consistency of the downloaded resource.
+ * </p>
+ * <p>
+ * The implementation is also responsible for using a .part file during 
download, to ensure the
+ * destination file will exist only if the download is completed successfully.
+ * </p>
+ */
+public interface ResourceDownloader {
+    public void download(Artifact artifact, Resource resource, File dest) 
throws IOException;
+}

Propchange: 
incubator/ivy/core/trunk/src/java/org/apache/ivy/plugins/repository/ResourceDownloader.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain


Reply via email to