Update of /var/cvs/speeltuin/andre/mmget/src/org/mmbase/mmget
In directory james.mmbase.org:/tmp/cvs-serv29991

Modified Files:
        MMGet.java ResourceReWriter.java ResourceWriter.java 
Log Message:
new strategy (for now): dropped the idea of saving 'relative', now saving 
starting from serverroot,
thinking of relatively saving as a config/option



See also: 
http://cvs.mmbase.org/viewcvs/speeltuin/andre/mmget/src/org/mmbase/mmget


Index: MMGet.java
===================================================================
RCS file: /var/cvs/speeltuin/andre/mmget/src/org/mmbase/mmget/MMGet.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -b -r1.7 -r1.8
--- MMGet.java  11 Mar 2009 16:11:51 -0000      1.7
+++ MMGet.java  12 Mar 2009 10:30:38 -0000      1.8
@@ -25,7 +25,7 @@
  * TODO: init rootURL early on, and check all urls against it (so we don't 
travel up the rootURL)
  *
  * @author André van Toly
- * @version $Id: MMGet.java,v 1.7 2009/03/11 16:11:51 andre Exp $
+ * @version $Id: MMGet.java,v 1.8 2009/03/12 10:30:38 andre Exp $
  */
 public final class MMGet {
     
@@ -39,6 +39,7 @@
                                                  });
     /* link to start exporting from and directory of the start url  */
     public static String url;
+    public static String serverpart;
     protected static URL startURL;
     protected static URL startdirURL;
     
@@ -85,6 +86,10 @@
         ResourceLoader webroot = ResourceLoader.getWebRoot();
         
         startURL = new URL(url);
+        serverpart = url;
+        if (url.lastIndexOf("/") > 7) {
+            serverpart = url.substring(0, url.indexOf("/", 7));
+        }
         
         // savedir
         if (directory == null || "".equals(directory) || 
!webroot.getResource(directory).openConnection().getDoInput()) {
@@ -305,13 +310,13 @@
                     if (rw == null) continue;
                 }
                 
-                String calclink = startdirURL.toString() + filename;    // 
'calculated' link
+                String calclink = serverpart + "/" + filename;    // 
'calculated' link
                 String calcdir  = dirURL.toString();
                 if (calcdir.endsWith("/")) calcdir = calcdir.substring(0, 
calcdir.lastIndexOf("/"));
                 
                 String relative = UriParser.makeRelative(calcdir, calclink);
-                log.debug("relative: " + relative);
                 if (!"".equals(link) && !links2files.containsKey(link) && 
!link.equals(relative)) { // only when different
+                    log.debug("link2files: " + link + " -> " + relative);
                     links2files.put(link, relative); /* /dir/css/bla.css + 
../css/bla.css */
                 }
                 


Index: ResourceReWriter.java
===================================================================
RCS file: 
/var/cvs/speeltuin/andre/mmget/src/org/mmbase/mmget/ResourceReWriter.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- ResourceReWriter.java       11 Mar 2009 16:11:51 -0000      1.2
+++ ResourceReWriter.java       12 Mar 2009 10:30:38 -0000      1.3
@@ -12,7 +12,7 @@
  * Typically to be used for html and css files.
  *
  * @author André van Toly
- * @version $Id: ResourceReWriter.java,v 1.2 2009/03/11 16:11:51 andre Exp $
+ * @version $Id: ResourceReWriter.java,v 1.3 2009/03/12 10:30:38 andre Exp $
  */
 public class ResourceReWriter extends ResourceWriter {
     private static final Logger log = 
Logging.getLoggerInstance(ResourceReWriter.class);
@@ -28,7 +28,7 @@
      */
     public ResourceReWriter(URL url) throws IOException {
         super(url);
-        log.debug("Trying to download... " + url.toString() + " to " + 
filename);
+        //log.debug("Trying to download... " + url.toString() + " to " + 
filename);
         this.uc = super.uc;
         
         this.url = getUrl();
@@ -51,7 +51,7 @@
      * @param uc the already elsewhere created URLConnection for efficiency
      */
     private void rewrite() throws IOException {
-        log.debug("REwriting: " + url + ", filename: " + filename);
+        log.debug("REwriting: " + url + " -> file: " + filename);
         File f = getFile(filename);
         if (f.exists()) {
             //log.warn("File '" + f.toString() + "' already exists, deleting 
it and saving again.");
@@ -101,7 +101,7 @@
         in.close();
         out.close();
         
-        log.debug("Saved: " + f.toString() );
+        log.debug("Saved: " + url + " -> file: " + f.toString() );
     
     }
     


Index: ResourceWriter.java
===================================================================
RCS file: 
/var/cvs/speeltuin/andre/mmget/src/org/mmbase/mmget/ResourceWriter.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- ResourceWriter.java 11 Mar 2009 16:11:51 -0000      1.2
+++ ResourceWriter.java 12 Mar 2009 10:30:38 -0000      1.3
@@ -13,7 +13,7 @@
  * Writes a resource found on an url to disk. 
  *
  * @author André van Toly
- * @version $Id: ResourceWriter.java,v 1.2 2009/03/11 16:11:51 andre Exp $
+ * @version $Id: ResourceWriter.java,v 1.3 2009/03/12 10:30:38 andre Exp $
  */
 public class ResourceWriter {
     private static final Logger log = 
Logging.getLoggerInstance(ResourceWriter.class);
@@ -28,8 +28,6 @@
      * @throws IOException When failed to write
      */
     public ResourceWriter(URL u) throws IOException {
-        log.debug("Trying to download .. " + u.toString());
-
         try {
             uc = (HttpURLConnection)getURLConnection(u);
         } catch (IOException e) {
@@ -167,43 +165,13 @@
      * @return path and filename that can be saved (f.e. pics/button.gif)
      */
     public String makeFilename(URL url) {
-        /*
-        start: www.toly.nl/bla
-        link:  www.toly.nl/pics/button.gif
-        filename: 1up/pics/buttons.gif
-        
-        start: www.toly.nl/bla/bla
-        link:  www.toly.nl/pics/button.gif
-        filename: 2up/pics/buttons.gif
-        */
-        String filename = url.getFile();    
-        filename = MMGet.removeSessionid(filename);
-        
         String link = url.toString();
         link = MMGet.removeSessionid(link);
         
-        // path starting from startdirURL
-        int startdirlength = MMGet.startdirURL.toString().length();
-        if (link.length() > startdirlength) {
-            filename = link.substring(startdirlength);
-        }
-        
-        //log.debug("0: file: " + filename);
-        if (contenttype == MMGet.CONTENTTYPE_HTML) {
-            if (filename.equals("")) {
-                filename = "index.html";
-            } else if (!filename.endsWith("/") && 
!MMGet.hasExtension(filename)) {
-                filename = filename + "/index.html";
-                //log.debug("1: /bla file: " + filename);
-            }
-            
-            if (filename.endsWith("/")) {
-                filename = filename + "index.html";
-                //log.debug("2: /bla/ file: " + filename);
-            }
-        }
+        String filename = link.substring(MMGet.serverpart.length());
+        if (filename.startsWith("/")) filename = filename.substring(1);
         
-        log.debug("filename: " + filename);
+        log.debug("url: " + url.toString() + " -> file: " + filename);
         return filename;
     }
  }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to