class Model extends MagicMethodHelper

This file provides autocompletion for XELOS modules.

This file is generated by the XELOS command line tool xf kickstart. It will be overwritten when new kickstart actions are performed.

All methods are accessible with $this->mod->model

Traits

Trait ObjectManager XELOS Framework

Properties

protected array $object_cache Each object created by a success call of __call or __get will be saved into this property to avoid a multiple creation of same objects and minimize performance loss. If the multiple creation of objects is desirable e.g. in factory classes, the caching can be disabled by setting xf_trait::factory_mode to true. from ObjectManager
protected array[] $registry The instantiation of a requested object can be processed only if the class of the object is registered with the class name as key and its information as array in this property. The element should have at least the class name or the relative path to "class" folder. from ObjectManager
protected string $lib_class_dir This property contains the path to the folder served as root for all requested classes. This folder can contains other folder or classes. All requested and registered classes will be searched in this folder by concating this path with the relative path defined in the registration of the requested class. If the class is not included it will be done on the fly. from ObjectManager
protected string $lib_class_prefix An optional possibility to pretend a prefix for all registered classes. from ObjectManager
protected string $ns_class_prefix An optional possibility to pretend a namespace prefix for classes have no namespace yet. from ObjectManager
protected bool $factory_mode This property effects the object cache. By default it is set to false to enable the object cache for all requested objects. If this property is set true, the object cache will be disabled. from ObjectManager
protected array $injection_objects This is an assoc array and contains objects that will be injected into each requested object. Each containing object will be injected by the name of the key. E.g. ['mod' => $object] this would inject the property named mod with the value of $object. from ObjectManager
protected bool $auto_init This property controls if the init method of requested objects is called by this trait or not. from ObjectManager
Controller $controller from MagicMethodHelper
bool $_skip_errors from MagicMethodHelper
Category $category
Post $post
Thread $thread
Votes $votes

Methods

mixed
__call($class, $args)

Magic method.

__construct(string $type, string $lib_class_prefix, Controller $controller, bool|string $old_lib_class_prefix = false, string $ns_prefix = null, string $class_suffix = '')

No description

mixed
__get($class)

Magic method.

bool
__isset($property)

Magic method.

__set($name, $value)

Magic method.

mixed
call_object($object)

No description

Category
category()

No description

string
get_lib_class_dir()

Returns the path to class directory.

string
get_lib_class_prefix()

Returns the defined prefix for all classes.

mixed
get_object(string $class, mixed $args = null, bool $call_init = true)

No description

array
get_object_cache()

Returns an array containing all objects were requested.

Category
new_category($category_id = NULL)

No description

Post
new_post($id = false)

No description

Thread
new_thread($id = false)

No description

Votes
new_votes($id = false)

No description

Post
post()

No description

set_injection_objects(array $objects)

Add given objects to injection object list that will be inject into object by magic call. The array should consists of property name as key and object as value.

set_lib_class_dir($lib_class_dir)

Sets the directory where classes are stored.

set_lib_class_prefix($lib_class_prefix)

Sets the class name prefix.

Thread
thread()

No description

Votes
votes()

No description

xelos_object_manager_init(bool $lib_class_dir, string $lib_class_prefix = '', string $ns_prefix = '')

trait constructor This method have to be called from constructor of each class that uses this trait.

Details

in ObjectManager at line 249
mixed __call($class, $args)

Magic method.

Returns the requested object. If the object is not cached, it will be instantiated with given arguments. This method calls xf_trait::get_object.

Parameters

$class
$args

Return Value

mixed

in MagicMethodHelper at line 39
__construct(string $type, string $lib_class_prefix, Controller $controller, bool|string $old_lib_class_prefix = false, string $ns_prefix = null, string $class_suffix = '')

Parameters

string $type Type ID of magic lib (e.g. model, action,...)
string $lib_class_prefix Prefix of classes, e.g. xm_calendar
Controller $controller Reference to Controller
bool|string $old_lib_class_prefix Optional Alternative Class Prefix (for old modules)
string $ns_prefix
string $class_suffix

in ObjectManager at line 231
mixed __get($class)

Magic method.

First it checks if the requested property is defined and returns it if null. If not defined of null, it calls xf_trait::get_object and returns its return value.

Parameters

$class

Return Value

mixed

in ObjectManager at line 199
bool __isset($property)

Magic method.

This method checks whether the property is defined or injected by __set. If not injected or defined, it will check the registry for an entry of requested property.

Parameters

$property

Return Value

bool

in ObjectManager at line 219
__set($name, $value)

Magic method.

Sets the given value by $name

Parameters

$name
$value

in MagicMethodHelper at line 137
mixed call_object($object)

Parameters

$object

Return Value

mixed

at line 34
Category category()

Return Value

Category

in ObjectManager at line 167
string get_lib_class_dir()

Returns the path to class directory.

Return Value

string

See also

xf_trait::lib_class_dir
xf_trait::get_lib_class_dir

in ObjectManager at line 177
string get_lib_class_prefix()

Returns the defined prefix for all classes.

Return Value

string

See also

xf_trait::lib_class_prefix

in MagicMethodHelper at line 60
mixed get_object(string $class, mixed $args = null, bool $call_init = true)

Parameters

string $class
mixed $args
bool $call_init

Return Value

mixed

Exceptions

BadMethodCallException

in ObjectManager at line 187
array get_object_cache()

Returns an array containing all objects were requested.

Return Value

array

See also

xf_trait::object_cache

at line 34
Category new_category($category_id = NULL)

Parameters

$category_id

Return Value

Category

at line 34
Post new_post($id = false)

Parameters

$id

Return Value

Post

at line 34
Thread new_thread($id = false)

Parameters

$id

Return Value

Thread

at line 34
Votes new_votes($id = false)

Parameters

$id

Return Value

Votes

at line 34
Post post()

Return Value

Post

in ObjectManager at line 125
set_injection_objects(array $objects)

Add given objects to injection object list that will be inject into object by magic call. The array should consists of property name as key and object as value.

Parameters

array $objects

in ObjectManager at line 141
set_lib_class_dir($lib_class_dir)

Sets the directory where classes are stored.

This folder can contains other folder or classes. All requested and registered classes will be searched in this folder by concating this path with the relative path defined in the registration of the requested class. If the class is not included it will be done on the fly.

Parameters

$lib_class_dir

in ObjectManager at line 156
set_lib_class_prefix($lib_class_prefix)

Sets the class name prefix.

An optional possibility to pretend a prefix for all registered classes. This prefix is only required in the class name of the requested object. The registered class name should not contains this prefix. E.g. a class called xf_foobar should be registered as foobar.

Parameters

$lib_class_prefix

at line 34
Thread thread()

Return Value

Thread

at line 34
Votes votes()

Return Value

Votes

in ObjectManager at line 103
xelos_object_manager_init(bool $lib_class_dir, string $lib_class_prefix = '', string $ns_prefix = '')

trait constructor This method have to be called from constructor of each class that uses this trait.

It sets the defaults and all necessary properties.

Parameters

bool $lib_class_dir
string $lib_class_prefix e.g. 'xf_'
string $ns_prefix e.g. "XELOS\Framework\Lib\"