Bug 1661: Improve build speed with better caching strategy
Changed the way that the cache is located, so the same code can run on any build machine without any configuration.
Made work around for Bug 419 the only option, as we're not using the alternative anyway, and I don't want to commit completely untested code!
Changed caching algorithm, to improve build times.
<?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>flash_config.FlashConfigurationWriter</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">
<!-- 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>
<th class="navbar" width="100%"></th>
</tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="100%">
<span class="breadcrumbs">
<a href="flash_config-module.html">Module flash_config</a> ::
Class FlashConfigurationWriter
</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="flash_config.FlashConfigurationWriter-class.html"
target="_top">no frames</a>]</span></td></tr>
</table>
</td>
</tr>
</table>
<!-- ==================== CLASS DESCRIPTION ==================== -->
<h1 class="epydoc">Class FlashConfigurationWriter</h1><span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter">source code</a></span><br /><br />
Builder that creates the flash configuration files<br /><br />
<!-- ==================== INSTANCE METHODS ==================== -->
<a name="section-InstanceMethods"></a>
<table class="summary" border="1" cellpadding="3"
cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="table-header">
<td colspan="2" class="table-header">
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr valign="top">
<td align="left"><span class="table-header">Instance Methods</span></td>
<td align="right" valign="top"
><span class="options">[<a href="#section-InstanceMethods"
class="privatelink" onclick="toggle_private();"
>hide private</a>]</span></td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="__init__"></a><span class="summary-sig-name">__init__</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">configs</span>,
<span class="summary-sig-arg">product</span>)</span><br />
FlashConfigurationWriter init</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter.__init__">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_all_languagepacks"></a><span class="summary-sig-name">_get_all_languagepacks</span>(<span class="summary-sig-arg">self</span>)</span><br />
Collect all language packs and store them internally</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_all_languagepacks">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_compatible_languagepacks"></a><span class="summary-sig-name">_get_compatible_languagepacks</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">config</span>)</span><br />
Get language packs compatible with a customer variant</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_compatible_languagepacks">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_all_udas"></a><span class="summary-sig-name">_get_all_udas</span>(<span class="summary-sig-arg">self</span>)</span><br />
Collect all udas and store them internally</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_all_udas">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_all_mms"></a><span class="summary-sig-name">_get_all_mms</span>(<span class="summary-sig-arg">self</span>)</span><br />
Collect all mm's and store them internally</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_all_mms">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_all_mcs"></a><span class="summary-sig-name">_get_all_mcs</span>(<span class="summary-sig-arg">self</span>)</span><br />
Collect all mc's and store them internally</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_all_mcs">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_compatible_udas"></a><span class="summary-sig-name">_get_compatible_udas</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">config</span>)</span><br />
Get uda's compatible with a customer variant</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_compatible_udas">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_compatible_mms"></a><span class="summary-sig-name">_get_compatible_mms</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">config</span>)</span><br />
Get mm's compatible with a customer variant</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_compatible_mms">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_get_compatible_mcs"></a><span class="summary-sig-name">_get_compatible_mcs</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">config</span>)</span><br />
Get mc's compatible with a customer variant</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._get_compatible_mcs">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_write_file"></a><span class="summary-sig-name">_write_file</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">config</span>,
<span class="summary-sig-arg">romtype</span>,
<span class="summary-sig-arg">uda</span>,
<span class="summary-sig-arg">mm</span>,
<span class="summary-sig-arg">mc</span>)</span><br />
Write an xml flash configuration file</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._write_file">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr class="private">
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="_append_to_makefile"></a><span class="summary-sig-name">_append_to_makefile</span>(<span class="summary-sig-arg">self</span>,
<span class="summary-sig-arg">config</span>,
<span class="summary-sig-arg">romtype</span>)</span></td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter._append_to_makefile">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td width="15%" align="right" valign="top" class="summary">
<span class="summary-type"> </span>
</td><td class="summary">
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td><span class="summary-sig"><a name="write"></a><span class="summary-sig-name">write</span>(<span class="summary-sig-arg">self</span>)</span><br />
Go throught the config and creates the flash configuration files</td>
<td align="right" valign="top">
<span class="codelink"><a href="flash_config-pysrc.html#FlashConfigurationWriter.write">source code</a></span>
</td>
</tr>
</table>
</td>
</tr>
</table>
<!-- ==================== NAVIGATION BAR ==================== -->
<table class="navbar" border="0" width="100%" cellpadding="0"
bgcolor="#a0c0ff" cellspacing="0">
<tr valign="middle">
<!-- 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>
<th class="navbar" width="100%"></th>
</tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
<tr>
<td align="left" class="footer">
Generated by Epydoc 3.0beta1 on Wed Sep 09 13:44:18 2009
</td>
<td align="right" class="footer">
<a 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>