Stud.IP  trunk Revision
Base Class Reference
Inheritance diagram for Base:
Inheritance graph
Collaboration diagram for Base:
Collaboration graph

Public Member Functions

 __construct ($id=null, $user=null)
 
 getPermissions ()
 
 setUser ($user)
 
 hasUser ()
 
 getUser ()
 
- Public Member Functions inherited from SimpleORMap
 __construct ($id=null)
 
 __clone ()
 
 getRelationOptions ($relation)
 
 getTableMetadata ()
 
 hasAutoIncrementColumn ()
 
 setId ($id)
 
 getId ()
 
 getNewId ()
 
 toArray ($only_these_fields=null)
 
 toRawArray ($only_these_fields=null)
 
 toArrayRecursive ($only_these_fields=null)
 
 getValue ($field)
 
 getRelationValue ($relation, $field)
 
 getDefaultValue ($field)
 
 setValue ($field, $value)
 
 __get ($field)
 
 __set ($field, $value)
 
 __isset ($field)
 
 offsetExists ($offset)
 
 offsetGet ($offset)
 
 offsetSet ($offset, $value)
 
 offsetUnset ($offset)
 
 getIterator ()
 
 count ()
 
 isField ($field)
 
 isAdditionalField ($field)
 
 isAliasField ($field)
 
 isI18nField ($field)
 
 setData ($data, $reset=false)
 
 isNew ()
 
 isDeleted ()
 
 setNew ($is_new)
 
 getWhereQuery ()
 
 restore ()
 
 store ()
 
 triggerChdate ()
 
 delete ()
 
 isDirty ()
 
 isFieldDirty ($field)
 
 revertValue ($field)
 
 getPristineValue ($field)
 
 initRelation ($relation)
 
 resetRelation ($relation)
 
 cleanup ()
 

Static Public Member Functions

static detect ($request_type=null)
 
static addType ($type, $class)
 
static removeType ($type)
 
static find ($id)
 
static findAll ()
 
static create ($type)
 
static detectConsumer ($type=null, $request_type=null)
 
- Static Public Member Functions inherited from SimpleORMap
static tableScheme ($db_table)
 
static expireTableScheme ()
 
static find ($id)
 
static exists ($id)
 
static countBySql ($sql=1, $params=[])
 
static create ($data)
 
static build ($data, $is_new=true)
 
static buildExisting ($data)
 
static import ($data)
 
static findBySQL ($sql, $params=[])
 
static findOneBySQL ($where, $params=[])
 
static findThru ($foreign_key_value, $options)
 
static findEachBySQL ($callable, $sql, $params=[])
 
static findMany ($pks=[], $order='', $order_params=[])
 
static findEachMany ($callable, $pks=[], $order='', $order_params=[])
 
static findAndMapBySQL ($callable, $where, $params=[])
 
static findAndMapMany ($callable, $pks=[], $order='', $order_params=[])
 
static deleteBySQL ($where, $params=[])
 
static toObject ($id_or_object)
 
static __callStatic ($name, $arguments)
 

Static Protected Member Functions

static configure ($config=[])
 
- Static Protected Member Functions inherited from SimpleORMap
static configure ($config=[])
 
static config ($key)
 

Protected Attributes

 $user = null
 
- Protected Attributes inherited from SimpleORMap
 $content = []
 
 $content_db = []
 
 $is_new = true
 
 $is_deleted = false
 
 $db_table = ''
 
 $db_fields = null
 
 $pk = null
 
 $default_values = []
 
 $serialized_fields = []
 
 $alias_fields = []
 
 $i18n_fields = []
 
 $additional_fields = []
 
 $relations = []
 
 $has_many = []
 
 $has_one = []
 
 $belongs_to = []
 
 $has_and_belongs_to_many = []
 
 $registered_callbacks = []
 
 $known_slots = []
 
 $notification_map = []
 
 $additional_data = []
 
 $getter_setter_map = []
 

Static Protected Attributes

static $known_types = []
 
- Static Protected Attributes inherited from SimpleORMap
static $config = []
 
static $reserved_slots = ['value','newid','iterator','tablemetadata', 'relationvalue','wherequery','relationoptions','data','new','id']
 

Additional Inherited Members

- Data Fields inherited from SimpleORMap
const ID_SEPARATOR = '_'
 
- Static Public Attributes inherited from SimpleORMap
static $schemes = null
 
- Protected Member Functions inherited from SimpleORMap
 _getId ($field)
 
 _setId ($field, $value)
 
 _getAdditionalValueFromRelation ($field)
 
 _setAdditionalValueFromRelation ($field, $value)
 
 _getAdditionalValue ($field)
 
 _setAdditionalValue ($field, $value)
 
 parseRelationOptions ($type, $name, $options)
 
 storeRelations ($only_these=null)
 
 deleteRelations ()
 
 initializeContent ()
 
 applyCallbacks ($type)
 
 registerCallback ($types, $cb)
 
 unregisterCallback ($types, $cb)
 
 cbAutoIncrementColumn ($type)
 
 cbAutoKeyCreation ()
 
 cbNotificationMapper ($cb_type)
 
 cbAfterInitialize ($cb_type)
 
 setSerializedValue ($field, $value)
 
 setI18nValue ($field, $value)
 
 cbI18N ($type)
 

Detailed Description

Base consumer class for the rest api

Consumers provide means for authenticating a user and the access permissions for routes are bound to specific consumers.

Author
Jan-Hendrik Willms tleil.nosp@m.ax+s.nosp@m.tudip.nosp@m.@gma.nosp@m.il.co.nosp@m.m GPL 2 or later
Since
Stud.IP 3.0

Constructor & Destructor Documentation

◆ __construct()

__construct (   $id = null,
  $user = null 
)

Extended SimpleORMap constructor. A certain user can be injected upon creation.

Parameters
mixed$idId of the consumer or null to create a new one
mixed$userEither a user object or id to inject to the consumer or null if no user should be injected
Here is the call graph for this function:

Member Function Documentation

◆ addType()

static addType (   $type,
  $class 
)
static

Add a consumer type to the list of consumer types

Parameters
String$typeName of the type
String$classAssociated consumer class

◆ configure()

static configure (   $config = [])
staticprotected

Configures the model.

Parameters
array$configConfiguration array

◆ create()

static create (   $type)
static

Creates a new consumer of the given type.

Parameters
String$typeName of the type
Returns
RESTAPI Consumer object of the given (derived from consumer base type)
Exceptions
Exceptionif type is invalid
Here is the caller graph for this function:

◆ detect()

static detect (   $request_type = null)
staticabstract

Each consumer type has to implement a detect feature which should extract crucial information from the request and return an instance of itself if the consumer detects a valid signature it can respond to.

Parameters
mixed$request_typeType of request (optional; defaults to any)
Returns
mixed Detected consumer object or false

◆ detectConsumer()

static detectConsumer (   $type = null,
  $request_type = null 
)
static

This method is used to detect a consumer (of a specific type) by executing the detect method on all known consumer types.

Parameters
mixed$typeName of the type (optional; defaults to all types)
mixed$request_typeType of request (optional; defaults to any)
Returns
mixed Either the detected consumer or false if no consumer was detected
Exceptions
Exceptionif type is invalid
Here is the caller graph for this function:

◆ find()

static find (   $id)
static

Overloaded find method. Will return a concrete specialized consumer object of the associated type.

Parameters
String$idId of the consumer
Returns
RESTAPI Associated consumer object (derived from consumer base type)
Exceptions
Exceptionif either consumer id or consumer type is invalid
Here is the call graph for this function:
Here is the caller graph for this function:

◆ findAll()

static findAll ( )
static

Returns a list of all known consumers.

Returns
Array List of all known consumers (as specialized consumer objects)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getPermissions()

getPermissions ( )

Retrieve the api permissions associated with this consumer.

Returns
RESTAPI Permission object for this consumer

◆ getUser()

getUser ( )

Return the injected user.

Parameters
mixedUser object or false if no user was injected

◆ hasUser()

hasUser ( )

Returns whether the consumer has an injected user or not.

Returns
bool True if a valid user is found, false otherwise
Here is the caller graph for this function:

◆ removeType()

static removeType (   $type)
static

Removes a consumer type from the list of consumer types

Parameters
String$typeName of the type

◆ setUser()

setUser (   $user)

Inject a user to this consumer. Injecting in this context refers to "having a user authenticated by this consumer".

Parameters
mixed$userEither a user object or a user id
Returns
RESTAPI Returns instance of self to allow chaining
Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ $known_types

$known_types = []
staticprotected

Stores all known consumer types

◆ $user

$user = null
protected

Contains user information


The documentation for this class was generated from the following file: