Undefined offset: 0

Location: Line 18 of /var/www/recess/recess/lib/recess/database/orm/annotations/TableAnnotation.class.php

  • 14:class TableAnnotation extends ModelAnnotation {
  • 15:    public $table;
  • 16:    
  • 17:    function init($array) {
  • 18:        $this->table $array[0];    
  • 19:    }
  • 20:    
  • 21:    function massage(ModelDescriptor &$descriptor) {
  • 22:        $descriptor->setTable($this->table);
  • 23:    }

Local Context

Name Type Value
$array array
Array[0]

Call Stack

  • 11
    Diagnostics::handleError( Array )
    • called at Line 18 of /var/www/recess/recess/lib/recess/database/orm/annotations/TableAnnotation.class.php

    Arguments Passed In

    Type Value
    array
    Array[0]

    Called From

    • 14:class TableAnnotation extends ModelAnnotation {
    • 15:    public $table;
    • 16:    
    • 17:    function init($array) {
    • 18:        $this->table $array[0];    
    • 19:    }
    • 20:    
    • 21:    function massage(ModelDescriptor &$descriptor) {
    • 22:        $descriptor->setTable($this->table);
    • 23:    }
  • 10
    TableAnnotation->init( '/** * !Database Default * !Table */' )
    • called at Line 57 of /var/www/recess/recess/lib/recess/lang/Annotation.class.php

    Arguments Passed In

    Type Value
    string '/** * !Database Default * !Table */'

    Called From

    • 53:            $annotationClass $annotation 'Annotation';
    • 54:            
    • 55:            if(in_array($annotationClass,get_declared_classes())) { // TODO: Less expensive way of handling this than calling get_declared_classes?
    • 56:                $annotation = new $annotationClass;
    • 57:                $annotation->init($array);
    • 58:            } else {
    • 59:                throw new UnknownAnnotationException('Unknown annotation: "' $annotation '"',0,0,'',0,get_defined_vars());
    • 60:            }
    • 61:            
    • 62:            $returns[] = $annotation;
  • 9
    Annotation::parse()
    • called at Line 56 of /var/www/recess/recess/lib/recess/lang/RecessReflectionClass.class.php

    Called From

    • 52:        if($docstring == '') return array();
    • 53:        else {
    • 54:            $returns = array();
    • 55:            try {
    • 56:                $returns Annotation::parse($docstring);
    • 57:            } catch(InvalidAnnotationValueException $e) {            
    • 58:                throw new InvalidAnnotationValueException('In class "' $this->name '".' $e->getMessage(),0,0,$this->getFileName(),$this->getStartLine(),array());
    • 59:            } catch(UnknownAnnotationException $e) {
    • 60:                throw new UnknownAnnotationException('In class "' $this->name '".' $e->getMessage(),0,0,$this->getFileName(),$this->getStartLine(),array());
    • 61:            }
  • 8
    RecessReflectionClass->getAnnotations( 'Post' )
    • called at Line 164 of /var/www/recess/recess/lib/recess/database/orm/Model.class.php

    Arguments Passed In

    Type Value
    string 'Post'

    Called From

    • 160:        } catch(ReflectionException $e) {
    • 161:            throw new RecessException('Class "' $class '" has not been declared.'get_defined_vars());
    • 162:        }
    • 163:        
    • 164:        $annotations $reflection->getAnnotations();
    • 165:        foreach($annotations as $annotation) {
    • 166:            if($annotation instanceof ModelAnnotation) {
    • 167:                $annotation->massage($descriptor);
    • 168:            }
    • 169:        }
  • 6
    call_user_func( Array, 'Post' )
    • called at Line 83 of /var/www/recess/recess/lib/recess/lang/RecessObject.class.php

    Arguments Passed In

    Type Value
    string 'Post'

    Called From

    • 79:            $descriptor Cache::get($cache_key);
    • 80:            
    • 81:            if($descriptor === false) {                
    • 82:                if($instance instanceof RecessObject) {
    • 83:                    $descriptor call_user_func(array($class'buildClassDescriptor'), $class);
    • 84:                    Cache::set($cache_key$descriptor);
    • 85:                    self::$descriptors[$class] = $descriptor;
    • 86:                } else {
    • 87:                    throw new RecessException('RecessObjectRegistry only retains information on classes derived from RecessObject. Class of type "' $class '" given.'get_defined_vars());
    • 88:                }
  • 5
    RecessObject::getClassDescriptor( 'Post' )
    • called at Line 97 of /var/www/recess/recess/lib/recess/database/orm/Model.class.php

    Arguments Passed In

    Type Value
    string 'Post'

    Called From

    • 93:     * @param mixed $class
    • 94:     * @return string Primary key name ie'id'
    • 95:     */
    • 96:    static function primaryKeyName($class) {
    • 97:        return self::getClassDescriptor($class)->primaryKey;
    • 98:    }
    • 99:    
    • 100:    /**
    • 101:     * Get a relationship on a class or instance by the relationship's name.
    • 102:     *
  • 4
    Model::primaryKeyName( 'Post' )
    • called at Line 308 of /var/www/recess/recess/lib/recess/apps/tools/controllers/RecessToolsAppsController.class.php

    Arguments Passed In

    Type Value
    string 'FirstAppApplication'
    string 'Post'

    Called From

    • 304:        $replacements 
    • 305:            array(    'modelName' => $model
    • 306:                    'modelNameLower' => Inflector::toCamelCaps($model),
    • 307:                    'fullyQualifiedModel' => $app->modelsPrefix $model
    • 308:                    'primaryKey' => Model::primaryKeyName($model),
    • 309:                    'viewsPrefix' => Inflector::toCamelCaps($model),
    • 310:                    'routesPrefix' => Inflector::toCamelCaps($model),);
    • 311:        
    • 312:        $this->messages[] = $this->tryGeneratingFile('RESTful ' $model ' Controller'$this->application->codeTemplatesDir 'scaffolding/controllers/ResourceController.template.php'$controllersDir $model 'Controller.class.php'$replacements);
    • 313:        
  • 2
    ReflectionMethod->invokeArgs( 'FirstAppApplication', 'Post' )
    • called at Line 171 of /var/www/recess/recess/lib/recess/framework/controllers/Controller.class.php

    Arguments Passed In

    Type Value
    Request
    Request
    MemberValue
    format'xhtml'
    headers
    Array[9]
    KeyValue
    HOST'127.0.0.1'
    USER_AGENT'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.5) Gecko/2008121623 Ubuntu/8.10 (intrepid) Firefox/3.0.5'
    ACCEPT'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
    ACCEPT_LANGUAGE'en-us,en;q=0.5'
    ACCEPT_ENCODING'gzip,deflate'
    ACCEPT_CHARSET'ISO-8859-1,utf-8;q=0.7,*;q=0.7'
    KEEP_ALIVE'300'
    CONNECTION'keep-alive'
    REFERER'http://127.0.0.1/recess/recess/apps/app/FirstAppApplication/model/gen'
    resource'/recess/apps/FirstAppApplication/model/Post/scaffolding'
    resourceParts
    Array[6]
    KeyValue
    0'recess'
    1'apps'
    2'FirstAppApplication'
    3'model'
    4'Post'
    5'scaffolding'
    method'GET'
    get
    Array[0]
    post
    Array[0]
    put
    Array[0]
    cookies
    Array[0]
    meta
    Meta
    MemberValue
    app
    RecessToolsApplication
    MemberValue
    codeTemplatesDir'/var/www/recess/recess/lib/recess/apps/tools/templates/'
    name'Recess Tools'
    controllersPrefix'recess.apps.tools.controllers.'
    modelsPrefix'recess.apps.tools.models.'
    viewsDir'/var/www/recess/recess/lib/recess/apps/tools/views/'
    routingPrefix'recess/'
    controllerMethod'generateScaffolding'
    controllerMethodArguments
    Array[2]
    KeyValue
    model'Post'
    app'FirstAppApplication'
    useAssociativeArguments1
    username
    password

    Called From

    • 167:            } catch(RecessException $e) {
    • 168:                throw new RecessException('Error calling method "' $methodName '" in "' get_class($this) . '". ' $e->getMessage(), array());
    • 169:            }
    • 170:            
    • 171:            $response $method->invokeArgs($this$callArguments);
    • 172:        } else {
    • 173:            throw new RecessException('Error calling method "' $methodName '" in "' get_class($this) . '". Method does not exist.', array());
    • 174:        }
    • 175:
    • 176:        if(!$response instanceof Response) {
  • 1
    Controller->serve( RecessToolsAppsController, Array )
    • called at Line 41 of /var/www/recess/recess/lib/recess/Recess.class.php

    Arguments Passed In

    Type Value
    Request
    Request
    MemberValue
    format'xhtml'
    headers
    Array[9]
    KeyValue
    HOST'127.0.0.1'
    USER_AGENT'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.5) Gecko/2008121623 Ubuntu/8.10 (intrepid) Firefox/3.0.5'
    ACCEPT'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
    ACCEPT_LANGUAGE'en-us,en;q=0.5'
    ACCEPT_ENCODING'gzip,deflate'
    ACCEPT_CHARSET'ISO-8859-1,utf-8;q=0.7,*;q=0.7'
    KEEP_ALIVE'300'
    CONNECTION'keep-alive'
    REFERER'http://127.0.0.1/recess/recess/apps/app/FirstAppApplication/model/gen'
    resource'/recess/apps/FirstAppApplication/model/Post/scaffolding'
    resourceParts
    Array[6]
    KeyValue
    0'recess'
    1'apps'
    2'FirstAppApplication'
    3'model'
    4'Post'
    5'scaffolding'
    method'GET'
    get
    Array[0]
    post
    Array[0]
    put
    Array[0]
    cookies
    Array[0]
    meta
    Meta
    MemberValue
    app
    RecessToolsApplication
    MemberValue
    codeTemplatesDir'/var/www/recess/recess/lib/recess/apps/tools/templates/'
    name'Recess Tools'
    controllersPrefix'recess.apps.tools.controllers.'
    modelsPrefix'recess.apps.tools.models.'
    viewsDir'/var/www/recess/recess/lib/recess/apps/tools/views/'
    routingPrefix'recess/'
    controllerMethod'generateScaffolding'
    controllerMethodArguments
    Array[2]
    KeyValue
    model'Post'
    app'FirstAppApplication'
    useAssociativeArguments1
    username
    password
    DefaultPolicy
    DefaultPolicy
    MemberValue
    array
    Array[3]
    KeyValue
    0
    RecessToolsApplication
    MemberValue
    codeTemplatesDir'/var/www/recess/recess/lib/recess/apps/tools/templates/'
    name'Recess Tools'
    controllersPrefix'recess.apps.tools.controllers.'
    modelsPrefix'recess.apps.tools.models.'
    viewsDir'/var/www/recess/recess/lib/recess/apps/tools/views/'
    routingPrefix'recess/'
    1
    WelcomeApplication
    MemberValue
    name'Welcome to Recess'
    controllersPrefix'welcome.controllers.'
    modelsPrefix'welcome.models.'
    viewsDir'/var/www/recess/apps/welcome/views/'
    routingPrefix'/'
    2
    FirstAppApplication
    MemberValue
    name'My First Recess App'
    controllersPrefix'firstApp.controllers.'
    modelsPrefix'firstApp.models.'
    viewsDir'/var/www/recess/apps/firstApp/views/'
    routingPrefix'firstApp/'
    RtNode
    RtNode
    MemberValue
    array
    Array[0]

    Called From

    • 37:        
    • 38:        // $controller = $pluggedPolicy->getControllerFor($request, $routing);
    • 39:        $controller $pluggedPolicy->getControllerFor($request$apps$routes);
    • 40:        
    • 41:        $response $controller->serve($request);
    • 42:        
    • 43:        $view $pluggedPolicy->getViewFor($response);
    • 44:        
    • 45:        ob_start();
    • 46:        
  • 0
    Recess::main( Request )
    • called at Line 22 of /var/www/recess/bootstrap.php

    Called From

    • 18:Library::import('recess.http.Environment');
    • 19:Library::import('recess.Recess');
    • 20:
    • 21:// Entry point to Recess!
    • 22:Recess::main(Environment::getRawRequest(), RecessConf::$policyRecessConf::$applicationsRecessConf::getRoutes(), RecessConf::$plugins);
    • 23:
    • 24:// RecessConf follows...
    • 25:
    • 26:abstract class RecessConf {
    • 27: