Stud.IP  jlu_3.3 Revision
File Class Reference
Inheritance diagram for File:
Inheritance graph
Collaboration diagram for File:
Collaboration graph

Public Member Functions

 delete ()
 
 getLinks ()
 
 getStoragePath ()
 
 getStorageObject ()
 
 isReadable ()
 
 isWritable ()
 
 open ($mode)
 
 setContentFromFile ($file)
 
 update ()
 
 checkAccess ($user_id=null, $throw_exception=true)
 
- 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)
 
 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)
 
 setData ($data, $reset=false)
 
 haveData ()
 
 isNew ()
 
 isDeleted ()
 
 setNew ($is_new)
 
 getWhereQuery ()
 
 restore ()
 
 store ()
 
 triggerChdate ()
 
 delete ()
 
 isDirty ()
 
 isFieldDirty ($field)
 
 revertValue ($field)
 
 getPristineValue ($field)
 
 initRelation ($relation)
 
 resetRelation ($relation)
 

Static Public Member Functions

static get ($id)
 
- Static Public Member Functions inherited from SimpleORMap
static expireTableScheme ()
 
static find ($id)
 
static exists ($id)
 
static countBySql ($sql=1, $params=array())
 
static create ($data)
 
static build ($data, $is_new=true)
 
static buildExisting ($data)
 
static import ($data)
 
static findBySQL ($sql, $params=array())
 
static findByObject (SimpleORMap $object)
 
static findOneBySQL ($where, $params=array())
 
static findThru ($foreign_key_value, $options)
 
static findEachBySQL ($callable, $sql, $params=array())
 
static findMany ($pks=array(), $order='', $order_params=array())
 
static findEachMany ($callable, $pks=array(), $order='', $order_params=array())
 
static findAndMapBySQL ($callable, $where, $params=array())
 
static findAndMapMany ($callable, $pks=array(), $order='', $order_params=array())
 
static deleteBySQL ($where, $params=array())
 
static toObject ($id_or_object)
 
static __callStatic ($name, $arguments)
 

Static Protected Member Functions

static configure ($config=array())
 
- Static Protected Member Functions inherited from SimpleORMap
static configure ($config=array())
 
static tableScheme ($db_table)
 

Protected Attributes

 $storage_object
 
- Protected Attributes inherited from SimpleORMap
 $content = array()
 
 $content_db = array()
 
 $is_new = true
 
 $is_deleted = false
 
 $db_table = ''
 
 $db_fields = null
 
 $pk = null
 
 $default_values = array()
 
 $serialized_fields = array()
 
 $alias_fields = array()
 
 $additional_fields = array()
 
 $relations = array()
 
 $has_many = array()
 
 $has_one = array()
 
 $belongs_to = array()
 
 $has_and_belongs_to_many = array()
 
 $registered_callbacks
 
 $known_slots = array()
 
 $reserved_slots = array('value','newid','iterator','tablemetadata', 'relationvalue','wherequery','relationoptions','data','new','id')
 
 $notification_map = array()
 
 $additional_data = array()
 

Static Protected Attributes

static $object_cache = array()
 
- Static Protected Attributes inherited from SimpleORMap
static $schemes = null
 
static $config = array()
 

Additional Inherited Members

- 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)
 
 getTableScheme ()
 
 storeRelations ($only_these=null)
 
 deleteRelations ()
 
 initializeContent ()
 
 applyCallbacks ($type)
 
 registerCallback ($types, $cb)
 
 unregisterCallback ($types, $cb)
 
 cbAutoIncrementColumn ($type)
 
 cbAutoKeyCreation ()
 
 cbNotificationMapper ($cb_type)
 
 setSerializedValue ($field, $value)
 

Detailed Description

File.php

Class to represent files and directories in the database. Should probably use SimpleORMap. Does this work for factory classes like this?.

Copyright (c) 2013 Elmar Ludwig

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Member Function Documentation

◆ checkAccess()

checkAccess (   $user_id = null,
  $throw_exception = true 
)

Checks whether a user has access to the current file.

Parameters
mixed$user_idId of the user or null for current user (default)
bool$throw_exceptionThrow an AccessDeniedException instead of returning false
Returns
bool indicating whether the user may access this file
Exceptions
AccessDeniedExceptionif $throw_exception is true and the user may not access this file

Reimplemented in RootDirectory.

◆ configure()

static configure (   $config = array())
staticprotected

Configures this model

Reimplemented from SimpleORMap.

Reimplemented in StudipDirectory.

◆ delete()

delete ( )

Delete all the links to this file and the file itself.

Reimplemented from SimpleORMap.

Reimplemented in RootDirectory, and StudipDirectory.

Here is the call graph for this function:

◆ get()

static get (   $id)
static

Get a file object for the given id. May be file or directory. If the file does not exist, a new (virtual) RootDirectory is created for this id. TODO Is this a good idea?

Parameters
string$idfile id
Returns
File File object
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLinks()

getLinks ( )

Return the links to this file (directory entries). Each file can be linked into mutiple directories, like on a POSIX file system. The file is deleted when the link count drops to zero.

Returns
array array of DirectoryEntry objects
Here is the call graph for this function:

◆ getStorageObject()

getStorageObject ( )

Return the Storage Opject from File.

Returns
Storage Object

◆ getStoragePath()

getStoragePath ( )

Return the file's storage path.

Returns
string storage path
Here is the caller graph for this function:

◆ isReadable()

isReadable ( )

Check if the file's backend allows reading of files.

Returns
boolean TRUE or FALSE

Reimplemented in StudipDirectory.

◆ isWritable()

isWritable ( )

Check if the file's backend allows writing of files.

Returns
boolean TRUE or FALSE

Reimplemented in StudipDirectory.

◆ open()

open (   $mode)

Open a PHP stream resource for this file. Access mode parameter works just like fopen.

Parameters
string$modeaccess mode (see fopen)
Returns
resource file handle

Reimplemented in StudipDirectory.

Here is the caller graph for this function:

◆ setContentFromFile()

setContentFromFile (   $file)

Sets the contents of the file from another file.

Here is the call graph for this function:

◆ update()

update ( )

Update this file's metadata if the content has changed. Note: This needs to be called after each update of the file.

Reimplemented in StudipDirectory.

Here is the call graph for this function:
Here is the caller graph for this function:

Field Documentation

◆ $object_cache

$object_cache = array()
staticprotected

◆ $storage_object

$storage_object
protected

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