1c3437056SNickeau<?php 2c3437056SNickeau 3c3437056SNickeau 4c3437056SNickeaunamespace ComboStrap; 5c3437056SNickeau 6*04fd306cSNickeauuse ComboStrap\Meta\Api\Metadata; 7*04fd306cSNickeauuse ComboStrap\Meta\Api\MetadataStore; 8*04fd306cSNickeauuse ComboStrap\Meta\Api\MetadataStoreAbs; 9*04fd306cSNickeau 10c3437056SNickeau/** 11c3437056SNickeau * Class TemplateStore 12c3437056SNickeau * @package ComboStrap 13c3437056SNickeau * The data goes from and out of a template format 14c3437056SNickeau */ 15c3437056SNickeauclass TemplateStore extends MetadataStoreAbs implements MetadataStore 16c3437056SNickeau{ 17c3437056SNickeau 18c3437056SNickeau const CANONICAL = "template"; 19c3437056SNickeau 20c3437056SNickeau public function set(Metadata $metadata) 21c3437056SNickeau { 22c3437056SNickeau LogUtility::msg("You can't set a value with a template store"); 23c3437056SNickeau } 24c3437056SNickeau 25c3437056SNickeau public function get(Metadata $metadata, $default = null) 26c3437056SNickeau { 27c3437056SNickeau LogUtility::msg("You can't get a value with a template store"); 28c3437056SNickeau } 29c3437056SNickeau 30c3437056SNickeau 31*04fd306cSNickeau public function getFromName(string $name, $default = null) 32c3437056SNickeau { 33c3437056SNickeau LogUtility::msg("You can't get a value with a template store"); 34c3437056SNickeau } 35c3437056SNickeau 36*04fd306cSNickeau public function setFromPersistentName(string $name, $value, $default = null) 37c3437056SNickeau { 38c3437056SNickeau LogUtility::msg("You can't set a value with a template store"); 39c3437056SNickeau } 40c3437056SNickeau 41c3437056SNickeau public function persist() 42c3437056SNickeau { 43c3437056SNickeau LogUtility::msg("You can't persist with a template store"); 44c3437056SNickeau } 45c3437056SNickeau 46c3437056SNickeau public function isHierarchicalTextBased(): bool 47c3437056SNickeau { 48c3437056SNickeau return true; 49c3437056SNickeau } 50c3437056SNickeau 51c3437056SNickeau public function reset() 52c3437056SNickeau { 53c3437056SNickeau LogUtility::msg("Reset: The template format is not yet implemented"); 54c3437056SNickeau } 55c3437056SNickeau 56c3437056SNickeau public function getCanonical(): string 57c3437056SNickeau { 58c3437056SNickeau return self::CANONICAL; 59c3437056SNickeau } 60c3437056SNickeau 61c3437056SNickeau static function getOrCreateFromResource(ResourceCombo $resourceCombo): MetadataStore 62c3437056SNickeau { 63c3437056SNickeau return new TemplateStore($resourceCombo); 64c3437056SNickeau } 65c3437056SNickeau} 66