r4060 Add some cleanups and comments:
authorDenis Ovsienko <infrastation@yandex.ru>
Thu, 23 Dec 2010 22:58:55 +0000 (22:58 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Thu, 23 Dec 2010 22:58:55 +0000 (22:58 +0000)
gotClearanceForTagChain(): make use of exceptions
getFile(): idem
markAllSpans(): dismiss obsolete assertion
getPrevIDforRack(): idem
getNextIDforRack(): idem
getRSUforRack(): idem
getRSUforRackRow(): idem
buildLVSConfig(): idem

inc/auth.php
inc/code.php
inc/database.php
inc/functions.php

index 45eaf90..a368f13 100644 (file)
@@ -164,8 +164,7 @@ function gotClearanceForTagChain ($const_base)
                                                case 'LEX_DENY':
                                                        return FALSE;
                                                default:
-                                                       showWarning ("Condition match for unknown grant decision '${sentence['decision']}'", __FUNCTION__);
-                                                       break;
+                                                       throw new RackTablesError ("Condition match for unknown grant decision '${sentence['decision']}'", RackTablesError::INTERNAL)
                                        }
                                break;
                        case 'SYNT_ADJUSTMENT':
@@ -177,8 +176,7 @@ function gotClearanceForTagChain ($const_base)
                                        $impl_tags = getImplicitTags ($expl_tags); // recalculate
                                break;
                        default:
-                               showWarning ("Can't process sentence of unknown type '${sentence['type']}'", __FUNCTION__);
-                               break;
+                               throw new RackTablesError ("Can't process sentence of unknown type '${sentence['type']}'", RackTablesError::INTERNAL)
                }
        }
        return FALSE;
index 0549bbe..013e512 100644 (file)
@@ -67,6 +67,7 @@ function lexError4 ($s, $ln = 'N/A')
  * LEX_REMOVE
  * LEX_ON
  *
+ * FIXME: would these work better as normal (integer) constants?
  */
 function getLexemsFromRawText ($text)
 {
index cf5c548..53ad679 100644 (file)
@@ -3467,7 +3467,7 @@ function getFilesOfEntity ($entity_type = NULL, $entity_id = 0)
        return $ret;
 }
 
-function getFile ($file_id = 0)
+function getFile ($file_id)
 {
        $query = usePreparedSelectBlade
        (
@@ -3476,10 +3476,8 @@ function getFile ($file_id = 0)
                array ($file_id)
        );
        if (($row = $query->fetch (PDO::FETCH_ASSOC)) == NULL)
-       {
-               showWarning ('Query succeeded, but returned no data', __FUNCTION__);
-               $ret = NULL;
-       }
+               // FIXME: isn't this repeating the code already in spotEntity()?
+               throw new EntityNotFoundException ('file', $file_id);
        else
        {
                $ret = array();
@@ -3500,7 +3498,7 @@ function getFile ($file_id = 0)
        return $ret;
 }
 
-function getFileCache ($file_id = 0)
+function getFileCache ($file_id)
 {
        $query = usePreparedSelectBlade
        (
@@ -3532,7 +3530,7 @@ function commitAddFileCache ($file_id, $contents)
        }
 }               
 
-function getFileLinks ($file_id = 0)
+function getFileLinks ($file_id)
 {
        $query = usePreparedSelectBlade
        (
index 4ac3b8a..6fa9fb4 100644 (file)
@@ -295,13 +295,8 @@ function markSpan (&$rackData, $startRow, $maxheight, $template_idx)
 // This function sets rowspan/solspan/skipped atom attributes for renderRack()
 // What we actually have to do is to find _all_ possible rectangles for each unit
 // and then select the widest of those with the maximal square.
-function markAllSpans (&$rackData = NULL)
+function markAllSpans (&$rackData)
 {
-       if ($rackData == NULL)
-       {
-               showWarning ('Invalid rackData', __FUNCTION__);
-               return;
-       }
        for ($i = $rackData['height']; $i > 0; $i--)
                while (markBestSpan ($rackData, $i));
 }
@@ -581,13 +576,8 @@ function l2addressFromDatabase ($string)
 // The following 2 functions return previous and next rack IDs for
 // a given rack ID. The order of racks is the same as in renderRackspace()
 // or renderRow().
-function getPrevIDforRack ($row_id = 0, $rack_id = 0)
+function getPrevIDforRack ($row_id, $rack_id)
 {
-       if ($row_id <= 0 or $rack_id <= 0)
-       {
-               showWarning ('Invalid arguments passed', __FUNCTION__);
-               return NULL;
-       }
        $rackList = listCells ('rack', $row_id);
        doubleLink ($rackList);
        if (isset ($rackList[$rack_id]['prev_key']))
@@ -595,13 +585,8 @@ function getPrevIDforRack ($row_id = 0, $rack_id = 0)
        return NULL;
 }
 
-function getNextIDforRack ($row_id = 0, $rack_id = 0)
+function getNextIDforRack ($row_id, $rack_id)
 {
-       if ($row_id <= 0 or $rack_id <= 0)
-       {
-               showWarning ('Invalid arguments passed', __FUNCTION__);
-               return NULL;
-       }
        $rackList = listCells ('rack', $row_id);
        doubleLink ($rackList);
        if (isset ($rackList[$rack_id]['next_key']))
@@ -720,13 +705,8 @@ function execGMarker ($line)
 
 // rackspace usage for a single rack
 // (T + W + U) / (height * 3 - A)
-function getRSUforRack ($data = NULL)
+function getRSUforRack ($data)
 {
-       if ($data == NULL)
-       {
-               showWarning ('Invalid argument', __FUNCTION__);
-               return NULL;
-       }
        $counter = array ('A' => 0, 'U' => 0, 'T' => 0, 'W' => 0, 'F' => 0);
        for ($unit_no = $data['height']; $unit_no > 0; $unit_no--)
                for ($locidx = 0; $locidx < 3; $locidx++)
@@ -735,13 +715,8 @@ function getRSUforRack ($data = NULL)
 }
 
 // Same for row.
-function getRSUforRackRow ($rowData = NULL)
+function getRSUforRackRow ($rowData)
 {
-       if ($rowData === NULL)
-       {
-               showWarning ('Invalid argument', __FUNCTION__);
-               return NULL;
-       }
        if (!count ($rowData))
                return 0;
        $counter = array ('A' => 0, 'U' => 0, 'T' => 0, 'W' => 0, 'F' => 0);
@@ -1579,13 +1554,8 @@ function apply_macros ($macros, $subject, &$error_macro_stat)
 }
 
 // throws RTBuildLVSConfigError exception if undefined macros found
-function buildLVSConfig ($object_id = 0)
+function buildLVSConfig ($object_id)
 {
-       if ($object_id <= 0)
-       {
-               showWarning ('Invalid argument', __FUNCTION__);
-               return;
-       }
        $oInfo = spotEntity ('object', $object_id);
        $defaults = getSLBDefaults (TRUE);
        $lbconfig = getSLBConfig ($object_id);