server/src/app/Models/WebResource.php
author Chloe Laisne <chloe.laisne@gmail.com>
Thu, 23 Jun 2016 10:41:57 +0200
changeset 198 541e26eb356f
parent 169 8fddc113095e
permissions -rw-r--r--
Display filter IDs Remove unused transitionTo/updateURL methods managed by filter service

<?php
namespace CorpusParole\Models;

use CorpusParole\Libraries\RdfModel\RdfModelResource;
use JsonSerializable;
use Log;

/**
 * Model class for Document. Inherit from EasyRd\Resource
 * SELECT DISTINCT ?g WHERE {GRAPH ?g {?s ?p ?o}}
 */
abstract class WebResource extends RdfModelResource implements JsonSerializable {

    public function __construct(...$args) {
        list($uri, $graph) = $args;
        parent::__construct($uri, $graph);
    }

    private $format = false;

    abstract protected function doClearMemoizationCache();

    public function clearMemoizationCache() {
        $this->format = false;
        $this->doClearMemoizationCache();
    }

    public function getFormat() {
        if($this->format === false) {
            $format = $this->getLiteral("<http://purl.org/dc/elements/1.1/format>");
            $this->format = is_null($format)?null:$format->getValue();
        }
        return $this->format;
    }

    public function getUrl() {
        return $this->getUri();
    }

    abstract protected function jsonSerializeExtra();

    public function jsonSerialize() {
        return array_merge(
            [
                'url' => $this->getUrl(),
                'format' => $this->getFormat()
            ],
            $this->jsonSerializeExtra()
        );
    }

}
PKVJ$ iconolab-7f3fdcba7902/design/.keepmeUTm$YPKVJ.qԾKQ+ ]iconolab-7f3fdcba7902/design/components.odtUTm$YPKVJ#&&> }Liconolab-7f3fdcba7902/design/heatmap/Resources/SampleStyle.cssUTm$YPKVJ4_4/ Miconolab-7f3fdcba7902/design/heatmap/index.htmlUTm$YPKVJ&rT` 9 Siconolab-7f3fdcba7902/design/heatmap/pages/admin_page.pngUTm$YPKVJ݌9 >iconolab-7f3fdcba7902/design/heatmap/pages/admin_tags.pngUTm$YPKVJ>`@ iconolab-7f3fdcba7902/design/heatmap/pages/annotation_create.pngUTm$YPKVJQg L? iconolab-7f3fdcba7902/design/heatmap/pages/annotation_saved.pngUTm$YPKVJQRs@ Ƶ iconolab-7f3fdcba7902/design/heatmap/pages/choisir_une_image.pngUTm$YPKVJ-\=9 K iconolab-7f3fdcba7902/design/heatmap/pages/components.pngUTm$YPKVJx(R 5 iconolab-7f3fdcba7902/design/heatmap/pages/folder.pngUTm$YPKVJҳ9^ O 6 (kiconolab-7f3fdcba7902/design/heatmap/pages/heatmap.pngUTm$YPKVJ4eϿ3 4kiconolab-7f3fdcba7902/design/heatmap/pages/home.pngUTm$YPKVJ`c' p ? jIiconolab-7f3fdcba7902/design/heatmap/pages/image_principale.pngUTm$YPKVJ'78 }q'iconolab-7f3fdcba7902/design/heatmap/pages/image_tab.pngUTm$YPKVJ]J.J6 s(iconolab-7f3fdcba7902/design/heatmap/pages/landing.pngUTm$YPKVJC(4 *(iconolab-7f3fdcba7902/design/heatmap/pages/login.pngUTm$YPKVJWb: (iconolab-7f3fdcba7902/design/heatmap/pages/open_folder.pngUTm$YPKVJY@ rX.&I8 *7*iconolab-7f3fdcba7902/design/heatmap/pages/user_page.pngUTm$YPKVJmtd ~9 e+iconolab-7f3fdcba7902/design/heatmap/pages/user_pages.pngUTm$YPKVJ#&&D y+iconolab-7f3fdcba7902/design/iconolab/demo/Resources/SampleStyle.cssUTm$YPKVJ*b~85 +iconolab-7f3fdcba7902/design/iconolab/demo/index.htmlUTm$YPKVJG% n < `+iconolab-7f3fdcba7902/design/iconolab/demo/pages/addatag.pngUTm$YPKVJgC W7iconolab-7f3fdcba7902/design/iconolab/demo/pages/addtagwithlist.pngUTm$YPKVJIYI? 8>iconolab-7f3fdcba7902/design/iconolab/demo/pages/admin_page.pngUTm$YPKVJk\v>/? @iconolab-7f3fdcba7902/design/iconolab/demo/pages/admin_tags.pngUTm$YPKVJ^5QC>fF RAiconolab-7f3fdcba7902/design/iconolab/demo/pages/choisir_une_image.pngUTm$YPKVJFIF? Biconolab-7f3fdcba7902/design/iconolab/demo/pages/components.pngUTm$YPKVJ (riconolab-7f3fdcba7902/design/iconolab/demo/pages/image_tab.pngUTm$YPKVJ 7%VA< z>siconolab-7f3fdcba7902/design/iconolab/demo/pages/landing.pngUTm$YPKVJ( qMҾF@ $dsiconolab-7f3fdcba7902/design/iconolab/demo/pages/links_pages.pngUTm$YPKVJC(: m#ticonolab-7f3fdcba7902/design/iconolab/demo/pages/login.pngUTm$YPKVJw&fx B :ticonolab-7f3fdcba7902/design/iconolab/demo/pages/qualification.pngUTm$YPKVJ[(I ;ticonolab-7f3fdcba7902/design/iconolab/demo/pages/save_detail_fragment.pngUTm$YPKVJYjdʚ}? 5 wiconolab-7f3fdcba7902/design/iconolab/demo/pages/suggestion.pngUTm$YPKVJk~VG uwiconolab-7f3fdcba7902/design/iconolab/demo/pages/suggestions_images.pngUTm$YPKVJ wBE xiconolab-7f3fdcba7902/design/iconolab/demo/pages/suggestions_tags.pngUTm$YPKVJyi F vyiconolab-7f3fdcba7902/design/iconolab/demo/pages/user_notification.pngUTm$YPKVJŪQH yiconolab-7f3fdcba7902/design/iconolab/demo/pages/user_notofication_2.pngUTm$YPKVJqƞ&A> Jziconolab-7f3fdcba7902/design/iconolab/demo/pages/user_page.pngUTm$YPKVJ{Zs? q{iconolab-7f3fdcba7902/design/iconolab/demo/pages/user_pages.pngUTm$YPKVJ= )D {iconolab-7f3fdcba7902/design/iconolab/demo/pages/user_suggestion.pngUTm$YPKVJ09g)M0 ~iconolab-7f3fdcba7902/design/iconolab/dossier.epUTm$YPKVJFwPM 6 k~iconolab-7f3fdcba7902/design/iconolab/ex_merge_form.epUTm$YPK55tO/