2009-03-05 00:24:53 +05:30
<?xml version="1.0" encoding="ascii"?>
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" xml:lang = "en" lang = "en" >
< head >
< title > lastfm.filecache< / title >
< link rel = "stylesheet" href = "epydoc.css" type = "text/css" / >
< script type = "text/javascript" src = "epydoc.js" > < / script >
< / head >
< body bgcolor = "white" text = "black" link = "blue" vlink = "#204080"
alink="#204080">
<!-- ==================== NAVIGATION BAR ==================== -->
< table class = "navbar" border = "0" width = "100%" cellpadding = "0"
bgcolor="#a0c0ff" cellspacing="0">
< tr valign = "middle" >
<!-- Home link -->
< th > < a
href="lastfm-module.html">Home< / a > < / th >
<!-- Tree link -->
< th > < a
href="module-tree.html">Trees< / a > < / th >
<!-- Index link -->
< th > < a
href="identifier-index.html">Indices< / a > < / th >
<!-- Help link -->
< th > < a
href="help.html">Help< / a > < / th >
<!-- Project homepage -->
< th class = "navbar" align = "right" width = "100%" >
< table border = "0" cellpadding = "0" cellspacing = "0" >
< tr > < th class = "navbar" align = "center"
2009-03-05 01:42:20 +05:30
>< a class = "navbar" target = "_top" href = "http://code.google.com/p/python-lastfm/" > python-lastfm< / a > < / th >
2009-03-05 00:24:53 +05:30
< / tr > < / table > < / th >
< / tr >
< / table >
< table width = "100%" cellpadding = "0" cellspacing = "0" >
< tr valign = "top" >
< td width = "100%" >
< span class = "breadcrumbs" >
< a href = "lastfm-module.html" > Package lastfm< / a > ::
Module filecache
< / span >
< / td >
< td >
< table cellpadding = "0" cellspacing = "0" >
<!-- hide/show private -->
< tr > < td align = "right" > < span class = "options" > [< a href = "javascript:void(0);" class = "privatelink"
onclick="toggle_private();">hide private< / a > ]< / span > < / td > < / tr >
< tr > < td align = "right" > < span class = "options"
>[< a href = "frames.html" target = "_top" > frames< /a
>] | < a href = "lastfm.filecache-pysrc.html"
target="_top">no frames< / a > ]< / span > < / td > < / tr >
< / table >
< / td >
< / tr >
< / table >
< h1 class = "epydoc" > Source Code for < a href = "lastfm.filecache-module.html" onclick = "show_private();" > Module lastfm.filecache< / a > < / h1 >
< pre class = "py-src" >
< a name = "L1" > < / a > < tt class = "py-lineno" > 1< / tt > < tt class = "py-line" > < tt class = "py-comment" > #!/usr/bin/env python< / tt > < / tt >
< a name = "L2" > < / a > < tt class = "py-lineno" > 2< / tt > < tt class = "py-line" > < / tt >
< a name = "L3" > < / a > < tt class = "py-lineno" > 3< / tt > < tt class = "py-line" > < tt class = "py-name" > __author__< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-docstring" > "Abhinav Sarkar < abhinav@abhinavsarkar.net> "< / tt > < / tt >
< a name = "L4" > < / a > < tt class = "py-lineno" > 4< / tt > < tt class = "py-line" > < tt class = "py-name" > __version__< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-string" > "0.2"< / tt > < / tt >
< a name = "L5" > < / a > < tt class = "py-lineno" > 5< / tt > < tt class = "py-line" > < tt class = "py-name" > __license__< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-string" > "GNU Lesser General Public License"< / tt > < / tt >
< a name = "L6" > < / a > < tt class = "py-lineno" > 6< / tt > < tt class = "py-line" > < / tt >
< a name = "L7" > < / a > < tt class = "py-lineno" > 7< / tt > < tt class = "py-line" > < tt class = "py-keyword" > import< / tt > < tt class = "py-name" > sys< / tt > < / tt >
< a name = "L8" > < / a > < tt class = "py-lineno" > 8< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-name" > sys< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > version< / tt > < tt class = "py-op" > < < / tt > < tt class = "py-string" > '2.6'< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L9" > < / a > < tt class = "py-lineno" > 9< / tt > < tt class = "py-line" > < tt class = "py-keyword" > import< / tt > < tt class = "py-name" > md5< / tt > < / tt >
< a name = "md5hash" > < / a > < div id = "md5hash-def" > < a name = "L10" > < / a > < tt class = "py-lineno" > 10< / tt > < a class = "py-toggle" href = "#" id = "md5hash-toggle" onclick = "return toggle('md5hash');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache-module.html#md5hash" > md5hash< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > string< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "md5hash-collapsed" style = "display:none;" pad = "+++" indent = "++++++++" > < / div > < div id = "md5hash-expanded" > < a name = "L11" > < / a > < tt class = "py-lineno" > 11< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > md5< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > new< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > string< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > hexdigest< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L12" > < / a > < tt class = "py-lineno" > 12< / tt > < tt class = "py-line" > < tt class = "py-keyword" > else< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L13" > < / a > < tt class = "py-lineno" > 13< / tt > < tt class = "py-line" > < tt class = "py-keyword" > from< / tt > < tt class = "py-name" > hashlib< / tt > < tt class = "py-keyword" > import< / tt > < tt class = "py-name" > md5< / tt > < / tt >
< a name = "md5hash" > < / a > < div id = "md5hash-def" > < a name = "L14" > < / a > < tt class = "py-lineno" > 14< / tt > < a class = "py-toggle" href = "#" id = "md5hash-toggle" onclick = "return toggle('md5hash');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache-module.html#md5hash" > md5hash< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > string< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "md5hash-collapsed" style = "display:none;" pad = "+++" indent = "++++++++" > < / div > < div id = "md5hash-expanded" > < a name = "L15" > < / a > < tt class = "py-lineno" > 15< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > md5< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > string< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > hexdigest< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L16" > < / a > < tt class = "py-lineno" > 16< / tt > < tt class = "py-line" > < / tt >
< a name = "L17" > < / a > < tt class = "py-lineno" > 17< / tt > < tt class = "py-line" > < tt class = "py-keyword" > import< / tt > < tt class = "py-name" > os< / tt > < / tt >
< a name = "L18" > < / a > < tt class = "py-lineno" > 18< / tt > < tt class = "py-line" > < tt class = "py-keyword" > import< / tt > < tt class = "py-name" > tempfile< / tt > < / tt >
< a name = "L19" > < / a > < tt class = "py-lineno" > 19< / tt > < tt class = "py-line" > < / tt >
< a name = "_FileCacheError" > < / a > < div id = "_FileCacheError-def" > < a name = "L20" > < / a > < tt class = "py-lineno" > 20< / tt > < a class = "py-toggle" href = "#" id = "_FileCacheError-toggle" onclick = "return toggle('_FileCacheError');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > class< / tt > < a class = "py-def-name" href = "lastfm.filecache._FileCacheError-class.html" > _FileCacheError< / a > < tt class = "py-op" > (< / tt > < tt class = "py-base-class" > Exception< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "_FileCacheError-collapsed" style = "display:none;" pad = "+++" indent = "++++" > < / div > < div id = "_FileCacheError-expanded" > < a name = "L21" > < / a > < tt class = "py-lineno" > 21< / tt > < tt class = "py-line" > < tt class = "py-docstring" > '''Base exception class for FileCache related errors'''< / tt > < / tt >
< / div > < a name = "L22" > < / a > < tt class = "py-lineno" > 22< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache" > < / a > < div id = "FileCache-def" > < a name = "L23" > < / a > < tt class = "py-lineno" > 23< / tt > < a class = "py-toggle" href = "#" id = "FileCache-toggle" onclick = "return toggle('FileCache');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > class< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html" > FileCache< / a > < tt class = "py-op" > (< / tt > < tt class = "py-base-class" > object< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache-collapsed" style = "display:none;" pad = "+++" indent = "++++" > < / div > < div id = "FileCache-expanded" > < a name = "L24" > < / a > < tt class = "py-lineno" > 24< / tt > < tt class = "py-line" > < / tt >
< a name = "L25" > < / a > < tt class = "py-lineno" > 25< / tt > < tt class = "py-line" > < tt id = "link-0" class = "py-name" targets = "Variable lastfm.filecache.FileCache.DEPTH=lastfm.filecache.FileCache-class.html#DEPTH" > < a title = "lastfm.filecache.FileCache.DEPTH" class = "py-name" href = "#" onclick = "return doclink('link-0', 'DEPTH', 'link-0');" > DEPTH< / a > < / tt > < tt class = "py-op" > =< / tt > < tt class = "py-number" > 3< / tt > < / tt >
< a name = "L26" > < / a > < tt class = "py-lineno" > 26< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache.__init__" > < / a > < div id = "FileCache.__init__-def" > < a name = "L27" > < / a > < tt class = "py-lineno" > 27< / tt > < a class = "py-toggle" href = "#" id = "FileCache.__init__-toggle" onclick = "return toggle('FileCache.__init__');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#__init__" > __init__< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > root_directory< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > None< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache.__init__-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache.__init__-expanded" > < a name = "L28" > < / a > < tt class = "py-lineno" > 28< / tt > < tt class = "py-line" > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-1" class = "py-name" targets = "Method lastfm.filecache.FileCache._InitializeRootDirectory()=lastfm.filecache.FileCache-class.html#_InitializeRootDirectory" > < a title = "lastfm.filecache.FileCache._InitializeRootDirectory" class = "py-name" href = "#" onclick = "return doclink('link-1', '_InitializeRootDirectory', 'link-1');" > _InitializeRootDirectory< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L29" > < / a > < tt class = "py-lineno" > 29< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache.Get" > < / a > < div id = "FileCache.Get-def" > < a name = "L30" > < / a > < tt class = "py-lineno" > 30< / tt > < a class = "py-toggle" href = "#" id = "FileCache.Get-toggle" onclick = "return toggle('FileCache.Get');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#Get" > Get< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > key< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache.Get-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache.Get-expanded" > < a name = "L31" > < / a > < tt class = "py-lineno" > 31< / tt > < tt class = "py-line" > < tt class = "py-name" > path< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-2" class = "py-name" targets = "Method lastfm.filecache.FileCache._GetPath()=lastfm.filecache.FileCache-class.html#_GetPath" > < a title = "lastfm.filecache.FileCache._GetPath" class = "py-name" href = "#" onclick = "return doclink('link-2', '_GetPath', 'link-2');" > _GetPath< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > key< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L32" > < / a > < tt class = "py-lineno" > 32< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > exists< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L33" > < / a > < tt class = "py-lineno" > 33< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > open< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > read< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L34" > < / a > < tt class = "py-lineno" > 34< / tt > < tt class = "py-line" > < tt class = "py-keyword" > else< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L35" > < / a > < tt class = "py-lineno" > 35< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > None< / tt > < / tt >
< / div > < a name = "L36" > < / a > < tt class = "py-lineno" > 36< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache.Set" > < / a > < div id = "FileCache.Set-def" > < a name = "L37" > < / a > < tt class = "py-lineno" > 37< / tt > < a class = "py-toggle" href = "#" id = "FileCache.Set-toggle" onclick = "return toggle('FileCache.Set');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#Set" > Set< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > key< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > data< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache.Set-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache.Set-expanded" > < a name = "L38" > < / a > < tt class = "py-lineno" > 38< / tt > < tt class = "py-line" > < tt class = "py-name" > path< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-3" class = "py-name" > < a title = "lastfm.filecache.FileCache._GetPath" class = "py-name" href = "#" onclick = "return doclink('link-3', '_GetPath', 'link-2');" > _GetPath< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > key< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L39" > < / a > < tt class = "py-lineno" > 39< / tt > < tt class = "py-line" > < tt class = "py-name" > directory< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > dirname< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L40" > < / a > < tt class = "py-lineno" > 40< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > exists< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L41" > < / a > < tt class = "py-lineno" > 41< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > makedirs< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L42" > < / a > < tt class = "py-lineno" > 42< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > isdir< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L43" > < / a > < tt class = "py-lineno" > 43< / tt > < tt class = "py-line" > < tt class = "py-keyword" > raise< / tt > < tt id = "link-4" class = "py-name" targets = "Class lastfm.filecache._FileCacheError=lastfm.filecache._FileCacheError-class.html" > < a title = "lastfm.filecache._FileCacheError" class = "py-name" href = "#" onclick = "return doclink('link-4', '_FileCacheError', 'link-4');" > _FileCacheError< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > '%s exists but is not a directory'< / tt > < tt class = "py-op" > %< / tt > < tt class = "py-name" > directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L44" > < / a > < tt class = "py-lineno" > 44< / tt > < tt class = "py-line" > < tt class = "py-name" > temp_fd< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-name" > temp_path< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > tempfile< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > mkstemp< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L45" > < / a > < tt class = "py-lineno" > 45< / tt > < tt class = "py-line" > < tt class = "py-name" > temp_fp< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > fdopen< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > temp_fd< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-string" > 'w'< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L46" > < / a > < tt class = "py-lineno" > 46< / tt > < tt class = "py-line" > < tt class = "py-name" > temp_fp< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > write< / tt > < tt class = "py-op" > (< / tt > < tt id = "link-5" class = "py-name" targets = "Variable lastfm.playlist.Playlist.data=lastfm.playlist.Playlist-class.html#data" > < a title = "lastfm.playlist.Playlist.data" class = "py-name" href = "#" onclick = "return doclink('link-5', 'data', 'link-5');" > data< / a > < / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L47" > < / a > < tt class = "py-lineno" > 47< / tt > < tt class = "py-line" > < tt class = "py-name" > temp_fp< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > close< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L48" > < / a > < tt class = "py-lineno" > 48< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > startswith< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > _root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L49" > < / a > < tt class = "py-lineno" > 49< / tt > < tt class = "py-line" > < tt class = "py-keyword" > raise< / tt > < tt id = "link-6" class = "py-name" > < a title = "lastfm.filecache._FileCacheError" class = "py-name" href = "#" onclick = "return doclink('link-6', '_FileCacheError', 'link-4');" > _FileCacheError< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > '%s does not appear to live under %s'< / tt > < tt class = "py-op" > %< / tt > < / tt >
< a name = "L50" > < / a > < tt class = "py-lineno" > 50< / tt > < tt class = "py-line" > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > _root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L51" > < / a > < tt class = "py-lineno" > 51< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > exists< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L52" > < / a > < tt class = "py-lineno" > 52< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-7" class = "py-name" targets = "Method lastfm.safelist.SafeList.remove()=lastfm.safelist.SafeList-class.html#remove" > < a title = "lastfm.safelist.SafeList.remove" class = "py-name" href = "#" onclick = "return doclink('link-7', 'remove', 'link-7');" > remove< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L53" > < / a > < tt class = "py-lineno" > 53< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > rename< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > temp_path< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L54" > < / a > < tt class = "py-lineno" > 54< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache.Remove" > < / a > < div id = "FileCache.Remove-def" > < a name = "L55" > < / a > < tt class = "py-lineno" > 55< / tt > < a class = "py-toggle" href = "#" id = "FileCache.Remove-toggle" onclick = "return toggle('FileCache.Remove');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#Remove" > Remove< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > key< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache.Remove-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache.Remove-expanded" > < a name = "L56" > < / a > < tt class = "py-lineno" > 56< / tt > < tt class = "py-line" > < tt class = "py-name" > path< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-8" class = "py-name" > < a title = "lastfm.filecache.FileCache._GetPath" class = "py-name" href = "#" onclick = "return doclink('link-8', '_GetPath', 'link-2');" > _GetPath< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > key< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L57" > < / a > < tt class = "py-lineno" > 57< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > startswith< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > _root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L58" > < / a > < tt class = "py-lineno" > 58< / tt > < tt class = "py-line" > < tt class = "py-keyword" > raise< / tt > < tt id = "link-9" class = "py-name" > < a title = "lastfm.filecache._FileCacheError" class = "py-name" href = "#" onclick = "return doclink('link-9', '_FileCacheError', 'link-4');" > _FileCacheError< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > '%s does not appear to live under %s'< / tt > < tt class = "py-op" > %< / tt > < / tt >
< a name = "L59" > < / a > < tt class = "py-lineno" > 59< / tt > < tt class = "py-line" > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > _root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L60" > < / a > < tt class = "py-lineno" > 60< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > exists< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L61" > < / a > < tt class = "py-lineno" > 61< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-10" class = "py-name" > < a title = "lastfm.safelist.SafeList.remove" class = "py-name" href = "#" onclick = "return doclink('link-10', 'remove', 'link-7');" > remove< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L62" > < / a > < tt class = "py-lineno" > 62< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache.GetCachedTime" > < / a > < div id = "FileCache.GetCachedTime-def" > < a name = "L63" > < / a > < tt class = "py-lineno" > 63< / tt > < a class = "py-toggle" href = "#" id = "FileCache.GetCachedTime-toggle" onclick = "return toggle('FileCache.GetCachedTime');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#GetCachedTime" > GetCachedTime< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > key< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache.GetCachedTime-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache.GetCachedTime-expanded" > < a name = "L64" > < / a > < tt class = "py-lineno" > 64< / tt > < tt class = "py-line" > < tt class = "py-name" > path< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-11" class = "py-name" > < a title = "lastfm.filecache.FileCache._GetPath" class = "py-name" href = "#" onclick = "return doclink('link-11', '_GetPath', 'link-2');" > _GetPath< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > key< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L65" > < / a > < tt class = "py-lineno" > 65< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > exists< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L66" > < / a > < tt class = "py-lineno" > 66< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > getmtime< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L67" > < / a > < tt class = "py-lineno" > 67< / tt > < tt class = "py-line" > < tt class = "py-keyword" > else< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L68" > < / a > < tt class = "py-lineno" > 68< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > None< / tt > < / tt >
< / div > < a name = "L69" > < / a > < tt class = "py-lineno" > 69< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache._GetUsername" > < / a > < div id = "FileCache._GetUsername-def" > < a name = "L70" > < / a > < tt class = "py-lineno" > 70< / tt > < a class = "py-toggle" href = "#" id = "FileCache._GetUsername-toggle" onclick = "return toggle('FileCache._GetUsername');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#_GetUsername" > _GetUsername< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache._GetUsername-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache._GetUsername-expanded" > < a name = "L71" > < / a > < tt class = "py-lineno" > 71< / tt > < tt class = "py-line" > < tt class = "py-docstring" > '''Attempt to find the username in a cross-platform fashion.'''< / tt > < / tt >
< a name = "L72" > < / a > < tt class = "py-lineno" > 72< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > getenv< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > 'USER'< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-keyword" > or< / tt > \ < / tt >
< a name = "L73" > < / a > < tt class = "py-lineno" > 73< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > getenv< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > 'LOGNAME'< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-keyword" > or< / tt > \ < / tt >
< a name = "L74" > < / a > < tt class = "py-lineno" > 74< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > getenv< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > 'USERNAME'< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-keyword" > or< / tt > \ < / tt >
< a name = "L75" > < / a > < tt class = "py-lineno" > 75< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > getlogin< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-keyword" > or< / tt > \ < / tt >
< a name = "L76" > < / a > < tt class = "py-lineno" > 76< / tt > < tt class = "py-line" > < tt class = "py-string" > 'nobody'< / tt > < / tt >
< / div > < a name = "L77" > < / a > < tt class = "py-lineno" > 77< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache._GetTmpCachePath" > < / a > < div id = "FileCache._GetTmpCachePath-def" > < a name = "L78" > < / a > < tt class = "py-lineno" > 78< / tt > < a class = "py-toggle" href = "#" id = "FileCache._GetTmpCachePath-toggle" onclick = "return toggle('FileCache._GetTmpCachePath');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#_GetTmpCachePath" > _GetTmpCachePath< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache._GetTmpCachePath-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache._GetTmpCachePath-expanded" > < a name = "L79" > < / a > < tt class = "py-lineno" > 79< / tt > < tt class = "py-line" > < tt class = "py-name" > username< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-12" class = "py-name" targets = "Method lastfm.filecache.FileCache._GetUsername()=lastfm.filecache.FileCache-class.html#_GetUsername" > < a title = "lastfm.filecache.FileCache._GetUsername" class = "py-name" href = "#" onclick = "return doclink('link-12', '_GetUsername', 'link-12');" > _GetUsername< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L80" > < / a > < tt class = "py-lineno" > 80< / tt > < tt class = "py-line" > < tt class = "py-name" > cache_directory< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-string" > 'python.cache_'< / tt > < tt class = "py-op" > +< / tt > < tt class = "py-name" > username< / tt > < / tt >
< a name = "L81" > < / a > < tt class = "py-lineno" > 81< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > join< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > tempfile< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > gettempdir< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-name" > cache_directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L82" > < / a > < tt class = "py-lineno" > 82< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache._InitializeRootDirectory" > < / a > < div id = "FileCache._InitializeRootDirectory-def" > < a name = "L83" > < / a > < tt class = "py-lineno" > 83< / tt > < a class = "py-toggle" href = "#" id = "FileCache._InitializeRootDirectory-toggle" onclick = "return toggle('FileCache._InitializeRootDirectory');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#_InitializeRootDirectory" > _InitializeRootDirectory< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache._InitializeRootDirectory-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache._InitializeRootDirectory-expanded" > < a name = "L84" > < / a > < tt class = "py-lineno" > 84< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L85" > < / a > < tt class = "py-lineno" > 85< / tt > < tt class = "py-line" > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-13" class = "py-name" targets = "Method lastfm.filecache.FileCache._GetTmpCachePath()=lastfm.filecache.FileCache-class.html#_GetTmpCachePath" > < a title = "lastfm.filecache.FileCache._GetTmpCachePath" class = "py-name" href = "#" onclick = "return doclink('link-13', '_GetTmpCachePath', 'link-13');" > _GetTmpCachePath< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L86" > < / a > < tt class = "py-lineno" > 86< / tt > < tt class = "py-line" > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > abspath< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L87" > < / a > < tt class = "py-lineno" > 87< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > exists< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L88" > < / a > < tt class = "py-lineno" > 88< / tt > < tt class = "py-line" > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > mkdir< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L89" > < / a > < tt class = "py-lineno" > 89< / tt > < tt class = "py-line" > < tt class = "py-keyword" > if< / tt > < tt class = "py-keyword" > not< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > isdir< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< a name = "L90" > < / a > < tt class = "py-lineno" > 90< / tt > < tt class = "py-line" > < tt class = "py-keyword" > raise< / tt > < tt id = "link-14" class = "py-name" > < a title = "lastfm.filecache._FileCacheError" class = "py-name" href = "#" onclick = "return doclink('link-14', '_FileCacheError', 'link-4');" > _FileCacheError< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-string" > '%s exists but is not a directory'< / tt > < tt class = "py-op" > %< / tt > < / tt >
< a name = "L91" > < / a > < tt class = "py-lineno" > 91< / tt > < tt class = "py-line" > < tt class = "py-name" > root_directory< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L92" > < / a > < tt class = "py-lineno" > 92< / tt > < tt class = "py-line" > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > _root_directory< / tt > < tt class = "py-op" > =< / tt > < tt class = "py-name" > root_directory< / tt > < / tt >
< / div > < a name = "L93" > < / a > < tt class = "py-lineno" > 93< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache._GetPath" > < / a > < div id = "FileCache._GetPath-def" > < a name = "L94" > < / a > < tt class = "py-lineno" > 94< / tt > < a class = "py-toggle" href = "#" id = "FileCache._GetPath-toggle" onclick = "return toggle('FileCache._GetPath');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#_GetPath" > _GetPath< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > key< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache._GetPath-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache._GetPath-expanded" > < a name = "L95" > < / a > < tt class = "py-lineno" > 95< / tt > < tt class = "py-line" > < tt class = "py-name" > hashed_key< / tt > < tt class = "py-op" > =< / tt > < tt id = "link-15" class = "py-name" targets = "Function lastfm.api.md5hash()=lastfm.api-module.html#md5hash,Function lastfm.filecache.md5hash()=lastfm.filecache-module.html#md5hash" > < a title = "lastfm.api.md5hash
lastfm.filecache.md5hash" class="py-name" href="#" onclick="return doclink('link-15', 'md5hash', 'link-15');">md5hash< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > key< / tt > < tt class = "py-op" > )< / tt > < / tt >
< a name = "L96" > < / a > < tt class = "py-lineno" > 96< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > join< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > _root_directory< / tt > < tt class = "py-op" > ,< / tt > < / tt >
< a name = "L97" > < / a > < tt class = "py-lineno" > 97< / tt > < tt class = "py-line" > < tt class = "py-name" > self< / tt > < tt class = "py-op" > .< / tt > < tt id = "link-16" class = "py-name" targets = "Method lastfm.filecache.FileCache._GetPrefix()=lastfm.filecache.FileCache-class.html#_GetPrefix" > < a title = "lastfm.filecache.FileCache._GetPrefix" class = "py-name" href = "#" onclick = "return doclink('link-16', '_GetPrefix', 'link-16');" > _GetPrefix< / a > < / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > hashed_key< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > ,< / tt > < / tt >
< a name = "L98" > < / a > < tt class = "py-lineno" > 98< / tt > < tt class = "py-line" > < tt class = "py-name" > hashed_key< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < a name = "L99" > < / a > < tt class = "py-lineno" > 99< / tt > < tt class = "py-line" > < / tt >
< a name = "FileCache._GetPrefix" > < / a > < div id = "FileCache._GetPrefix-def" > < a name = "L100" > < / a > < tt class = "py-lineno" > 100< / tt > < a class = "py-toggle" href = "#" id = "FileCache._GetPrefix-toggle" onclick = "return toggle('FileCache._GetPrefix');" > -< / a > < tt class = "py-line" > < tt class = "py-keyword" > def< / tt > < a class = "py-def-name" href = "lastfm.filecache.FileCache-class.html#_GetPrefix" > _GetPrefix< / a > < tt class = "py-op" > (< / tt > < tt class = "py-param" > self< / tt > < tt class = "py-op" > ,< / tt > < tt class = "py-param" > hashed_key< / tt > < tt class = "py-op" > )< / tt > < tt class = "py-op" > :< / tt > < / tt >
< / div > < div id = "FileCache._GetPrefix-collapsed" style = "display:none;" pad = "+++" indent = "++++++++++++" > < / div > < div id = "FileCache._GetPrefix-expanded" > < a name = "L101" > < / a > < tt class = "py-lineno" > 101< / tt > < tt class = "py-line" > < tt class = "py-keyword" > return< / tt > < tt class = "py-name" > os< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > path< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > sep< / tt > < tt class = "py-op" > .< / tt > < tt class = "py-name" > join< / tt > < tt class = "py-op" > (< / tt > < tt class = "py-name" > hashed_key< / tt > < tt class = "py-op" > [< / tt > < tt class = "py-number" > 0< / tt > < tt class = "py-op" > :< / tt > < tt id = "link-17" class = "py-name" targets = "Class lastfm.filecache.FileCache=lastfm.filecache.FileCache-class.html" > < a title = "lastfm.filecache.FileCache" class = "py-name" href = "#" onclick = "return doclink('link-17', 'FileCache', 'link-17');" > FileCache< / a > < / tt > < tt class = "py-op" > .< / tt > < tt id = "link-18" class = "py-name" > < a title = "lastfm.filecache.FileCache.DEPTH" class = "py-name" href = "#" onclick = "return doclink('link-18', 'DEPTH', 'link-0');" > DEPTH< / a > < / tt > < tt class = "py-op" > ]< / tt > < tt class = "py-op" > )< / tt > < / tt >
< / div > < / div > < a name = "L102" > < / a > < tt class = "py-lineno" > 102< / tt > < tt class = "py-line" > < / tt > < script type = "text/javascript" >
<!--
expandto(location.href);
// -->
< / script >
< / pre >
< br / >
<!-- ==================== NAVIGATION BAR ==================== -->
< table class = "navbar" border = "0" width = "100%" cellpadding = "0"
bgcolor="#a0c0ff" cellspacing="0">
< tr valign = "middle" >
<!-- Home link -->
< th > < a
href="lastfm-module.html">Home< / a > < / th >
<!-- Tree link -->
< th > < a
href="module-tree.html">Trees< / a > < / th >
<!-- Index link -->
< th > < a
href="identifier-index.html">Indices< / a > < / th >
<!-- Help link -->
< th > < a
href="help.html">Help< / a > < / th >
<!-- Project homepage -->
< th class = "navbar" align = "right" width = "100%" >
< table border = "0" cellpadding = "0" cellspacing = "0" >
< tr > < th class = "navbar" align = "center"
2009-03-05 01:42:20 +05:30
>< a class = "navbar" target = "_top" href = "http://code.google.com/p/python-lastfm/" > python-lastfm< / a > < / th >
2009-03-05 00:24:53 +05:30
< / tr > < / table > < / th >
< / tr >
< / table >
< table border = "0" cellpadding = "0" cellspacing = "0" width = "100%%" >
< tr >
< td align = "left" class = "footer" >
2009-03-10 11:39:11 +05:30
Generated by Epydoc 3.0.1 on Tue Mar 10 11:14:36 2009
2009-03-05 00:24:53 +05:30
< / td >
< td align = "right" class = "footer" >
< a target = "mainFrame" href = "http://epydoc.sourceforge.net"
>http://epydoc.sourceforge.net< / a >
< / td >
< / tr >
< / table >
< script type = "text/javascript" >
<!--
// Private objects are initially displayed (because if
// javascript is turned off then we want them to be
// visible); but by default, we want to hide them. So hide
// them unless we have a cookie that says to show them.
checkCookie();
// -->
< / script >
< / body >
< / html >