Files
fdn2/private/lib/constrained/ConstrainedFactory.php
T
Riccardo Di Dato b8a9e5e599 Correzioni al dao (save Tested)
Modifiche ai model
Rimossa la constrained interface in quanto inefficace e troppo pesante
2016-01-08 22:21:17 +01:00

37 lines
654 B
PHP

<?php
/*
Author: Riccardo Di Dato
Creation Date: 08/gen/2016
*/
class ConstrainedFactory {
public static function build($obj){
$rval = $obj;
if ($obj instanceof ConstrainedInterface){
$rval = clone $obj;
}
else if (is_object($obj)){
$rval = new ConstrainedObject($obj);
}
else if (is_array($obj)){
$rval = new ConstrainedArrayObject($obj);
}
return $rval;
}
public static function debuild($obj){
$rval = $obj;
if ($obj instanceof ConstrainedInterface){
$rval = new stdClass();
$tmp = $obj->getBase();
foreach ($tmp as $key=>$val){
$rval->$key = self::debuild($val);
}
}
return $rval;
}
}
?>