Returns properties created using the __set magic method either as an array or an object
if the @param $asObject is set to true.

@param 	$asObject <Boolean>
@access 	public
@static
@return 	<Mixed>
321841
public function getSoftProperties(Bool $asObject=false)
	{
		if ($asObject == true) {
			return (Object) $this->softProperties;
		}

		return $this->softProperties;
	}
555363
final public function objectPropertiesToCamel($snakeObject)
    {
        // hold the object of new values
        $camelObject = new \stdClass();
        foreach ($snakeObject as $key => $value) {
            // tricky recursive for objects or arrays
            if (is_object($value)) {
                $value = $this->objectPropertiesToCamel($value);
            } elseif (is_array($value)) {
                $value = $this->arrayKeysToCamel($value);
            }
            $camelObject->{$this->camelize($key)} = $value;
            unset($snakeObject[$key]);
        }
        return $camelObject;
    }
1007345
public function getUuid(bool $asObject = false)
    {
        if (true === $asObject) {
            return UuidIdentifier::fromString($this->uuid);
        }

        return $this->uuid;
    }
165983
public function getTransitions($object, $graph = 'default', $asObject = false)
    {
        if (!$asObject) {
            return $this->getStateMachine($object, $graph)->getCurrentState()->getTransitions();
        }

        $stateMachine = $this->getStateMachine($object, $graph);

        return array_map(
            function ($transition) use ($stateMachine) {
                return $stateMachine->getTransition($transition);
            },
            $stateMachine->getCurrentState()->getTransitions()
        );
    }
798216
protected function objectProperties($object)
    {
        $properties = array();
        $reflector = new ReflectionObject($object);

        while ($reflector) {
            foreach ($reflector->getProperties() as $property) {
                if ($property->isStatic()) {
                    continue;
                }

                $key = sprintf(
                    '%s::%s',
                    $property->getDeclaringClass()->getName(),
                    $property->getName()
                );

                $property->setAccessible(true);
                $properties[$key] = $property->getValue($object);
            }

            $reflector = $reflector->getParentClass();
        }

        return $properties;
    }
608353
private static function getModelFromDBObject($dbObject)
    {
        $modelName = get_called_class();
        $object = new $modelName();
        foreach ($dbObject as $column => $val) {
            $object->$column = $val;
        }

        return $object;
    }
1370603
public function isLabelSet($object)
    {
        $this->reflectionProperty->setAccessible(true);
        $v = $this->reflectionProperty->getValue($object);
        if (true === $v) {
            return true;
        }

        return false;
    }
545233
static public function fetch( $blockID, $asObject = true )
    {
        $db = eZDB::instance();
        $row = $db->arrayQuery(
            "SELECT zone_id, name, node_id, overflow_id, last_update, block_type as type, fetch_params, rotation_type, rotation_interval " .
            "FROM ezm_block WHERE id='" . $db->escapeString( $blockID ) . "'"
        );

        $xmlDocs = $db->arrayQuery(
            "SELECT oa.data_text " .
            "FROM ezcontentobject_tree AS t " .
            "INNER JOIN ezcontentobject AS o ON t.contentobject_id = o.id " .
            "INNER JOIN ezcontentobject_attribute AS oa ON o.id = oa.contentobject_id AND o.current_version = oa.version " .
            "WHERE t.node_id = " . $row[0]["node_id"] . " AND data_type_string = '" . eZPageType::DATA_TYPE_STRING . "'"
        );

        $pageBlock = null;

        foreach ( $xmlDocs as $xmlDoc )
        {
            $doc = new DOMDocument;
            $doc->loadXML( $xmlDoc["data_text"] );

            $xpath = new DOMXPath( $doc );
            foreach ( $xpath->evaluate( '//block[@id="id_' . $blockID . '"]' ) as $result )
            {
                $pageBlock = self::createFromXML( $result );

                // We are only interested by the first match (which is unique)
                break;
            }
        }

        if ( $pageBlock !== null )
        {
            if ( $asObject )
            {
                return $pageBlock;
            }

            $row[0] += array( "id" => $blockID, "view" => $pageBlock->attribute( "view" ) );
        }

        return $asObject ? new eZPageBlock( null, $row[0] ) : $row[0];
    }
941335
function fetchAttributeTranslations( $asObject = true )
    {
        return eZPersistentObject::fetchObjectList( eZContentObjectAttribute::definition(),
                                                    null,
                                                    array( "contentclassattribute_id" => $this->ContentClassAttributeID,
                                                           "contentobject_id" => $this->ContentObjectID,
                                                           "version" => $this->Version ),
                                                    null,
                                                    null,
                                                    $asObject);
    }
264882
static function fetchListByID( $idList ,$asObject = true )
    {
        $cond = array( 'id' => array( $idList ) );
        return eZPersistentObject::fetchObjectList( eZNodeAssignment::definition(),
                                                    null, $cond, null, null,
                                                    $asObject );
    }
904415
static function fetch( $userID,  $asObject = true  )
    {
        return eZPersistentObject::fetchObject( eZUserSetting::definition(),
                                                    null,
                                                    array('user_id' => $userID ),
                                                    $asObject );
    }
829363
public function getResult($forObject)
    {
        return isset($this->hash[$forObject]) ? $this->hash[$forObject] : null;
    }
933183
protected function setProperty($object, $name = null)
    {
        if ($name === null) {
            $this->params[] = $object;
        } else {
            $this->params[$name] = $object;
        }
        return $this->make();
    }
493224
final public function __isset($prop)
	{
		$this->magicPropConvert($prop);
		return is_array($this->{$this::MAGIC_PROPERTY})
			? array_key_exists($prop, $this->{$this::MAGIC_PROPERTY})
			: isset($this->{$this::MAGIC_PROPERTY}->$prop);
	}
240816
function itemList( $asObject = true )
    {
        return eZPersistentObject::fetchObjectList( eZProductCollectionItem::definition(),
                                                    null, array( "productcollection_id" => $this->ID ),
                                                    null,
                                                    null,
                                                    $asObject );
    }
636054
public static function fetchList( $offset = false, $limit = false, $asObject = true )
    {
        return eZPersistentObject::fetchObjectList( self::definition(),
                                                    null,
                                                    null,
                                                    null,
                                                    array( 'offset' => $offset, 'length' => $limit ),
                                                    $asObject );
    }
457509
static function fetchByName( $name, $asObject = true )
    {
        $conds = array( 'name' => $name );
        return eZPersistentObject::fetchObject( eZContentClassGroup::definition(),
                                                null,
                                                $conds,
                                                $asObject );
    }