OSDN Git Service

refactoring.
authorikemo <ikemo@56b19765-1e22-0410-a548-a0f45d66c51a>
Mon, 26 Jan 2004 16:14:48 +0000 (16:14 +0000)
committerikemo <ikemo@56b19765-1e22-0410-a548-a0f45d66c51a>
Mon, 26 Jan 2004 16:14:48 +0000 (16:14 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/kita/kita/trunk@849 56b19765-1e22-0410-a548-a0f45d66c51a

kita/src/libkita/thread.cpp
kita/src/libkita/thread.h

index b6057d1..ea87c20 100644 (file)
@@ -267,43 +267,40 @@ QString ThreadAccess::cacheDir( const KURL& url )
     return dir;
 }
 
-// copied from http.cc
-QString ThreadAccess::getCachePath( const KURL& url )
+QString ThreadAccess::cacheSubDir( const QString& host )
 {
-    const QChar seperator = '_';
-
-    QString path = url.path();
-    path.replace( QChar( '/' ), QChar( '_' ) );
-
-    QString host = url.host().lower();
-    QString CEF = host + path + '_';
-
-    QString dir = cacheDir( url );
-
     int l = host.length();
     for ( int i = 0; i < l; i++ ) {
         if ( host[ i ].isLetter() && ( host[ i ] != 'w' ) ) {
-            dir += host[ i ];
-            break;
+            return QString( host[ i ] );
         }
     }
-    if ( dir[ dir.length() - 1 ] == '/' )
-        dir += "0";
+    return "0";
+}
 
+QString ThreadAccess::hashString( const KURL& url )
+{
     unsigned long hash = 0x00000000;
     QCString u = url.url().latin1();
     for ( int i = u.length(); i--; ) {
         hash = ( hash * 12211 + u[ i ] ) % 2147483563;
     }
 
-    QString hashString;
-    hashString.sprintf( "%08lx", hash );
+    QString ret;
+    ret.sprintf( "%08lx", hash );
 
-    CEF = CEF + hashString;
+    return ret;
+}
+
+// copied from http.cc
+QString ThreadAccess::getCachePath( const KURL& url )
+{
+    QString path = url.path();
+    path.replace( QChar( '/' ), QChar( '_' ) );
 
-    CEF = dir + "/" + CEF;
+    QString host = url.host().lower();
 
-    return CEF;
+    return cacheDir( url ) + cacheSubDir( host ) + "/" + host + path + '_' + hashString( url );
 }
 
 bool ThreadAccess::readCacheHeader( FILE* fs, const KURL& url )
index 4048ec3..8ef68b0 100644 (file)
@@ -120,6 +120,8 @@ namespace Kita
         int responseCode();
         bool readCacheHeader( FILE* fs, const KURL& url );
         QString cacheDir( const KURL& url );
+        QString cacheSubDir( const QString& host );
+        QString hashString( const KURL& url );
 
         const Thread* m_thread;
         KIO::Job* m_currentJob;